diff --git a/.svn/all-wcprops b/.svn/all-wcprops deleted file mode 100644 index b5a638469c367d51600bc1086736d1d0a71ec822..0000000000000000000000000000000000000000 --- a/.svn/all-wcprops +++ /dev/null @@ -1,71 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 33 -/svnroot/!svn/ver/1272/osqa/trunk -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 45 -/svnroot/!svn/ver/1242/osqa/trunk/settings.py -END -rmpyc -K 25 -svn:wc:ra_dav:version-url -V 37 -/svnroot/!svn/ver/17/osqa/trunk/rmpyc -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 41 -/svnroot/!svn/ver/1077/osqa/trunk/urls.py -END -osqa.wsgi.dist -K 25 -svn:wc:ra_dav:version-url -V 47 -/svnroot/!svn/ver/618/osqa/trunk/osqa.wsgi.dist -END -manage.py -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1077/osqa/trunk/manage.py -END -LICENSE -K 25 -svn:wc:ra_dav:version-url -V 39 -/svnroot/!svn/ver/79/osqa/trunk/LICENSE -END -osqa.iml -K 25 -svn:wc:ra_dav:version-url -V 42 -/svnroot/!svn/ver/1261/osqa/trunk/osqa.iml -END -settings_local.py.dist -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1122/osqa/trunk/settings_local.py.dist -END -.project -K 25 -svn:wc:ra_dav:version-url -V 41 -/svnroot/!svn/ver/186/osqa/trunk/.project -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 45 -/svnroot/!svn/ver/1077/osqa/trunk/__init__.py -END -INSTALL -K 25 -svn:wc:ra_dav:version-url -V 40 -/svnroot/!svn/ver/361/osqa/trunk/INSTALL -END diff --git a/.svn/dir-prop-base b/.svn/dir-prop-base deleted file mode 100644 index ec94360375934329a9a266e26e771d5aa24684a6..0000000000000000000000000000000000000000 --- a/.svn/dir-prop-base +++ /dev/null @@ -1,32 +0,0 @@ -K 10 -svn:ignore -V 90 -.pydevproject - -cache - -settings_local.py - -.settings - -.idea - -*.iml - -osqa.wsgi - -jambazov.ipr - -K 13 -svn:mergeinfo -V 182 -/osqa/branches/cacheimp:874-939 -/osqa/branches/carpenter:691-725 -/osqa/branches/hernani:772-832 -/osqa/branches/jambazov:675-831 -/osqa/branches/notification-config:809,811-812,825-827 -K 19 -svnmerge-integrated -V 33 -/osqa/branches/experimental:1-105 -END diff --git a/.svn/entries b/.svn/entries deleted file mode 100644 index 0de01938e53f3c0df1b03df6574a180c62532b15..0000000000000000000000000000000000000000 --- a/.svn/entries +++ /dev/null @@ -1,420 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk -http://svn.osqa.net/svnroot - - - -2012-06-15T18:17:36.689322Z -1272 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -.project -file - - - - -2012-06-22T20:34:49.077242Z -c88742221eebb0ad28590009c876a103 -2010-05-09T16:37:31.070203Z -186 -rick - - - - - - - - - - - - - - - - - - - - - -602 - -__init__.py -file - - - - -2012-06-22T20:34:49.077242Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -settings.py -file - - - - -2012-06-22T20:34:49.081240Z -c27b585afca8fb14dfcd889811b976f5 -2012-04-03T23:01:24.940723Z -1242 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4660 - -forum -dir - -rmpyc -file - - - - -2012-06-22T20:34:49.081240Z -ef04cd0870a8a5c4e7b84f7aadf4afcf -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -26 - -locale -dir - -tmp -dir - -cron -dir - -settings_local.py.dist -file - - - - -2012-06-22T20:34:49.081240Z -7eb057d1a82797568b14d5e6ec98a360 -2011-07-17T18:20:29.006551Z -1122 -jordan - - - - - - - - - - - - - - - - - - - - - -1342 - -INSTALL -file - - - - -2012-06-22T20:34:49.081240Z -1ebe0341bc13bafab9b49e1fdc16abd0 -2010-06-03T01:55:59.867375Z -361 -matt - - - - - - - - - - - - - - - - - - - - - -159 - -urls.py -file - - - - -2012-06-22T20:34:49.081240Z -2ab53b48e9974e3f0284d56180af472e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -417 - -osqa.wsgi.dist -file - - - - -2012-06-22T20:34:49.081240Z -5f6118efa1353e400c19dfbde9646622 -2010-11-23T22:39:56.121718Z -618 -claycarpenter - - - - - - - - - - - - - - - - - - - - - -495 - -manage.py -file - - - - -2012-06-22T20:34:49.077242Z -18a5768ff203b109efc389760a4eef5a -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -590 - -forum_modules -dir - -log -dir - -LICENSE -file - - - - -2012-06-22T20:34:49.077242Z -780ed67b633b197f1165ed05b1182609 -2010-04-27T21:31:30.438705Z -79 -rick - - - - - - - - - - - - - - - - - - - - - -681 - -osqa.iml -file - - - - -2012-06-22T20:34:49.077242Z -bac9c1a592576ad4c6ef59990ffe5009 -2012-05-09T20:59:46.733114Z -1261 -jordan - - - - - - - - - - - - - - - - - - - - - -1066 - diff --git a/.svn/prop-base/__init__.py.svn-base b/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/.svn/prop-base/manage.py.svn-base b/.svn/prop-base/manage.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/.svn/prop-base/manage.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/.svn/prop-base/settings.py.svn-base b/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index 5a82a96bea765fa5f654c493ff090825e679edd4..0000000000000000000000000000000000000000 --- a/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -K 13 -svn:mergeinfo -V 250 -/osqa/branches/cacheimp/settings.py:874-931 -/osqa/branches/carpenter/settings.py:691-725 -/osqa/branches/hernani/settings.py:772-832 -/osqa/branches/jambazov/settings.py:675-831 -/osqa/branches/notification-config/settings.py:693-794,809,811-812,825-827 -END diff --git a/.svn/prop-base/urls.py.svn-base b/.svn/prop-base/urls.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/.svn/prop-base/urls.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/.svn/text-base/.project.svn-base b/.svn/text-base/.project.svn-base deleted file mode 100644 index 5b1b909da28ee68a107f587edf880629a7f4f92e..0000000000000000000000000000000000000000 --- a/.svn/text-base/.project.svn-base +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>osqa-pydev</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.wst.jsdt.core.javascriptValidator</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.python.pydev.PyDevBuilder</name> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.python.pydev.pythonNature</nature> - <nature>org.eclipse.wst.jsdt.core.jsNature</nature> - <nature>org.python.pydev.django.djangoNature</nature> - </natures> -</projectDescription> diff --git a/.svn/text-base/INSTALL.svn-base b/.svn/text-base/INSTALL.svn-base deleted file mode 100644 index 525947b2cb0054bb0cf8f34afb6ae1f89a3f964c..0000000000000000000000000000000000000000 --- a/.svn/text-base/INSTALL.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -For installation instruction go to: - -http://wiki.osqa.net/display/docs/Home - -The wiki contains many recipes to help you install on different hosting providers. \ No newline at end of file diff --git a/.svn/text-base/LICENSE.svn-base b/.svn/text-base/LICENSE.svn-base deleted file mode 100644 index de192e06812c1704394eb2f878e432f41ed64d05..0000000000000000000000000000000000000000 --- a/.svn/text-base/LICENSE.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -Copyright (c) 2010. OSQA -Some portions Copyright (c) 2009 Chen Gang - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. diff --git a/.svn/text-base/__init__.py.svn-base b/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/.svn/text-base/manage.py.svn-base b/.svn/text-base/manage.py.svn-base deleted file mode 100644 index f9894f584e6defa2ad62893817cdaabee0e0e20a..0000000000000000000000000000000000000000 --- a/.svn/text-base/manage.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env python -from django.core.management import execute_manager -try: - import settings # Assumed to be in the same directory. -except ImportError, e: - import traceback - traceback.print_exc() - import sys - sys.stderr.write("Error: Can't find the file 'forms.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file forms.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__) - sys.exit(1) - -if __name__ == "__main__": - execute_manager(settings) diff --git a/.svn/text-base/osqa.iml.svn-base b/.svn/text-base/osqa.iml.svn-base deleted file mode 100644 index 0fd71e34b29f9a5ff4da870c85ed92e493907fef..0000000000000000000000000000000000000000 --- a/.svn/text-base/osqa.iml.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<module type="PYTHON_MODULE" version="4"> - <component name="FacetManager"> - <facet type="django" name="Django"> - <configuration> - <option name="rootFolder" value="$MODULE_DIR$" /> - <option name="settingsModule" value="settings.py" /> - <option name="manageScript" value="manage.py" /> - </configuration> - </facet> - </component> - <component name="NewModuleRootManager" inherit-compiler-output="true"> - <exclude-output /> - <content url="file://$MODULE_DIR$" /> - <orderEntry type="jdk" jdkName="Python 2.7.1 (/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7)" jdkType="Python SDK" /> - <orderEntry type="sourceFolder" forTests="false" /> - </component> - <component name="TemplatesService"> - <option name="templateLanguage" value="Django" /> - <option name="TEMPLATE_CONFIGURATION" value="Django" /> - <option name="TEMPLATE_FOLDERS"> - <list> - <option value="$MODULE_DIR$/templates" /> - </list> - </option> - </component> -</module> - diff --git a/.svn/text-base/osqa.wsgi.dist.svn-base b/.svn/text-base/osqa.wsgi.dist.svn-base deleted file mode 100644 index 70c0da874023f2cee532916ab63dcbd59150e517..0000000000000000000000000000000000000000 --- a/.svn/text-base/osqa.wsgi.dist.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -import os -import sys -sys.path.append('/path/to_dir_above') -sys.path.append('/path/to_dir_above/osqa') -# The first part of this module name should be identical to the directory name -# of the OSQA source. For instance, if the full path to OSQA is -# /home/osqa/osqa-server, then the DJANGO_SETTINGS_MODULE should have a value -# of 'osqa-server.settings'. -os.environ['DJANGO_SETTINGS_MODULE'] = 'osqa.settings' -import django.core.handlers.wsgi -application = django.core.handlers.wsgi.WSGIHandler() diff --git a/.svn/text-base/rmpyc.svn-base b/.svn/text-base/rmpyc.svn-base deleted file mode 100644 index 014575f6b67ca9d6be578767d3a36f40a88ca34a..0000000000000000000000000000000000000000 --- a/.svn/text-base/rmpyc.svn-base +++ /dev/null @@ -1 +0,0 @@ -rm `find . -name '*.pyc'` diff --git a/.svn/text-base/settings.py.svn-base b/.svn/text-base/settings.py.svn-base deleted file mode 100644 index cd153f4aef101e455ca63fb81d41bd4fe7a528b1..0000000000000000000000000000000000000000 --- a/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,152 +0,0 @@ -# encoding:utf-8 -import os.path -import sys - -SITE_ID = 1 - -ADMIN_MEDIA_PREFIX = '/admin_media/' -SECRET_KEY = '$oo^&_m&qwbib=(_4m_n*zn-d=g#s0he5fx9xonnym#8p6yigm' - -CACHE_MAX_KEY_LENGTH = 235 - -MIDDLEWARE_CLASSES = [ - 'django.middleware.csrf.CsrfViewMiddleware', - 'django.middleware.csrf.CsrfResponseMiddleware', - 'forum.middleware.django_cookies.CookiePreHandlerMiddleware', - 'django.contrib.sessions.middleware.SessionMiddleware', - 'django.middleware.common.CommonMiddleware', - 'forum.middleware.extended_user.ExtendedUser', - 'forum.middleware.anon_user.ConnectToSessionMessagesMiddleware', - 'forum.middleware.request_utils.RequestUtils', - 'forum.middleware.cancel.CancelActionMiddleware', - 'forum.middleware.admin_messages.AdminMessagesMiddleware', - 'forum.middleware.custom_pages.CustomPagesFallbackMiddleware', - 'django.middleware.transaction.TransactionMiddleware', - 'forum.middleware.django_cookies.CookiePostHandlerMiddleware', -] - -TEMPLATE_CONTEXT_PROCESSORS = [ - 'django.core.context_processors.request', - 'forum.context.application_settings', - 'forum.user_messages.context_processors.user_messages', - 'django.core.context_processors.auth', -] - -ROOT_URLCONF = 'urls' -APPEND_SLASH = True - -TEMPLATE_DIRS = ( - os.path.join(os.path.dirname(__file__),'forum','skins').replace('\\','/'), -) - - -FILE_UPLOAD_TEMP_DIR = os.path.join(os.path.dirname(__file__), 'tmp').replace('\\','/') -FILE_UPLOAD_HANDLERS = ("django.core.files.uploadhandler.MemoryFileUploadHandler", - "django.core.files.uploadhandler.TemporaryFileUploadHandler",) -DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage' - -ALLOW_FILE_TYPES = ('.jpg', '.jpeg', '.gif', '.bmp', '.png', '.tiff') -ALLOW_MAX_FILE_SIZE = 1024 * 1024 - -# User settings -from settings_local import * - -if DEBUG: - TEMPLATE_LOADERS = [ - 'django.template.loaders.filesystem.load_template_source', - 'django.template.loaders.app_directories.load_template_source', - 'forum.modules.template_loader.module_templates_loader', - 'forum.skins.load_template_source', - ] -else: - TEMPLATE_LOADERS = [ - ('django.template.loaders.cached.Loader',( - 'django.template.loaders.filesystem.load_template_source', - 'django.template.loaders.app_directories.load_template_source', - 'forum.modules.template_loader.module_templates_loader', - 'forum.skins.load_template_source', - )), - ] - -try: - if len(FORUM_SCRIPT_ALIAS) > 0: - APP_URL = '%s/%s' % (APP_URL, FORUM_SCRIPT_ALIAS[:-1]) -except NameError: - pass - -app_url_split = APP_URL.split("://") - -APP_PROTOCOL = app_url_split[0] -APP_DOMAIN = app_url_split[1].split('/')[0] -APP_BASE_URL = '%s://%s' % (APP_PROTOCOL, APP_DOMAIN) - -FORCE_SCRIPT_NAME = '' - -for path in app_url_split[1].split('/')[1:]: - FORCE_SCRIPT_NAME = FORCE_SCRIPT_NAME + '/' + path - -if FORCE_SCRIPT_NAME.endswith('/'): - FORCE_SCRIPT_NAME = FORCE_SCRIPT_NAME[:-1] - -#Module system initialization -MODULES_PACKAGE = 'forum_modules' -MODULES_FOLDER = os.path.join(SITE_SRC_ROOT, MODULES_PACKAGE) - -MODULE_LIST = filter(lambda m: getattr(m, 'CAN_USE', True), [ - __import__('forum_modules.%s' % f, globals(), locals(), ['forum_modules']) - for f in os.listdir(MODULES_FOLDER) - if os.path.isdir(os.path.join(MODULES_FOLDER, f)) and - os.path.exists(os.path.join(MODULES_FOLDER, "%s/__init__.py" % f)) and - not f in DISABLED_MODULES -]) - -[MIDDLEWARE_CLASSES.extend( - ["%s.%s" % (m.__name__, mc) for mc in getattr(m, 'MIDDLEWARE_CLASSES', [])] - ) for m in MODULE_LIST] - -[TEMPLATE_LOADERS.extend( - ["%s.%s" % (m.__name__, tl) for tl in getattr(m, 'TEMPLATE_LOADERS', [])] - ) for m in MODULE_LIST] - - -INSTALLED_APPS = [ - 'django.contrib.auth', - 'django.contrib.contenttypes', - 'django.contrib.sessions', - 'django.contrib.sites', - 'django.contrib.admin', - 'django.contrib.humanize', - 'django.contrib.sitemaps', - 'django.contrib.markup', - 'forum', -] - -if DEBUG: - try: - import debug_toolbar - MIDDLEWARE_CLASSES.append('debug_toolbar.middleware.DebugToolbarMiddleware') - INSTALLED_APPS.append('debug_toolbar') - except: - pass - -try: - import south - INSTALLED_APPS.append('south') -except: - pass - -# Try loading Gunicorn web server -try: - import gunicorn - INSTALLED_APPS.append('gunicorn') -except ImportError: - pass - -if not DEBUG: - try: - import rosetta - INSTALLED_APPS.append('rosetta') - except: - pass - -AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend',] diff --git a/.svn/text-base/settings_local.py.dist.svn-base b/.svn/text-base/settings_local.py.dist.svn-base deleted file mode 100644 index c50bc33148c12b0933380799937dc4fb3a47d09f..0000000000000000000000000000000000000000 --- a/.svn/text-base/settings_local.py.dist.svn-base +++ /dev/null @@ -1,58 +0,0 @@ -# encoding:utf-8 -import os.path - -SITE_SRC_ROOT = os.path.dirname(__file__) -LOG_FILENAME = 'django.osqa.log' - -#for logging -import logging -logging.basicConfig( - filename=os.path.join(SITE_SRC_ROOT, 'log', LOG_FILENAME), - level=logging.ERROR, - format='%(pathname)s TIME: %(asctime)s MSG: %(filename)s:%(funcName)s:%(lineno)d %(message)s', -) - -#ADMINS and MANAGERS -ADMINS = () -MANAGERS = ADMINS - -DEBUG = False -DEBUG_TOOLBAR_CONFIG = { - 'INTERCEPT_REDIRECTS': True -} -TEMPLATE_DEBUG = DEBUG -INTERNAL_IPS = ('127.0.0.1',) - - -DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.mysql', - 'NAME': 'osqa', - 'USER': 'root', - 'PASSWORD': '', - 'HOST': '', - 'PORT': '', - } -} - -CACHE_BACKEND = 'file://%s' % os.path.join(os.path.dirname(__file__),'cache').replace('\\','/') -#CACHE_BACKEND = 'dummy://' -SESSION_ENGINE = 'django.contrib.sessions.backends.db' - -# This should be equal to your domain name, plus the web application context. -# This shouldn't be followed by a trailing slash. -# I.e., http://www.yoursite.com or http://www.hostedsite.com/yourhostapp -APP_URL = 'http://' - -#LOCALIZATIONS -TIME_ZONE = 'America/New_York' - -#OTHER SETTINGS - -USE_I18N = True -LANGUAGE_CODE = 'en' - -DJANGO_VERSION = 1.1 -OSQA_DEFAULT_SKIN = 'default' - -DISABLED_MODULES = ['books', 'recaptcha', 'project_badges'] diff --git a/.svn/text-base/urls.py.svn-base b/.svn/text-base/urls.py.svn-base deleted file mode 100644 index fb1fedab00d2624bab6ccb6597ab885702922a8f..0000000000000000000000000000000000000000 --- a/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -from django.conf.urls.defaults import * -from django.utils.translation import ugettext as _ -from django.conf import settings - -urlpatterns = patterns('', - (r'', include('forum.urls')), -) - -if 'rosetta' in settings.INSTALLED_APPS: - urlpatterns = patterns('', - url(r'^rosetta/', include('rosetta.urls')), - ) + urlpatterns - -handler404 = 'forum.views.meta.page' -handler500 = 'forum.views.meta.error_handler' diff --git a/cron/.svn/all-wcprops b/cron/.svn/all-wcprops deleted file mode 100644 index d5fe2a0b4678de7f1fc03e19ab852abf8219905f..0000000000000000000000000000000000000000 --- a/cron/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 36 -/svnroot/!svn/ver/79/osqa/trunk/cron -END -send_email_alerts_virtualenv -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/17/osqa/trunk/cron/send_email_alerts_virtualenv -END -send_email_alerts -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/17/osqa/trunk/cron/send_email_alerts -END -README -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/17/osqa/trunk/cron/README -END diff --git a/cron/.svn/entries b/cron/.svn/entries deleted file mode 100644 index bc56aa8368c789a7004182bf98c355e16744b04b..0000000000000000000000000000000000000000 --- a/cron/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/cron -http://svn.osqa.net/svnroot - - - -2010-04-27T21:31:30.438705Z -79 -rick - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -send_email_alerts_virtualenv -file - - - - -2012-06-22T20:34:49.069246Z -821ff88879734fcf8208b4144c55bf91 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -238 - -send_email_alerts -file - - - - -2012-06-22T20:34:49.069246Z -42f0817abe543fd78d58ad9415696bb8 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -161 - -README -file - - - - -2012-06-22T20:34:49.069246Z -84bab49c86457d38f5b9e450d8ac38cf -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -184 - diff --git a/cron/.svn/text-base/README.svn-base b/cron/.svn/text-base/README.svn-base deleted file mode 100644 index d5573150ccfcb98d44ce16ad9c87bf1d488f41c2..0000000000000000000000000000000000000000 --- a/cron/.svn/text-base/README.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -this directory contains sample commands to be executed -by cron - -files with names ending "virtuanenv" should work under Python virtualenv system -other files - with standard unix setup diff --git a/cron/.svn/text-base/send_email_alerts.svn-base b/cron/.svn/text-base/send_email_alerts.svn-base deleted file mode 100644 index cae096066e9ab934fc7d5a12ab27d52eff655f85..0000000000000000000000000000000000000000 --- a/cron/.svn/text-base/send_email_alerts.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -PYTHONPATH=/path/to/dir_above_osqa_site -export PYTHONPATH -PROJECT_ROOT=$PYTHONPATH/osqa_site -/path/to/python $PROJECT_ROOT/manage.py send_email_alerts diff --git a/cron/.svn/text-base/send_email_alerts_virtualenv.svn-base b/cron/.svn/text-base/send_email_alerts_virtualenv.svn-base deleted file mode 100644 index 6c9e154d72ede60b313ca1098860d1e400820ca7..0000000000000000000000000000000000000000 --- a/cron/.svn/text-base/send_email_alerts_virtualenv.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -WORKON_HOME=~/envs/osqa -PROJECT_ROOT=~/webapps/osqa_server/projects/osqa/ - -# activate virtual environment -. $WORKON_HOME/bin/activate - -cd $PROJECT_ROOT -python manage.py send_email_alerts >> $PROJECT_ROOT/log/cron_mail.log 2>&1 diff --git a/forum/.svn/all-wcprops b/forum/.svn/all-wcprops deleted file mode 100644 index 12e5081b5858573cf2ca34d3fa6d15a923f3ff64..0000000000000000000000000000000000000000 --- a/forum/.svn/all-wcprops +++ /dev/null @@ -1,71 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 39 -/svnroot/!svn/ver/1272/osqa/trunk/forum -END -context.py -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/1077/osqa/trunk/forum/context.py -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 47 -/svnroot/!svn/ver/1212/osqa/trunk/forum/urls.py -END -subscriptions.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1246/osqa/trunk/forum/subscriptions.py -END -admin.py -K 25 -svn:wc:ra_dav:version-url -V 48 -/svnroot/!svn/ver/1077/osqa/trunk/forum/admin.py -END -registry.py -K 25 -svn:wc:ra_dav:version-url -V 51 -/svnroot/!svn/ver/1212/osqa/trunk/forum/registry.py -END -base.py -K 25 -svn:wc:ra_dav:version-url -V 47 -/svnroot/!svn/ver/1079/osqa/trunk/forum/base.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 51 -/svnroot/!svn/ver/1180/osqa/trunk/forum/__init__.py -END -http_responses.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1077/osqa/trunk/forum/http_responses.py -END -startup.py -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/1077/osqa/trunk/forum/startup.py -END -sitemap.py -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/1081/osqa/trunk/forum/sitemap.py -END -feed.py -K 25 -svn:wc:ra_dav:version-url -V 47 -/svnroot/!svn/ver/1246/osqa/trunk/forum/feed.py -END diff --git a/forum/.svn/entries b/forum/.svn/entries deleted file mode 100644 index 8a79d280b270a62a766119815f30260c410c966d..0000000000000000000000000000000000000000 --- a/forum/.svn/entries +++ /dev/null @@ -1,453 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum -http://svn.osqa.net/svnroot - - - -2012-06-15T18:17:36.689322Z -1272 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -forms -dir - -__init__.py -file - - - - -2012-06-22T20:34:47.853852Z -d6e7bd74e79bc205db528cca1af22003 -2011-09-30T11:36:17.877893Z -1180 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -114 - -skins -dir - -startup.py -file - - - - -2012-06-22T20:34:47.857850Z -68473076745f5155ea5b4ce9d6950673 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -305 - -sitemap.py -file - - - - -2012-06-22T20:34:47.857850Z -1cd8cf88cd769e2ab46caa5ffe80efa1 -2011-06-27T16:46:21.599025Z -1081 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3881 - -templatetags -dir - -feed.py -file - - - - -2012-06-22T20:34:47.857850Z -a6679f4865d746da0fa322ae3a077862 -2012-04-08T00:25:31.252125Z -1246 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3824 - -views -dir - -subscriptions.py -file - - - - -2012-06-22T20:34:47.857850Z -f53172b394d438579897472a2cafff3c -2012-04-08T00:25:31.252125Z -1246 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -6928 - -registry.py -file - - - - -2012-06-22T20:34:47.861848Z -ba45cfdeeaf1737b6fda7e3e0e3f133e -2011-12-15T19:46:30.210804Z -1212 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -6186 - -utils -dir - -actions -dir - -settings -dir - -base.py -file - - - - -2012-06-22T20:34:47.861848Z -13610efe03dee792bc3db5365823e303 -2011-06-25T15:13:15.337221Z -1079 -jordan - - - - - - - - - - - - - - - - - - - - - -429 - -markdownext -dir - -user_messages -dir - -upfiles -dir - -http_responses.py -file - - - - -2012-06-22T20:34:47.861848Z -3bcf17e7d1e6949ecda03db964c788cf -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1567 - -modules -dir - -context.py -file - - - - -2012-06-22T20:34:47.861848Z -9e9ea720fd8767041605f0d145e4fca6 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -605 - -migrations -dir - -management -dir - -urls.py -file - - - - -2012-06-22T20:34:47.865846Z -2dd887b07b3618460af9a4b843e3eb90 -2011-12-15T19:46:30.210804Z -1212 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -12521 - -middleware -dir - -authentication -dir - -admin.py -file - - - - -2012-06-22T20:34:47.853852Z -676bf9d6de1e1a1054583ca167f4a754 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1746 - -models -dir - -badges -dir - diff --git a/forum/.svn/prop-base/__init__.py.svn-base b/forum/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/admin.py.svn-base b/forum/.svn/prop-base/admin.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/admin.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/context.py.svn-base b/forum/.svn/prop-base/context.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/context.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/feed.py.svn-base b/forum/.svn/prop-base/feed.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/feed.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/http_responses.py.svn-base b/forum/.svn/prop-base/http_responses.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/http_responses.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/registry.py.svn-base b/forum/.svn/prop-base/registry.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/registry.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/sitemap.py.svn-base b/forum/.svn/prop-base/sitemap.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/sitemap.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/startup.py.svn-base b/forum/.svn/prop-base/startup.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/startup.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/.svn/prop-base/subscriptions.py.svn-base b/forum/.svn/prop-base/subscriptions.py.svn-base deleted file mode 100644 index 4db28bc7019242c8a4051837c3291e944af2219a..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/subscriptions.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -K 13 -svn:mergeinfo -V 285 -/osqa/branches/cacheimp/forum/subscriptions.py:874-939 -/osqa/branches/carpenter/forum/subscriptions.py:691-725 -/osqa/branches/hernani/forum/subscriptions.py:772-832 -/osqa/branches/jambazov/forum/subscriptions.py:675-831 -/osqa/branches/notification-config/forum/subscriptions.py:693-846 -END diff --git a/forum/.svn/prop-base/urls.py.svn-base b/forum/.svn/prop-base/urls.py.svn-base deleted file mode 100644 index 07caf08d52cc3e03bed1215b10961819e52cfaf7..0000000000000000000000000000000000000000 --- a/forum/.svn/prop-base/urls.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -K 13 -svn:mergeinfo -V 260 -/osqa/branches/cacheimp/forum/urls.py:874-939 -/osqa/branches/carpenter/forum/urls.py:691-725 -/osqa/branches/hernani/forum/urls.py:772-832 -/osqa/branches/jambazov/forum/urls.py:675-831 -/osqa/branches/notification-config/forum/urls.py:693-793,809,811-812,825-827 -END diff --git a/forum/.svn/text-base/__init__.py.svn-base b/forum/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 51c0c431c26bb68ed2ccf20fd1374e6a2239938d..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -class RequestHolder(object): - def __init__(self): - self.request = None - -REQUEST_HOLDER = RequestHolder() \ No newline at end of file diff --git a/forum/.svn/text-base/admin.py.svn-base b/forum/.svn/text-base/admin.py.svn-base deleted file mode 100644 index c327ff84d2abb475822f19076bb23d076dde26b0..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/admin.py.svn-base +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- - -#from django.contrib import admin -#from models import * -# -#class AnonymousQuestionAdmin(admin.ModelAdmin): -# """AnonymousQuestion admin class""" -# -#class NodeAdmin(admin.ModelAdmin): -# """Question admin class""" -# -#class TagAdmin(admin.ModelAdmin): -# """Tag admin class""" -# -#class Answerdmin(admin.ModelAdmin): -# """Answer admin class""" -# -#class CommentAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class VoteAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class FlaggedItemAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class FavoriteQuestionAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class QuestionRevisionAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class AnswerRevisionAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class AwardAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class BadgeAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class ReputeAdmin(admin.ModelAdmin): -# """ admin class""" -# -#class ActionAdmin(admin.ModelAdmin): -# """ admin class""" - -#class BookAdmin(admin.ModelAdmin): -# """ admin class""" - -#class BookAuthorInfoAdmin(admin.ModelAdmin): -# """ admin class""" - -#class BookAuthorRssAdmin(admin.ModelAdmin): -# """ admin class""" - -#admin.site.register(Node, NodeAdmin) -#admin.site.register(Tag, TagAdmin) -#admin.site.register(QuestionRevision, QuestionRevisionAdmin) -#admin.site.register(AnswerRevision, AnswerRevisionAdmin) -#admin.site.register(Badge, BadgeAdmin) -#admin.site.register(Award, AwardAdmin) -#admin.site.register(Action, ActionAdmin) -#admin.site.register(Book, BookAdmin) -#admin.site.register(BookAuthorInfo, BookAuthorInfoAdmin) -#admin.site.register(BookAuthorRss, BookAuthorRssAdmin) diff --git a/forum/.svn/text-base/base.py.svn-base b/forum/.svn/text-base/base.py.svn-base deleted file mode 100644 index a045216305ab8097daeb22446239d9dd2a90b828..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/base.py.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -from django.conf import settings as django_settings - -def get_database_engine(): - try: - database_type = django_settings.DATABASE_ENGINE - - if len(database_type) == 0: - raise Exception('Empty old style database engine') - except: - try: - database_type = django_settings.DATABASES['default']['ENGINE'] - except: - database_type = 'unknown' - - return str(database_type) \ No newline at end of file diff --git a/forum/.svn/text-base/context.py.svn-base b/forum/.svn/text-base/context.py.svn-base deleted file mode 100644 index 641af38243d484d10d338e9ed8c57fdead6b78a4..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/context.py.svn-base +++ /dev/null @@ -1,23 +0,0 @@ -from forum import settings - -def application_settings(context): - return {'settings': settings} - -def auth_processor(request): - if hasattr(request, 'user'): - user = request.user - if user.is_authenticated(): - messages = user.message_set.all() - else: - messages = None - else: - from django.contrib.auth.models import AnonymousUser - user = AnonymousUser() - messages = None - - from django.core.context_processors import PermWrapper - return { - 'user': user, - 'messages': messages, - 'perms': PermWrapper(user), - } diff --git a/forum/.svn/text-base/feed.py.svn-base b/forum/.svn/text-base/feed.py.svn-base deleted file mode 100644 index c52e64bf8214b3df9b299cfa8b1d31c50cbf6c88..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/feed.py.svn-base +++ /dev/null @@ -1,119 +0,0 @@ -# -*- coding: utf-8 -*- - -try: - from django.contrib.syndication.views import Feed, FeedDoesNotExist, add_domain - old_version = False -except: - from django.contrib.syndication.feeds import Feed, FeedDoesNotExist, add_domain - old_version = True - -from django.http import HttpResponse -from django.utils.encoding import smart_unicode -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe -from models import Question -from forum import settings -from forum.modules import decorate -from forum.utils.pagination import generate_uri - -@decorate(add_domain, needs_origin=False) -def add_domain(domain, url, *args, **kwargs): - return "%s%s" % (settings.APP_BASE_URL, url) - -class BaseNodeFeed(Feed): - if old_version: - title_template = "feeds/rss_title.html" - description_template = "feeds/rss_description.html" - - def __init__(self, request, title, description, url): - self._title = u"%s" % smart_unicode(title) - self._description = mark_safe(u"%s" % smart_unicode(description)) - self._url = url - - if old_version: - super(BaseNodeFeed, self).__init__('', request) - - def title(self): - return u"%s" % smart_unicode(self._title) - - def link(self): - return self._url - - def description(self): - return u"%s" % smart_unicode(self._description) - - def item_title(self, item): - return u"%s" % smart_unicode(item.title) - - def item_description(self, item): - return u"%s" % smart_unicode(item.html) - - def item_link(self, item): - return item.leaf.get_absolute_url() - - def item_author_name(self, item): - return u"%s" % smart_unicode(item.author.username) - - def item_author_link(self, item): - return item.author.get_profile_url() - - def item_pubdate(self, item): - return item.added_at - - if old_version: - def __call__(self, request): - feedgen = self.get_feed('') - response = HttpResponse(mimetype=feedgen.mime_type) - feedgen.write(response, 'utf-8') - return response - - -class RssQuestionFeed(BaseNodeFeed): - def __init__(self, request, question_list, title, description): - url = request.path + "?" + generate_uri(request.GET, (_('page'), _('pagesize'), _('sort'))) - super(RssQuestionFeed, self).__init__(request, title, description, url) - - self._question_list = question_list - - def item_categories(self, item): - return item.tagname_list() - - def _items(self): - return self._question_list - - def items(self): - return self._items()[:30] - -class RssAnswerFeed(BaseNodeFeed): - if old_version: - title_template = "feeds/rss_answer_title.html" - - def __init__(self, request, question, include_comments=False): - super(RssAnswerFeed, self).__init__( - request, _("Answers to: %s") % smart_unicode(question.title), - question.html, - question.get_absolute_url() - ) - self._question = question - self._include_comments = include_comments - - def _items(self): - if self._include_comments: - qs = self._question.all_children - else: - qs = self._question.answers - - return qs.filter_state(deleted=False).order_by('-added_at') - - def items(self): - return self._items()[:30] - - def item_title(self, item): - if item.node_type == "answer": - return _("Answer by %s") % smart_unicode(item.author.username) - else: - return _("Comment by %(cauthor)s on %(pauthor)s's %(qora)s") % dict( - cauthor=smart_unicode(item.author.username), - pauthor=smart_unicode(item.parent.author.username), - qora=(item.parent.node_type == "answer" and _("answer") or _("question")) - ) diff --git a/forum/.svn/text-base/http_responses.py.svn-base b/forum/.svn/text-base/http_responses.py.svn-base deleted file mode 100644 index 2ff4866fdb89a89e9efea173bb47e1f3e468ca9c..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/http_responses.py.svn-base +++ /dev/null @@ -1,41 +0,0 @@ -from django.http import HttpResponse -from django.template.loader import render_to_string -from django.template import RequestContext - -from forum import settings - -class HttpResponseServiceUnavailable(HttpResponse): - def __init__(self, message): - super(HttpResponseServiceUnavailable, self).__init__( - content=render_to_string('503.html', { - 'message': message, - 'app_logo': settings.APP_LOGO, - 'app_title': settings.APP_TITLE - }), status=503) - -class HttpResponseUnauthorized(HttpResponse): - def __init__(self, request): - if request.user.is_authenticated(): - super(HttpResponseUnauthorized, self).__init__( - content=render_to_string('403.html', context_instance=RequestContext(request)), - status=403 - ) - else: - super(HttpResponseUnauthorized, self).__init__( - content=render_to_string('401.html', context_instance=RequestContext(request)), - status=401 - ) - -class HttpResponseNotFound(HttpResponse): - def __init__(self, request): - super(HttpResponseNotFound, self).__init__( - content=render_to_string('404.html', context_instance=RequestContext(request)), - status=404 - ) - -class HttpResponseIntServerError(HttpResponse): - def __init__(self, request): - super(HttpResponseIntServerError, self).__init__( - content=render_to_string('500.html', context_instance=RequestContext(request)), - status=500 - ) \ No newline at end of file diff --git a/forum/.svn/text-base/registry.py.svn-base b/forum/.svn/text-base/registry.py.svn-base deleted file mode 100644 index 871f1e5d0eccf65f036106cb495b50d2b3346a4b..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/registry.py.svn-base +++ /dev/null @@ -1,133 +0,0 @@ -from forum.modules import ui, get_modules_script -from django.utils.translation import ugettext as _ -from django.utils.encoding import smart_unicode -from django.core.urlresolvers import reverse -from django.template.defaultfilters import slugify - -from forum.models import User -from forum.templatetags.extra_tags import get_score_badge -from forum.utils.html import cleanup_urls -from forum import settings - - -try: - from django.template import get_templatetags_modules - modules_template_tags = get_modules_script('templatetags') - django_template_tags = get_templatetags_modules() - - for m in modules_template_tags: - django_template_tags.append(m.__name__) -except: - pass - -ui.register(ui.HEADER_LINKS, - ui.Link(_('faq'), ui.Url('faq'), weight=400, name='FAQ'), - ui.Link(_('about'), ui.Url('about'), weight=300, name='ABOUT'), - - ui.Link( - text=lambda u, c: u.is_authenticated() and _('logout') or _('login'), - url=lambda u, c: u.is_authenticated() and reverse('logout') or reverse('auth_signin'), - weight=200, name='LOGIN/OUT'), - - ui.Link( - visibility=ui.Visibility.AUTHENTICATED, - text=lambda u, c: smart_unicode(u.username), - url=lambda u, c: u.get_profile_url(), - post_code=lambda u, c: get_score_badge(u), - weight=100, name='ACCOUNT'), - - ui.Link( - visibility=ui.Visibility.SUPERUSER, - text=_('administration'), - url=lambda u, c: reverse('admin_index'), - weight=0, name='ADMINISTRATION') - -) - -class SupportLink(ui.Link): - def can_render(self, context): - return bool(settings.SUPPORT_URL) - - -ui.register(ui.FOOTER_LINKS, - ui.Link( - text=_('contact'), - url=lambda u, c: settings.CONTACT_URL and settings.CONTACT_URL or "%s?next=%s" % (reverse('feedback'), cleanup_urls( c['request'].path)), - weight=400), - SupportLink(_('support'), settings.SUPPORT_URL, attrs={'target': '_blank'}, weight=300), - ui.Link(_('privacy'), ui.Url('privacy'), weight=200), - ui.Link(_('faq'), ui.Url('faq'), weight=100), - ui.Link(_('about'), ui.Url('about'), weight=0), -) - -class ModerationMenuGroup(ui.AjaxMenuGroup): - def can_render(self, context): - return context['user'] != context['viewer'] and super(ModerationMenuGroup, self).can_render(context) - -class SuperUserSwitchMenuItem(ui.UserMenuItem): - def can_render(self, context): - return context['viewer'].is_siteowner or not context['user'].is_superuser - -ui.register(ui.USER_MENU, - ui.UserMenuItem( - label=_("edit profile"), - url=lambda u, c: reverse('edit_user', kwargs={ - 'id': c['user'].id, - 'slug' : slugify(c['user'].username) - }), - span_attrs={'class': 'user-edit'}, - weight=0, - name='EDIT_PROFILE' - ), - ui.UserMenuItem( - label=_("authentication settings"), - url=lambda u, c: reverse('user_authsettings', kwargs={'id': c['user'].id}), - span_attrs={'class': 'user-auth'}, - weight=100, - name='AUTH_SETTINGS' - ), - ui.UserMenuItem( - label=_("email notification settings"), - url=lambda u, c: User.objects.get(id=int(c['user'].id)).get_user_subscriptions_url(), - span_attrs={'class': 'user-subscriptions'}, - weight=200, - name='EMAIL_SETTINGS' - ), - ui.UserMenuItem( - label=_("other preferences"), - url=lambda u, c: reverse('user_preferences', kwargs={'id': c['user'].id, 'slug': slugify(c['user'].username)}), - weight=200, - name='OTHER_PREFS' - ), - ModerationMenuGroup(_("Moderation tools"), items=( - ui.UserMenuItem( - label=lambda u, c: c['user'].is_suspended() and _("withdraw suspension") or _("suspend this user"), - url=lambda u, c: reverse('user_suspend', kwargs={'id': c['user'].id}), - a_attrs=lambda u, c: {'class': c['user'].is_suspended() and 'ajax-command confirm' or 'ajax-command withprompt'}, - render_to=lambda u: not u.is_superuser, - name='SUSPENSION' - ), - ui.UserMenuItem( - label=lambda u, c: _("give/take karma"), - url=lambda u, c: reverse('user_award_points', kwargs={'id': c['user'].id}), - a_attrs=lambda u, c: {'id': 'award-rep-points', 'class': 'ajax-command withprompt'}, - span_attrs={'class': 'user-award_rep'}, - render_to=lambda u: not u.is_suspended(), - name='KARMA' - ), - ui.UserMenuItem( - label=lambda u, c: c['user'].is_staff and _("remove moderator status") or _("grant moderator status"), - url=lambda u, c: reverse('user_powers', kwargs={'id': c['user'].id, 'action':c['user'].is_staff and 'remove' or 'grant', 'status': 'staff'}), - a_attrs=lambda u, c: {'class': 'ajax-command confirm'}, - span_attrs={'class': 'user-moderator'}, - name='MODERATOR' - ), - SuperUserSwitchMenuItem( - label=lambda u, c: c['user'].is_superuser and _("remove super user status") or _("grant super user status"), - url=lambda u, c: reverse('user_powers', kwargs={'id': c['user'].id, 'action':c['user'].is_superuser and 'remove' or 'grant', 'status': 'super'}), - a_attrs=lambda u, c: {'class': 'ajax-command confirm'}, - span_attrs={'class': 'user-superuser'}, - name='SUPERUSER' - ), - ), visibility=ui.Visibility.SUPERUSER, weight=500, name='MOD_TOOLS') -) diff --git a/forum/.svn/text-base/sitemap.py.svn-base b/forum/.svn/text-base/sitemap.py.svn-base deleted file mode 100644 index 0bf8538ce49b41c6f840d2325d75924f0c9fc0eb..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/sitemap.py.svn-base +++ /dev/null @@ -1,109 +0,0 @@ -import re - -from django.contrib.sitemaps import Sitemap -from forum.models import Question -from forum.settings import QUESTIONS_SITEMAP_LIMIT, QUESTIONS_SITEMAP_CHANGEFREQ -from django.conf import settings -from django.http import HttpResponse, Http404 -from django.template import loader -from django.core import urlresolvers -from django.utils.encoding import smart_str -from django.core.paginator import EmptyPage, PageNotAnInteger - -def index(request, sitemaps): - sites = [] - for section, site in sitemaps.items(): - if callable(site): - pages = site().paginator.num_pages - else: - pages = site.paginator.num_pages - sitemap_url = urlresolvers.reverse('sitemap_section_index', kwargs={'section': section}) - - # Replace double forward slashes with single ones - final_url = '%s%s' % (settings.APP_URL, sitemap_url) - final_url = re.sub("/+", "/", final_url) - final_url = final_url.replace('http:/', 'http://') - final_url = final_url.replace('https:/', 'https://') - - sites.append(final_url) - - xml = loader.render_to_string('sitemap_index.xml', {'sitemaps': sites}) - return HttpResponse(xml, mimetype='application/xml') - -def sitemap_section_index(request, section, sitemaps): - try: - sitemap = sitemaps[section]() - except KeyError: - raise Http404("Sitemap doesn't exist") - - paginator = sitemap.paginator - - locations = [] - - for page in paginator.page_range: - location = urlresolvers.reverse('sitemap_section_page', kwargs={ 'page' : page, 'section' : section }) - location = '%s%s' % (settings.APP_URL, location) - location = re.sub("/+", "/", location) - location = location.replace('http:/', 'http://') - location = location.replace('https:/', 'https://') - locations.append(location) - - xml = loader.render_to_string('sitemap_section_index.xml', { 'locations' : locations, }) - return HttpResponse(xml, mimetype='application/xml') - -def sitemap(request, sitemaps, section=None, page=1): - maps, urls = [], [] - if section is not None: - if section not in sitemaps: - raise Http404("No sitemap available for section: %r" % section) - maps.append(sitemaps[section]) - else: - maps = sitemaps.values() - - for site in maps: - try: - if callable(site): - urls.extend(site().get_urls(page=page)) - else: - urls.extend(site.get_urls(page=page)) - except EmptyPage: - raise Http404("Page %s empty" % page) - except PageNotAnInteger: - raise Http404("No page '%s'" % page) - xml = smart_str(loader.render_to_string('sitemap.xml', {'urlset': urls})) - return HttpResponse(xml, mimetype='application/xml') - -class OsqaSitemap(Sitemap): - limit = QUESTIONS_SITEMAP_LIMIT - changefreq = QUESTIONS_SITEMAP_CHANGEFREQ - priority = 0.5 - def items(self): - return Question.objects.filter_state(deleted=False).order_by('id') - - def lastmod(self, obj): - return obj.last_activity_at - - def location(self, obj): - return obj.get_absolute_url() - - def __get(self, name, obj, default=None): - try: - attr = getattr(self, name) - except AttributeError: - return default - if callable(attr): - return attr(obj) - return attr - - def get_urls(self, page=1): - urls = [] - for item in self.paginator.page(page).object_list: - loc = "%s%s" % (settings.APP_URL, self.__get('location', item)) - url_info = { - 'location': loc, - 'lastmod': self.__get('lastmod', item, None), - 'changefreq': self.__get('changefreq', item, None), - 'priority': self.__get('priority', item, None) - } - urls.append(url_info) - return urls diff --git a/forum/.svn/text-base/startup.py.svn-base b/forum/.svn/text-base/startup.py.svn-base deleted file mode 100644 index 7f06bfba760f4364da0bb8b7f7a390c1df583e14..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/startup.py.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -import sys -import os -sys.path.append(os.path.join(os.path.dirname(__file__),'markdownext')) - -from forum.modules import get_modules_script - -get_modules_script('settings') -get_modules_script('startup') - - -import forum.badges -import forum.subscriptions -import forum.registry -get_modules_script('registry') - - - diff --git a/forum/.svn/text-base/subscriptions.py.svn-base b/forum/.svn/text-base/subscriptions.py.svn-base deleted file mode 100644 index fad24a5c95fa3a16e38548263f8407e0e39c3e1f..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/subscriptions.py.svn-base +++ /dev/null @@ -1,198 +0,0 @@ -import os -import re -import datetime -import logging -from forum.models import User, Question, Comment, QuestionSubscription, SubscriptionSettings, Answer -from forum.utils.mail import send_template_email -from django.utils.translation import ugettext as _ -from forum.actions import AskAction, AnswerAction, CommentAction, AcceptAnswerAction, UserJoinsAction, QuestionViewAction -from forum import settings -from django.db.models import Q, F - -def create_subscription_if_not_exists(question, user): - try: - subscription = QuestionSubscription.objects.get(question=question, user=user) - return subscription - except QuestionSubscription.MultipleObjectsReturned: - pass - except QuestionSubscription.DoesNotExist: - subscription = QuestionSubscription(question=question, user=user) - subscription.save() - return subscription - except Exception, e: - logging.error(e) - - return False - -def filter_subscribers(subscribers): - subscribers = subscribers.exclude(is_active=False) - - if settings.DONT_NOTIFY_UNVALIDATED: - return subscribers.exclude(email_isvalid=False) - else: - return subscribers - -def question_posted(action, new): - question = action.node - - if not question.is_notifiable: - return - - subscribers = User.objects.filter( - Q(subscription_settings__enable_notifications=True, subscription_settings__new_question='i') | - (Q(subscription_settings__new_question_watched_tags='i') & - Q(marked_tags__name__in=question.tagnames.split(' ')) & - Q(tag_selections__reason='good')) - ).exclude(id=question.author.id).distinct() - - subscribers = filter_subscribers(subscribers) - - send_template_email(subscribers, "notifications/newquestion.html", {'question': question}) - - subscription = QuestionSubscription(question=question, user=question.author) - subscription.save() - - new_subscribers = User.objects.filter( - Q(subscription_settings__all_questions=True) | - Q(subscription_settings__all_questions_watched_tags=True, - marked_tags__name__in=question.tagnames.split(' '), - tag_selections__reason='good')) - - for user in new_subscribers: - create_subscription_if_not_exists(question, user) - -AskAction.hook(question_posted) - - -def answer_posted(action, new): - answer = action.node - question = answer.question - - logging.error("Answer posted: %s" % str(answer.is_notifiable)) - - if not answer.is_notifiable or not question.is_notifiable: - return - - subscribers = question.subscribers.filter( - subscription_settings__enable_notifications=True, - subscription_settings__notify_answers=True, - subscription_settings__subscribed_questions='i' - ).exclude(id=answer.author.id).distinct() - - subscribers = filter_subscribers(subscribers) - - send_template_email(subscribers, "notifications/newanswer.html", {'answer': answer}) - - create_subscription_if_not_exists(question, answer.author) - -AnswerAction.hook(answer_posted) - - -def comment_posted(action, new): - comment = action.node - post = comment.parent - - if not comment.is_notifiable or not post.is_notifiable: - return - - if post.__class__ == Question: - question = post - else: - question = post.question - - q_filter = Q(subscription_settings__notify_comments=True) | Q(subscription_settings__notify_comments_own_post=True, id=post.author.id) - - inreply = re.search('@\w+', comment.comment) - if inreply is not None: - q_filter = q_filter | Q(subscription_settings__notify_reply_to_comments=True, - username__istartswith=inreply.group(0)[1:], - nodes__parent=post, nodes__node_type="comment") - - subscribers = question.subscribers.filter( - q_filter, subscription_settings__subscribed_questions='i', subscription_settings__enable_notifications=True - ).exclude(id=comment.user.id).distinct() - - subscribers = filter_subscribers(subscribers) - - - send_template_email(subscribers, "notifications/newcomment.html", {'comment': comment}) - - create_subscription_if_not_exists(question, comment.user) - -CommentAction.hook(comment_posted) - - -def answer_accepted(action, new): - question = action.node.question - - if not question.is_notifiable: - return - - subscribers = question.subscribers.filter( - subscription_settings__enable_notifications=True, - subscription_settings__subscribed_questions='i' - ).exclude(id=action.node.nstate.accepted.by.id).distinct() - - subscribers = filter_subscribers(subscribers) - - send_template_email(subscribers, "notifications/answeraccepted.html", {'answer': action.node}) - -AcceptAnswerAction.hook(answer_accepted) - - -def member_joined(action, new): - subscribers = User.objects.filter( - subscription_settings__enable_notifications=True, - subscription_settings__member_joins='i' - ).exclude(id=action.user.id).distinct() - - subscribers = filter_subscribers(subscribers) - - send_template_email(subscribers, "notifications/newmember.html", {'newmember': action.user}) - -UserJoinsAction.hook(member_joined) - -def question_viewed(action, new): - if not action.viewuser.is_authenticated(): - return - - try: - subscription = QuestionSubscription.objects.get(question=action.node, user=action.viewuser) - subscription.last_view = datetime.datetime.now() - subscription.save() - except: - if action.viewuser.subscription_settings.questions_viewed: - subscription = QuestionSubscription(question=action.node, user=action.viewuser) - subscription.save() - -QuestionViewAction.hook(question_viewed) - - -#todo: translate this -#record_answer_event_re = re.compile("You have received (a|\d+) .*new response.*") -#def record_answer_event(instance, created, **kwargs): -# if created: -# q_author = instance.question.author -# found_match = False -# #print 'going through %d messages' % q_author.message_set.all().count() -# for m in q_author.message_set.all(): -## #print m.message -# # match = record_answer_event_re.search(m.message) -# if match: -# found_match = True -# try: -# cnt = int(match.group(1)) -# except: -# cnt = 1 -## m.message = u"You have received %d <a href=\"%s?sort=responses\">new responses</a>."\ -# # % (cnt+1, q_author.get_profile_url()) -# -# m.save() -# break -# if not found_match: -# msg = u"You have received a <a href=\"%s?sort=responses\">new response</a>."\ -# % q_author.get_profile_url() -# -# q_author.message_set.create(message=msg) -# -#post_save.connect(record_answer_event, sender=Answer) diff --git a/forum/.svn/text-base/urls.py.svn-base b/forum/.svn/text-base/urls.py.svn-base deleted file mode 100644 index fd82f7f7707e213f933024032d95c6afbfee14eb..0000000000000000000000000000000000000000 --- a/forum/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,192 +0,0 @@ -import startup - -import os.path -from forum import settings -from django.conf.urls.defaults import * -from django.conf import settings as djsettings -from django.contrib import admin -from forum import views as app -from forum.sitemap import OsqaSitemap -from django.utils.translation import ugettext as _ -import logging - -admin.autodiscover() - -sitemaps = { - 'questions': OsqaSitemap -} - -APP_PATH = os.path.dirname(__file__) - -try: - admin_url = url(r'^%s(.*)' % _('nimda/'), admin.site.root) -except AttributeError: - admin_url = url(r'^%s(.*)' % _('nimda/'), admin.site.urls) - -# Choose the user urls pattern -if bool(settings.INCLUDE_ID_IN_USER_URLS.value): - core_user_urls_prefix = r'^%s(?P<id>\d+)/(?P<slug>.*)' -else: - core_user_urls_prefix = r'^%s(?P<slug>.*)' - -core_urls = ( - url(r'^$', app.readers.index, name='index'), admin_url, - - url(r'^sitemap.xml$', 'forum.sitemap.index', {'sitemaps': sitemaps}), - url(r'^sitemap-(?P<section>.+)-(?P<page>\d+)\.xml$', 'forum.sitemap.sitemap', {'sitemaps': sitemaps}, name="sitemap_section_page"), - url(r'^sitemap-(?P<section>.+)\.xml$', 'forum.sitemap.sitemap_section_index', {'sitemaps': sitemaps}, name="sitemap_section_index"), - - url(r'^favicon\.ico$', app.meta.favicon), - url(r'^cstyle\.css$', app.meta.custom_css, name='custom_css'), - - url(r'^m/(?P<skin>\w+)/media/(?P<path>.*)$', app.meta.media , name='osqa_media'), - url(r'^%s(?P<path>.*)$' % _('upfiles/'), 'django.views.static.serve', {'document_root': os.path.join(APP_PATH, 'upfiles').replace('\\', '/')}, name='uploaded_file',), - - url(r'^%s$' % _('faq/'), app.meta.static, {'content': settings.FAQ_PAGE_TEXT, 'title': _('FAQ')}, name='faq'), - url(r'^%s$' % _('about/'), app.meta.static, {'content': settings.ABOUT_PAGE_TEXT, 'title': _('About')}, name='about'), - url(r'^%s$' % _('markdown_help/'), app.meta.markdown_help, name='markdown_help'), url(r'^opensearch\.xml$', app.meta.opensearch, name='opensearch'), - url(r'^opensearch\.xml$', app.meta.opensearch, name='opensearch'), - url(r'^%s$' % _('privacy/'), app.meta.privacy, name='privacy'), - url(r'^%s$' % _('logout/'), app.meta.logout, name='logout'), - url(r'^%s(?P<id>\d+)/%s$' % (_('answers/'), _('edit/')), app.writers.edit_answer, name='edit_answer'), - url(r'^%s(?P<id>\d+)/$' % _('revisions/'), app.readers.revisions, name='revisions'), - url(r'^%s$' % _('questions/'), app.readers.questions, name='questions'), - url(r'^%s%s$' % (_('questions/'), _('ask/')), app.writers.ask, name='ask'), - url(r'^%s%s$' % (_('questions/'), _('related_questions/')), app.commands.related_questions, name='related_questions'), - - url(r'^%s%s$' % (_('questions/'), _('unanswered/')), app.readers.unanswered, name='unanswered'), - url(r'^%s(?P<mode>[\w\-]+)/(?P<user>\d+)/(?P<slug>.*)/$' % _('questions/'), app.readers.user_questions, name='user_questions'), - - - url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('edit/')), app.writers.edit_question, name='edit_question'), - url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('close/')), app.commands.close, kwargs=dict(close=True), name='close'), - url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('reopen/')), app.commands.close, kwargs=dict(close=False), name='reopen'), - url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('answer/')), app.writers.answer, name='answer'), - url(r'^%s(?P<action>\w+)/$' % _('pending-data/'), app.writers.manage_pending_data, name='manage_pending_data'), - - url(r'^%s(?P<id>\d+)/(?P<vote_type>[a-z]+)/' % _('vote/'), app.commands.vote_post, name='vote_post'), - url(r'^%s(?P<id>\d+)/$' % _('like_comment/'), app.commands.like_comment, name='like_comment'), - url(r'^%s(?P<id>\d+)/' % _('comment/'), app.commands.comment, name='comment'), - url(r'^%s(?P<id>\d+)/$' % _('delete_comment/'), app.commands.delete_comment, name='delete_comment'), - url(r'^%s(?P<id>\d+)/$' % _('convert_comment/'), app.commands.convert_comment_to_answer, name='convert_comment'), - url(r'^%s(?P<id>\d+)/$' % _('accept_answer/'), app.commands.accept_answer, name='accept_answer'), - url(r'^%s(?P<id>\d+)/$' % _('answer_link/'), app.commands.answer_permanent_link, name='answer_permanent_link'), - url(r'^%s(?P<id>\d+)/$' % _('mark_favorite/'), app.commands.mark_favorite, name='mark_favorite'), - url(r'^%s%s(?P<user_id>\d+)/%s(?P<answer_id>\d+)/$' % (_('award_points/'), _('user/'), _('answer/')), app.commands.award_points, name='award_points'), - - url(r'^%s(?P<id>\d+)/' % _('flag/'), app.commands.flag_post, name='flag_post'), - url(r'^%s(?P<id>\d+)/' % _('delete/'), app.commands.delete_post, name='delete_post'), - url(r'^%s(?P<id>\d+)/(?P<user>\d+)?$' % _('subscribe/'), app.commands.subscribe, name='subscribe'), - url(r'^%s(?P<id>\d+)/$' % _('subscribe/'), app.commands.subscribe, name='subscribe_simple'), - url(r'^%s' % _('matching_tags/'), app.commands.matching_tags, name='matching_tags'), - url(r'^%s' % _('matching_users/'), app.commands.matching_users, name='matching_users'), - url(r'^%s(?P<id>\d+)/' % _('node_markdown/'), app.commands.node_markdown, name='node_markdown'), - url(r'^%s(?P<id>\d+)/' % _('convert/'), app.commands.convert_to_comment, name='convert_to_comment'), - url(r'^%s(?P<id>\d+)/' % _('convert_to_question/'), app.writers.convert_to_question,name='convert_to_question'), - url(r'^%s(?P<id>\d+)/' % _('wikify/'), app.commands.wikify, name='wikify'), - - url(r'^%s(?P<id>\d+)/(?P<slug>[\w-]*)$' % _('question/'), 'django.views.generic.simple.redirect_to', {'url': '/questions/%(id)s/%(slug)s'}), - url(r'^%s(?P<id>\d+)/?$' % _('questions/'), app.readers.question, name='question'), - url(r'^%s(?P<id>\d+)/(?P<slug>.*)/(?P<answer>\d+)$' % _('questions/'), app.readers.question), - url(r'^%s(?P<id>\d+)/(?P<slug>.*)$' % _('questions/'), app.readers.question, name='question'), - - - url(r'^%s$' % _('tags/'), app.readers.tags, name='tags'), - url(r'^%s(?P<tag>.*)/$' % _('tags/'), app.readers.tag, name='tag_questions'), - url(r'^%s%s(?P<tag>[^/]+)/$' % (_('mark-tag/'),_('interesting/')), app.commands.mark_tag, kwargs={'reason':'good','action':'add'}, name='mark_interesting_tag'), - url(r'^%s%s(?P<tag>[^/]+)/$' % (_('mark-tag/'),_('ignored/')), app.commands.mark_tag, kwargs={'reason':'bad','action':'add'}, name='mark_ignored_tag'), - url(r'^%s(?P<tag>[^/]+)/$' % _('unmark-tag/'), app.commands.mark_tag, kwargs={'action':'remove'}, name='mark_ignored_tag'), - - url(r'^%s$' % _('users/'), app.users.users, name='users'), - # url(r'^%s$' % _('online_users/'), app.users.online_users, name='online_users'), - - url(r'^%s(?P<id>\d+)/(?P<slug>.*)/%s$' % (_('users/'), _('edit/')), app.users.edit_user, name='edit_user'), - url(r'^%s(?P<id>\d+)/%s$' % (_('users/'), _('award/')), app.users.award_points, name='user_award_points'), - url(r'^%s(?P<id>\d+)/%s$' % (_('users/'), _('suspend/')), app.users.suspend, name='user_suspend'), - url(r'^%s(?P<id>\d+)/%s(?P<action>[a-z]+)/(?P<status>[a-z]+)/$' % (_('users/'), _('powers/')), app.users.user_powers, name='user_powers'), - url((core_user_urls_prefix + '/%s$') % (_('users/'), _('subscriptions/')), app.users.user_subscriptions, name='user_subscriptions'), - url(r'^%s(?P<id>\d+)/(?P<slug>.*)/%s$' % (_('users/'), _('preferences/')), app.users.user_preferences, name='user_preferences'), - url(r'^%s(?P<id>\d+)/(?P<slug>.*)/%s$' % (_('users/'), _('favorites/')), app.users.user_favorites, name='user_favorites'), - url(r'^%s(?P<id>\d+)/(?P<slug>.*)/%s$' % (_('users/'), _('reputation/')), app.users.user_reputation, name='user_reputation'), - url(r'^%s(?P<id>\d+)/(?P<slug>.*)/%s$' % (_('users/'), _('votes/')), app.users.user_votes, name='user_votes'), - url(r'^%s(?P<id>\d+)/(?P<slug>.*)/%s$' % (_('users/'), _('recent/')), app.users.user_recent, name='user_recent'), - url(core_user_urls_prefix % _('users/'), app.users.user_profile, name='user_profile'), - url(r'^%s$' % _('badges/'), app.meta.badges, name='badges'), - url(r'^%s(?P<id>\d+)/(?P<slug>[\w-]+)?$' % _('badges/'), app.meta.badge, name='badge'), - # (r'^admin/doc/' % _('admin/doc'), include('django.contrib.admindocs.urls')), - - url(r'^%s$' % _('upload/'), app.writers.upload, name='upload'), - url(r'^%s$' % _('search/'), app.readers.search, name='search'), - url(r'^%s$' % _('contact/'), app.meta.feedback, name='feedback'), - - (r'^i18n/', include('django.conf.urls.i18n')), - - url(r'^%s%s$' % (_('account/'), _('signin/')), app.auth.signin_page, name='auth_signin'), - url(r'^%s%s$' % (_('account/'), _('signout/')), app.auth.signout, name='user_signout'), - url(r'^%s(?P<provider>\w+)/%s$' % (_('account/'), _('signin/')), app.auth.prepare_provider_signin, name='auth_provider_signin'), - url(r'^%s(?P<provider>\w+)/%s$' % (_('account/'), _('done/')), app.auth.process_provider_signin, name='auth_provider_done'), - url(r'^%s%s$' % (_('account/'), _('register/')), app.auth.external_register, name='auth_external_register'), - url(r'^%s%s(?P<user>\d+)/(?P<code>.+)/$' % (_('account/'), _('validate/')), app.auth.validate_email, name='auth_validate_email'), - url(r'^%s%s$' % (_('account/'), _('tempsignin/')), app.auth.request_temp_login, name='auth_request_tempsignin'), - url(r'^%s%s(?P<user>\d+)/(?P<code>.+)/$' % (_('account/'), _('tempsignin/')), app.auth.temp_signin, name='auth_tempsignin'), - url(r'^%s(?P<id>\d+)/%s$' % (_('account/'), _('authsettings/')), app.auth.auth_settings, name='user_authsettings'), - url(r'^%s%s(?P<id>\d+)/%s$' % (_('account/'), _('providers/'), _('remove/')), app.auth.remove_external_provider, name='user_remove_external_provider'), - url(r'^%s%s%s$' % (_('account/'), _('providers/'), _('add/')), app.auth.signin_page, name='user_add_external_provider'), - url(r'^%s%s$' %(_('account/'), _('send-validation/')), app.auth.send_validation_email, name='send_validation_email'), - - - url(r'^%s$' % _('admin/'), app.admin.dashboard, name='admin_index'), - url(r'^%s%s$' % (_('admin/'), _('switch_interface/')), app.admin.interface_switch, name='admin_switch_interface'), - url(r'^%s%s$' % (_('admin/'), _('statistics/')), app.admin.statistics, name='admin_statistics'), - url(r'^%s%s$' % (_('admin/'), _('denormalize/')), app.admin.recalculate_denormalized, name='admin_denormalize'), - url(r'^%s%s$' % (_('admin/'), _('go_bootstrap/')), app.admin.go_bootstrap, name='admin_go_bootstrap'), - url(r'^%s%s$' % (_('admin/'), _('go_defaults/')), app.admin.go_defaults, name='admin_go_defaults'), - url(r'^%s%s(?P<set_name>\w+)/(?P<var_name>\w+)/$' % (_('admin/'), _('settings/')), app.admin.get_default, name='admin_default'), - url(r'^%s%s$' % (_('admin/'), _('maintenance/')), app.admin.maintenance, name='admin_maintenance'), - url(r'^%s%s$' % (_('admin/'), _('flagged_posts/')), app.admin.flagged_posts, name='admin_flagged_posts'), - url(r'^%s%s$' % (_('admin/'), _('static_pages/')), app.admin.static_pages, name='admin_static_pages'), - - url(r'^%s%s%s$' % (_('admin/'), _('static_pages/'), _('new/')), app.admin.edit_page, name='admin_new_page'), - url(r'^%s%s%s(?P<id>\d+)/$' % (_('admin/'), _('static_pages/'), _('edit/')), app.admin.edit_page, name='admin_edit_page'), - url(r'^%s%s%s(?P<id>\d+)/$' % (_('admin/'), _('static_pages/'), _('delete/')), app.admin.delete_page, name='admin_delete_page'), - - url(r'^%s%s(?P<name>\w+)/$' % (_('admin/'), _('tools/')), app.admin.tools_page, name='admin_tools'), - - url(r'^%s%s(?P<set_name>\w+)/$' % (_('admin/'), _('settings/')), app.admin.settings_set, name='admin_set'), - - url(r'%s%s' % (_('admin/'), _('test_email_settings/')), app.admin.test_email_settings, name='test_email_settings'), - - url(r'^feeds/rss[/]?$', app.readers.feed, name='latest_questions_feed'), - -) - -from forum.modules import get_modules_script - -module_patterns = get_modules_script('urls') - -urlpatterns = patterns('') - -for pattern_file in module_patterns: - pattern = getattr(pattern_file, 'urlpatterns', None) - if pattern: - urlpatterns += pattern - -module_defined = {} - -for t in urlpatterns: - if hasattr(t, 'name') and t.name: - module_defined[t.name] = True - -core_defined = [] - -for u in core_urls: - if not(hasattr(u, 'name') and u.name and (u.name in module_defined)): - core_defined.append(u) - -def urlname(name): - if name in module_defined: - return None - return name - -urlpatterns += patterns('', *core_defined) - diff --git a/forum/actions/.svn/all-wcprops b/forum/actions/.svn/all-wcprops deleted file mode 100644 index 1b3db3ea09ade64e282ba48638b83430e2517842..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 47 -/svnroot/!svn/ver/1263/osqa/trunk/forum/actions -END -page.py -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1077/osqa/trunk/forum/actions/page.py -END -user.py -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1263/osqa/trunk/forum/actions/user.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1077/osqa/trunk/forum/actions/__init__.py -END -node.py -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1207/osqa/trunk/forum/actions/node.py -END -meta.py -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1077/osqa/trunk/forum/actions/meta.py -END diff --git a/forum/actions/.svn/entries b/forum/actions/.svn/entries deleted file mode 100644 index 961bf03c43b16bff7a768d4eead85900ecbf0219..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/entries +++ /dev/null @@ -1,198 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/actions -http://svn.osqa.net/svnroot - - - -2012-05-11T00:49:34.640499Z -1263 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -meta.py -file - - - - -2012-06-22T20:34:43.991779Z -b2adba9e3fdf64490cd5a76096cb0a6f -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -7284 - -page.py -file - - - - -2012-06-22T20:34:43.983783Z -8f546c373588c59f9f61d12f5e972dff -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1987 - -user.py -file - - - - -2012-06-22T20:34:43.987781Z -c28f062ed4fe535a12867d0040177851 -2012-05-11T00:49:34.640499Z -1263 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -8982 - -__init__.py -file - - - - -2012-06-22T20:34:43.987781Z -82e25126764374268741dc45b425e176 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -75 - -node.py -file - - - - -2012-06-22T20:34:43.987781Z -0a1cea5b9183391c9ae23cdc0676a008 -2011-12-04T12:29:49.682442Z -1207 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -10187 - diff --git a/forum/actions/.svn/prop-base/__init__.py.svn-base b/forum/actions/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/actions/.svn/prop-base/meta.py.svn-base b/forum/actions/.svn/prop-base/meta.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/prop-base/meta.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/actions/.svn/prop-base/node.py.svn-base b/forum/actions/.svn/prop-base/node.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/prop-base/node.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/actions/.svn/prop-base/page.py.svn-base b/forum/actions/.svn/prop-base/page.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/prop-base/page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/actions/.svn/prop-base/user.py.svn-base b/forum/actions/.svn/prop-base/user.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/prop-base/user.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/actions/.svn/text-base/__init__.py.svn-base b/forum/actions/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index a23e4dfae59c9f768a58b8d9409efd19f35ebca2..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -from meta import * -from node import * -from user import * -from page import * \ No newline at end of file diff --git a/forum/actions/.svn/text-base/meta.py.svn-base b/forum/actions/.svn/text-base/meta.py.svn-base deleted file mode 100644 index 62360ce7f65bae6423896bab99da04d0601767ce..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/text-base/meta.py.svn-base +++ /dev/null @@ -1,215 +0,0 @@ -from django.utils.translation import ugettext as _ -from django.db.models import F -from forum.models.action import ActionProxy, DummyActionProxy -from forum.models import Vote, Flag -from forum import settings - -class VoteAction(ActionProxy): - def update_node_score(self, inc): - self.node.score = F('score') + inc - self.node.save() - - def process_vote_action(self, value): - self.update_node_score(value) - vote = Vote(node=self.node, user=self.user, action=self, value=value) - vote.save() - - def cancel_action(self): - vote = self.vote - self.update_node_score(-vote.value) - vote.delete() - - @classmethod - def get_for(cls, user, node): - try: - vote = Vote.objects.get(user=user, node=node) - return vote.value - except: - return None - - @classmethod - def get_action_for(cls, user, node): - try: - vote = Vote.objects.get(user=user, node=node) - return vote.action - except: - return None - - def describe_vote(self, vote_desc, viewer=None): - return _("%(user)s %(vote_desc)s %(post_desc)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'vote_desc': vote_desc, 'post_desc': self.describe_node(viewer, self.node) - } - - -class VoteUpAction(VoteAction): - def repute_users(self): - self.repute(self.node.author, int(settings.REP_GAIN_BY_UPVOTED)) - - def process_action(self): - self.process_vote_action(1) - self.user.reset_vote_up_count_cache() - - def cancel_action(self): - super(VoteUpAction, self).cancel_action() - self.user.reset_vote_up_count_cache() - - def describe(self, viewer=None): - return self.describe_vote(_("voted up"), viewer) - -class VoteDownAction(VoteAction): - def repute_users(self): - self.repute(self.node.author, -int(settings.REP_LOST_BY_DOWNVOTED)) - self.repute(self.user, -int(settings.REP_LOST_BY_DOWNVOTING)) - - def process_action(self): - self.process_vote_action(-1) - self.user.reset_vote_down_count_cache() - - def cancel_action(self): - super(VoteDownAction, self).cancel_action() - self.user.reset_vote_down_count_cache() - - def describe(self, viewer=None): - return self.describe_vote(_("voted down"), viewer) - - -class VoteUpCommentAction(VoteUpAction): - def repute_users(self): - pass - - def process_action(self): - self.process_vote_action(1) - - def cancel_action(self): - super(VoteUpAction, self).cancel_action() - - def describe(self, viewer=None): - return self.describe_vote(_("liked"), viewer) - - -class FlagAction(ActionProxy): - def repute_users(self): - self.repute(self.node.author, -int(settings.REP_LOST_BY_FLAGGED)) - - def process_action(self): - flag = Flag(user=self.user, node=self.node, action=self, reason=self.extra) - flag.save() - self.node.reset_flag_count_cache() - - if self.node.flag_count >= int(settings.FLAG_COUNT_TO_HIDE_POST): - self.repute(self.node.author, -int(settings.REP_LOST_BY_FLAGGED_3_TIMES)) - - if self.node.flag_count >= int(settings.FLAG_COUNT_TO_DELETE_POST): - self.repute(self.node.author, -int(settings.REP_LOST_BY_FLAGGED_5_TIMES)) - if not self.node.nis.deleted: - DeleteAction(node=self.node, user=self.user, extra="BYFLAGGED").save() - - def cancel_action(self): - self.flag.delete() - self.node.reset_flag_count_cache() - - @classmethod - def get_for(cls, user, node): - try: - flag = Flag.objects.get(user=user, node=node) - return flag.reason or _("No reason given") - except: - return None - - def describe(self, viewer=None): - return _("%(user)s flagged %(post_desc)s: %(reason)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'post_desc': self.describe_node(viewer, self.node), 'reason': self.extra - } - - -class AcceptAnswerAction(ActionProxy): - def repute_users(self): - if (self.user == self.node.parent.author) and (not self.user == self.node.author): - self.repute(self.user, int(settings.REP_GAIN_BY_ACCEPTING)) - - if self.user != self.node.author: - self.repute(self.node.author, int(settings.REP_GAIN_BY_ACCEPTED)) - - def process_action(self): - self.node.marked = True - self.node.nstate.accepted = self - self.node.save() - self.node.question.reset_accepted_count_cache() - - def cancel_action(self): - self.node.marked = False - self.node.nstate.accepted = None - self.node.save() - self.node.question.reset_accepted_count_cache() - - def describe(self, viewer=None): - answer = self.node - question = answer.parent - - if self.user == question.author: - asker = (self.user == viewer) and _("your") or _("his") - else: - asker = self.hyperlink(question.author.get_profile_url(), question.author.username) - - return _("%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'answerer': self.hyperlink(answer.author.get_profile_url(), self.friendly_ownername(viewer, answer.author)), - 'asker': asker, - 'question': self.hyperlink(question.get_absolute_url(), question.title) - } - - -class FavoriteAction(ActionProxy): - def process_action(self): - self.node.reset_favorite_count_cache() - - def cancel_action(self): - self.process_action() - - def describe(self, viewer=None): - return _("%(user)s marked %(post_desc)s as favorite") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'post_desc': self.describe_node(viewer, self.node), - } - - -class DeleteAction(ActionProxy): - def process_action(self): - self.node.mark_deleted(self) - - if self.node.node_type == "answer": - self.node.question.reset_answer_count_cache() - - def cancel_action(self): - self.node.mark_deleted(None) - - if self.node.node_type == "answer": - self.node.question.reset_answer_count_cache() - - def describe(self, viewer=None): - return _("%(user)s deleted %(post_desc)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'post_desc': self.describe_node(viewer, self.node) - } - - def reason(self): - if self.extra != "BYFLAGGED": - return self.extra - else: - return _("flagged by multiple users: ") + "; ".join([f.extra for f in FlagAction.objects.filter(node=self.node)]) - -class UnknownAction(ActionProxy): - pass - - -class QuestionViewAction(DummyActionProxy): - def __init__(self, node, user, ip=None): - self.viewuser = user - self.node = node - super(QuestionViewAction, self).__init__(ip) - - def process_action(self): - self.node.extra_count = F('extra_count') + 1 - self.node.save() diff --git a/forum/actions/.svn/text-base/node.py.svn-base b/forum/actions/.svn/text-base/node.py.svn-base deleted file mode 100644 index 5ba6e2bfe0f1904f6571d6974bdecf5aff0ec5b9..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/text-base/node.py.svn-base +++ /dev/null @@ -1,278 +0,0 @@ -from django.utils.html import strip_tags -from django.utils.translation import ugettext as _ -from forum.models.action import ActionProxy -from forum.models import Comment, Question, Answer, NodeRevision -import logging - -class NodeEditAction(ActionProxy): - def create_revision_data(self, initial=False, **data): - revision_data = dict(summary=data.get('summary', (initial and _('Initial revision') or '')), body=data['text']) - - if data.get('title', None): - revision_data['title'] = strip_tags(data['title'].strip()) - - if data.get('tags', None): - revision_data['tagnames'] = data['tags'].strip() - - return revision_data - -class AskAction(NodeEditAction): - verb = _("asked") - - def process_data(self, **data): - processed_data = self.create_revision_data(True, **data) - if 'added_at' in data: - processed_data['added_at'] = data['added_at'] - - question = Question(author=self.user, **processed_data) - question.save() - self.node = question - - self.user.message_set.create(message=self.describe(self.user)) - - def describe(self, viewer=None): - return _("%(user)s asked %(question)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'question': self.hyperlink(self.node.get_absolute_url(), self.node.title) - } - -class AnswerAction(NodeEditAction): - verb = _("answered") - - def process_data(self, **data): - answer = Answer(author=self.user, parent=data['question'], **self.create_revision_data(True, **data)) - answer.save() - self.node = answer - - def process_action(self): - self.node.question.reset_answer_count_cache() - - self.user.message_set.create(message=self.describe(self.user)) - - - def describe(self, viewer=None): - question = self.node.parent - return _("%(user)s answered %(asker)s on %(question)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'asker': self.hyperlink(question.author.get_profile_url(), self.friendly_username(viewer, question.author)), - 'question': self.hyperlink(self.node.get_absolute_url(), question.title) - } - -class CommentAction(ActionProxy): - verb = _("commented") - - def process_data(self, text='', parent=None): - comment = Comment(author=self.user, parent=parent, body=text) - comment.save() - self.node = comment - - def describe(self, viewer=None): - return _("%(user)s commented on %(post_desc)s") % { - 'user': self.hyperlink(self.node.author.get_profile_url(), self.friendly_username(viewer, self.node.author)), - 'post_desc': self.describe_node(viewer, self.node.parent) - } - -class ReviseAction(NodeEditAction): - verb = _("edited") - - def process_data(self, **data): - revision_data = self.create_revision_data(**data) - revision = self.node.create_revision(self.user, **revision_data) - self.extra = revision.revision - - def process_action(self): - self.node.last_edited = self - self.node.save() - - def describe(self, viewer=None): - return _("%(user)s edited %(post_desc)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'post_desc': self.describe_node(viewer, self.node) - } - - def get_absolute_url(self): - return self.node.get_revisions_url() - -class RetagAction(ActionProxy): - verb = _("retagged") - - def process_data(self, tagnames=''): - active = self.node.active_revision - revision_data = dict(summary=_('Retag'), title=active.title, tagnames=strip_tags(tagnames.strip()), body=active.body) - revision = self.node.create_revision(self.user, **revision_data) - self.extra = revision.revision - - def process_action(self): - self.node.last_edited = self - self.node.save() - - def describe(self, viewer=None): - return _("%(user)s retagged %(post_desc)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'post_desc': self.describe_node(viewer, self.node) - } - - def get_absolute_url(self): - return self.node.get_revisions_url() - -class RollbackAction(ActionProxy): - verb = _("reverted") - - def process_data(self, activate=None): - previous = self.node.active_revision - self.node.activate_revision(self.user, activate) - self.extra = "%d:%d" % (previous.revision, activate.revision) - - def process_action(self): - self.node.last_edited = self - self.node.save() - - def describe(self, viewer=None): - revisions = [NodeRevision.objects.get(node=self.node, revision=int(n)) for n in self.extra.split(':')] - - return _("%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) to revision %(final)d (%(final_sum)s)") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'post_desc': self.describe_node(viewer, self.node), - 'initial': revisions[0].revision, 'initial_sum': revisions[0].summary, - 'final': revisions[1].revision, 'final_sum': revisions[1].summary, - } - - def get_absolute_url(self): - return self.node.get_revisions_url() - -class CloseAction(ActionProxy): - verb = _("closed") - - def process_action(self): - self.node.marked = True - self.node.nstate.closed = self - self.node.last_edited = self - self.node.update_last_activity(self.user, save=True) - - def cancel_action(self): - self.node.marked = False - self.node.nstate.closed = None - self.node.update_last_activity(self.user, save=True) - - def describe(self, viewer=None): - return _("%(user)s closed %(post_desc)s: %(reason)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'post_desc': self.describe_node(viewer, self.node), - 'reason': self.extra - } - -class AnswerToCommentAction(ActionProxy): - verb = _("converted") - - def process_data(self, new_parent=None): - self.node.parent = new_parent - self.node.node_type = "comment" - - for comment in self.node.comments.all(): - comment.parent = new_parent - comment.save() - - self.node.last_edited = self - self.node.update_last_activity(self.user, save=True) - try: - self.node.abs_parent.reset_answer_count_cache() - except AttributeError: - pass - - def describe(self, viewer=None): - return _("%(user)s converted an answer to %(question)s into a comment") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'question': self.describe_node(viewer, self.node.abs_parent), - } - -class CommentToAnswerAction(ActionProxy): - verb = _("converted") - - def process_data(self, question): - self.node.parent = question - self.node.node_type = "answer" - self.node.last_edited = self - self.node.update_last_activity(self.user, save=True) - - # Now updated the cached data - question.reset_answer_count_cache() - - def describe(self, viewer=None): - return _("%(user)s converted comment on %(question)s into an answer") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'question': self.describe_node(viewer, self.node.abs_parent), - } -class CommentToQuestionAction(NodeEditAction): - verb = _("converted") - - def process_data(self, **data): - revision_data = self.create_revision_data(**data) - revision = self.node.create_revision(self.user, **revision_data) - - self.extra = { - 'covert_revision': revision.revision, - } - - self.node.node_type = "question" - self.node.parent = None - self.node.abs_parent = None - - def process_action(self): - self.node.last_edited = self - self.node.save() - - def describe(self, viewer=None): - return _("%(user)s converted comment on %(question)s to a new question") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'question': self.describe_node(viewer, self.node.abs_parent), - } - -class AnswerToQuestionAction(NodeEditAction): - verb = _("converted to question") - - def process_data(self, **data): - revision_data = self.create_revision_data(**data) - revision = self.node.create_revision(self.user, **revision_data) - - original_question = self.node.question - - self.extra = { - 'covert_revision': revision.revision, - 'original_question': original_question - } - - self.node.node_type = "question" - self.node.parent = None - self.node.abs_parent = None - - original_question.reset_answer_count_cache() - - def process_action(self): - self.node.last_edited = self - self.node.save() - - - def describe(self, viewer=None): - return _("%(user)s converted an answer to %(question)s into a separate question") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'question': self.describe_node(viewer, self.node.abs_parent), - } - -class WikifyAction(ActionProxy): - verb = _("wikified") - - def process_action(self): - self.node.nstate.wiki = self - self.node.last_edited = self - self.node.update_last_activity(self.user, save=True) - - def cancel_action(self): - self.node.nstate.wiki = None - self.node.update_last_activity(self.user, save=True) - - def describe(self, viewer=None): - return _("%(user)s marked %(node)s as community wiki.") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'node': self.describe_node(viewer, self.node), - } - diff --git a/forum/actions/.svn/text-base/page.py.svn-base b/forum/actions/.svn/text-base/page.py.svn-base deleted file mode 100644 index 508e8c250db63d7a23447cb1ea88601d3aee31a1..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/text-base/page.py.svn-base +++ /dev/null @@ -1,58 +0,0 @@ -from django.utils.translation import ugettext as _ -from forum.models.action import ActionProxy -from forum.models import Page - -class NewPageAction(ActionProxy): - verb = _("created") - - def process_data(self, **data): - title = data.pop('title') - body = data.pop('content') - - page = Page(author=self.user, title=title, body=body, extra=data) - page.save() - self.node = page - - def describe(self, viewer=None): - return _("%(user)s created a new page titled %(page)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'page': self.hyperlink(self.node.get_absolute_url(), self.node.title) - } - -class EditPageAction(ActionProxy): - verb = _("edited") - - def process_data(self, **data): - title = data.pop('title') - body = data.pop('content') - - if (title != self.node.title) or (body != self.node.body): - self.node.create_revision(self.user, title=title, body=body) - - self.node.extra = data - self.node.save() - - def describe(self, viewer=None): - return _("%(user)s edited the page titled %(page)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'page': self.hyperlink(self.node.get_absolute_url(), self.node.title) - } - -class PublishAction(ActionProxy): - verb = _("published") - - def process_action(self): - self.node.marked = True - self.node.nstate.published = self - self.node.save() - - def cancel_action(self): - self.node.marked = False - self.node.nstate.published = None - self.node.save() - - def describe(self, viewer=None): - return _("%(user)s published a new page titled %(page)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'page': self.hyperlink(self.node.get_absolute_url(), self.node.title) - } diff --git a/forum/actions/.svn/text-base/user.py.svn-base b/forum/actions/.svn/text-base/user.py.svn-base deleted file mode 100644 index d9c6be920e9411fc592666dd08e25db1ff1dbe38..0000000000000000000000000000000000000000 --- a/forum/actions/.svn/text-base/user.py.svn-base +++ /dev/null @@ -1,226 +0,0 @@ -from django.utils.translation import ungettext, ugettext as _ -from django.core.urlresolvers import reverse -from django.db.models import F -from forum.models.action import ActionProxy -from forum.models import Award, Badge, ValidationHash, User -from forum import settings -from forum.settings import APP_SHORT_NAME -from forum.utils.mail import send_template_email - -class UserJoinsAction(ActionProxy): - verb = _("joined") - - def repute_users(self): - self.repute(self.user, int(settings.INITIAL_REP)) - - def process_action(self): - hash = ValidationHash.objects.create_new(self.user, 'email', [self.user.email]) - send_template_email([self.user], "auth/welcome_email.html", {'validation_code': hash}) - - def describe(self, viewer=None): - return _("%(user)s %(have_has)s joined the %(app_name)s Q&A community") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'have_has': self.viewer_or_user_verb(viewer, self.user, _('have'), _('has')), - 'app_name': APP_SHORT_NAME, - } - -class UserLoginAction(ActionProxy): - verb = _("logged in") - - def describe(self, viewer=None): - return _("%(user)s %(have_has)s logged in") % { - 'user' : self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'have_has': self.viewer_or_user_verb(viewer, self.user, _('have'), _('has')), - } - -class EmailValidationAction(ActionProxy): - verb = _("validated e-mail") - - def repute_users(self): - self.repute(self.user, int(settings.REP_GAIN_BY_EMAIL_VALIDATION)) - - def process_action(self): - self.user.email_isvalid = True - self.user.save() - - def describe(self, viewer=None): - return _("%(user)s %(have_has)s validated the e-mail %(email)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'have_has': self.viewer_or_user_verb(viewer, self.user, _('have'), _('has')), - 'email' : self.user.email if viewer.is_superuser or viewer.is_staff or viewer == self.user else "" - } - -class EditProfileAction(ActionProxy): - verb = _("edited profile") - - def describe(self, viewer=None): - return _("%(user)s edited %(hes_or_your)s %(profile_link)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'hes_or_your': self.viewer_or_user_verb(viewer, self.user, _('your'), _('his')), - 'profile_link': self.hyperlink(self.user.get_profile_url(), _('profile')), - } - -class BonusRepAction(ActionProxy): - verb = _("gave bonus") - - def process_data(self, value, affected): - self._value = value - self._affected = affected - - - def repute_users(self): - self.repute(self._affected, self._value) - - if self._value > 0: - self._affected.message_set.create( - message=_("Congratulations, you have been awarded an extra %s reputation points.") % self._value + - '<br />%s' % self.extra.get('message', _('Thank you'))) - else: - self._affected.message_set.create( - message=_("You have been penalized in %s reputation points.") % self._value + - '<br />%s' % self.extra.get('message', '')) - - def describe(self, viewer=None): - value = self.extra.get('value', _('unknown')) - message = self.extra.get('message', '') - - try: - if int(value) > 0: - return _("%(user)s awarded an extra %(value)s reputation points to %(users)s: %(message)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'value': value, 'users':self.affected_links(viewer), 'message': message - } - else: - return _("%(user)s penalised %(users)s in %(value)s reputation points: %(message)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'value': value, 'users':self.affected_links(viewer), 'message': message - } - except Exception, e: - return '' - -class AwardPointsAction(ActionProxy): - verb = _("gave reputation points") - - def process_data(self, value, affected): - self._value = value - self._affected = affected - - - def repute_users(self): - self.repute(self._affected, self._value) - self.repute(self.user, -self._value) - - - self._affected.message_set.create( - message=_("Congratulations, you have been awarded an extra %(points)s reputation %(points_label)s on <a href=\"%(answer_url)s\">this</a> answer.") % { - 'points': self._value, - 'points_label': ungettext('point', 'points', self._value), - 'answer_url': self.node.get_absolute_url() - }) - - def describe(self, viewer=None): - value = self.extra.get('value', _('unknown')) - - try: - if int(value) > 0: - return _("%(user)s awarded an extra %(value)s reputation points to %(users)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'value': value, 'users':self.affected_links(viewer), - } - else: - return _("%(user)s penalised %(users)s in %(value)s reputation points") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'value': value, 'users':self.affected_links(viewer), - } - except Exception, e: - return '' - -class AwardAction(ActionProxy): - verb = _("was awarded") - - def process_data(self, badge, trigger): - self.__dict__['_badge'] = badge - self.__dict__['_trigger'] = trigger - - def process_action(self): - badge = self.__dict__['_badge'] - trigger = self.__dict__['_trigger'] - - award = Award(user=self.user, badge=badge, trigger=trigger, action=self) - if self.node: - award.node = self.node - - award.save() - award.badge.awarded_count = F('awarded_count') + 1 - award.badge.save() - - if award.badge.type == Badge.GOLD: - self.user.gold += 1 - if award.badge.type == Badge.SILVER: - self.user.silver += 1 - if award.badge.type == Badge.BRONZE: - self.user.bronze += 1 - - self.user.save() - - self.user.message_set.create(message=_( - """Congratulations, you have received a badge '%(badge_name)s'. <a href="%(badge_url)s">Find out who has it, too</a>.""" - ) % dict( - badge_name=award.badge.name, - badge_url=award.badge.get_absolute_url())) - - def cancel_action(self): - award = self.award - badge = award.badge - badge.awarded_count = F('awarded_count') - 1 - badge.save() - award.delete() - - @classmethod - def get_for(cls, user, badge, node=False): - try: - if node is False: - return Award.objects.get(user=user, badge=badge).action - else: - return Award.objects.get(user=user, node=node, badge=badge).action - except: - return None - - def describe(self, viewer=None): - return _("%(user)s %(were_was)s awarded the %(badge_name)s badge") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'were_was': self.viewer_or_user_verb(viewer, self.user, _('were'), _('was')), - 'badge_name': self.award.badge.name, - } - -class SuspendAction(ActionProxy): - verb = _("suspended") - - def process_data(self, **kwargs): - self._suspended = kwargs.pop('suspended') - self.extra = kwargs - - def repute_users(self): - self.repute(self._suspended, 0) - - def process_action(self): - self._suspended.is_active = False - self._suspended.save() - - def cancel_action(self): - for u in User.objects.filter(reputes__action=self).distinct(): - u.is_active = True - u._pop_suspension_cache() - u.save() - u.message_set.create(message=_("Your suspension has been removed.")) - - def describe(self, viewer=None): - if self.extra.get('bantype', 'indefinitely') == 'forxdays' and self.extra.get('forxdays', None): - suspension = _("for %s days") % self.extra['forxdays'] - else: - suspension = _("indefinetely") - - return _("%(user)s suspended %(users)s %(suspension)s: %(msg)s") % { - 'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)), - 'users': self.affected_links(viewer), 'suspension': suspension, 'msg': self.extra.get('publicmsg', _('Bad behaviour')) - } \ No newline at end of file diff --git a/forum/authentication/.svn/all-wcprops b/forum/authentication/.svn/all-wcprops deleted file mode 100644 index bfb2fb3f4e1504d57068e801bbc667c3eee04f0e..0000000000000000000000000000000000000000 --- a/forum/authentication/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1077/osqa/trunk/forum/authentication -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1077/osqa/trunk/forum/authentication/__init__.py -END -base.py -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1077/osqa/trunk/forum/authentication/base.py -END diff --git a/forum/authentication/.svn/entries b/forum/authentication/.svn/entries deleted file mode 100644 index 5aa71e6a12402f57be48e18724fe424ae3ffa5f3..0000000000000000000000000000000000000000 --- a/forum/authentication/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/authentication -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:38.590475Z -2654efe93c8c8e8e11649a8144d662a8 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1062 - -base.py -file - - - - -2012-06-22T20:34:38.586477Z -8ee768023e072b801d13b1c38ff54cd5 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1154 - diff --git a/forum/authentication/.svn/prop-base/__init__.py.svn-base b/forum/authentication/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/authentication/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/authentication/.svn/prop-base/base.py.svn-base b/forum/authentication/.svn/prop-base/base.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/authentication/.svn/prop-base/base.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/authentication/.svn/text-base/__init__.py.svn-base b/forum/authentication/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 79c47a8dd2e05908b96e2e7ea438a2cf72372576..0000000000000000000000000000000000000000 --- a/forum/authentication/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,34 +0,0 @@ -import re -import django.dispatch -from forum.modules import get_modules_script_classes -from forum.authentication.base import AuthenticationConsumer, ConsumerTemplateContext - -class ConsumerAndContext: - def __init__(self, id, consumer, context): - self.id = id - self._consumer = consumer - - if context: - context.id = id - self.context = context - - @property - def consumer(self): - return self._consumer() - -consumers = dict([ - (re.sub('AuthConsumer$', '', name).lower(), cls) for name, cls - in get_modules_script_classes('authentication', AuthenticationConsumer).items() - if not re.search('AbstractAuthConsumer$', name) - ]) - -contexts = dict([ - (re.sub('AuthContext$', '', name).lower(), cls) for name, cls - in get_modules_script_classes('authentication', ConsumerTemplateContext).items() - ]) - -AUTH_PROVIDERS = dict([ - (name, ConsumerAndContext(name, consumers[name], contexts.get(name, None))) for name in consumers.keys() - ]) - - diff --git a/forum/authentication/.svn/text-base/base.py.svn-base b/forum/authentication/.svn/text-base/base.py.svn-base deleted file mode 100644 index 99005866172d798732fc8e093451ef111fbc2808..0000000000000000000000000000000000000000 --- a/forum/authentication/.svn/text-base/base.py.svn-base +++ /dev/null @@ -1,44 +0,0 @@ - -class AuthenticationConsumer(object): - - def prepare_authentication_request(self, request, redirect_to): - raise NotImplementedError() - - def process_authentication_request(self, response): - raise NotImplementedError() - - def get_user_data(self, key): - raise NotImplementedError() - - -class ConsumerTemplateContext(object): - """ - Class that provides information about a certain authentication provider context in the signin page. - - class attributes: - - mode - one of BIGICON, SMALLICON, FORM - - human_name - the human readable name of the provider - - extra_js - some providers require us to load extra javascript on the signin page for them to work, - this is the place to add those files in the form of a list - - extra_css - same as extra_js but for css files - """ - mode = '' - weight = 500 - human_name = '' - extra_js = [] - extra_css = [] - show_to_logged_in_user = True - - @classmethod - def readable_key(cls, key): - return key.key - -class InvalidAuthentication(Exception): - def __init__(self, message): - self.message = message - - \ No newline at end of file diff --git a/forum/badges/.svn/all-wcprops b/forum/badges/.svn/all-wcprops deleted file mode 100644 index 1f8411a935da081f5c40a9497ae9b3b2298928ce..0000000000000000000000000000000000000000 --- a/forum/badges/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 46 -/svnroot/!svn/ver/1077/osqa/trunk/forum/badges -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/1077/osqa/trunk/forum/badges/__init__.py -END -base.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1077/osqa/trunk/forum/badges/base.py -END diff --git a/forum/badges/.svn/entries b/forum/badges/.svn/entries deleted file mode 100644 index 2c7bb9f84cc5e4864e3257b369efda6544f6cb41..0000000000000000000000000000000000000000 --- a/forum/badges/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/badges -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -base.py -file - - - - -2012-06-22T20:34:38.718411Z -655cdcd18cfd09de6e441c37f871dd51 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2271 - -__init__.py -file - - - - -2012-06-22T20:34:38.718411Z -a029fbc5f30a4428dfd0847d8b9e3d78 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -105 - diff --git a/forum/badges/.svn/prop-base/__init__.py.svn-base b/forum/badges/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/badges/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/badges/.svn/prop-base/base.py.svn-base b/forum/badges/.svn/prop-base/base.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/badges/.svn/prop-base/base.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/badges/.svn/text-base/__init__.py.svn-base b/forum/badges/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index c413e82dbff0712f4ce61566f78746f3207c7a8a..0000000000000000000000000000000000000000 --- a/forum/badges/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -from forum.modules import get_modules_script - -get_modules_script('badges') - -from base import BadgesMeta - diff --git a/forum/badges/.svn/text-base/base.py.svn-base b/forum/badges/.svn/text-base/base.py.svn-base deleted file mode 100644 index c78a925e80685242a3b903752c1a63e789bea651..0000000000000000000000000000000000000000 --- a/forum/badges/.svn/text-base/base.py.svn-base +++ /dev/null @@ -1,79 +0,0 @@ -import re -from string import lower - -from django.core.exceptions import MultipleObjectsReturned -from django.db.models.signals import post_save - -from forum.models import Badge, Node, Action -from forum.actions import AwardAction - -import logging - -installed = dict([(b.cls, b) for b in Badge.objects.all()]) - -class BadgesMeta(type): - by_class = {} - by_id = {} - - def __new__(mcs, name, bases, dic): - badge = type.__new__(mcs, name, bases, dic) - - if not dic.get('abstract', False): - if not name in installed: - ondb = Badge(cls=name, type=dic.get('type', Badge.BRONZE)) - ondb.save() - else: - ondb = installed[name] - - badge.ondb = ondb.id - - inst = badge() - - def hook(action, new): - user = inst.award_to(action) - - if user: - badge.award(user, action, badge.award_once) - - for action in badge.listen_to: - action.hook(hook) - - BadgesMeta.by_class[name] = inst - BadgesMeta.by_id[ondb.id] = inst - - return badge - -class AbstractBadge(object): - __metaclass__ = BadgesMeta - - abstract = True - award_once = False - - @property - def name(self): - raise NotImplementedError - - @property - def description(self): - raise NotImplementedError - - @classmethod - def award(cls, user, action, once=False): - db_object = Badge.objects.get(id=cls.ondb) - try: - if once: - node = None - awarded = AwardAction.get_for(user, db_object) - else: - node = action.node - awarded = AwardAction.get_for(user, db_object, node) - - trigger = isinstance(action, Action) and action or None - - if not awarded: - AwardAction(user=user, node=node).save(data=dict(badge=db_object, trigger=trigger)) - except MultipleObjectsReturned: - if node: - logging.error('Found multiple %s badges awarded for user %s (%s)' % (self.name, user.username, user.id)) - else: - logging.error('Found multiple %s badges awarded for user %s (%s) and node %s' % (self.name, user.username, user.id, node.id)) \ No newline at end of file diff --git a/forum/forms/.svn/all-wcprops b/forum/forms/.svn/all-wcprops deleted file mode 100644 index 3aa3dea8842a9c7f6ddc86bf30fba5802dbc2942..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 45 -/svnroot/!svn/ver/1259/osqa/trunk/forum/forms -END -auth.py -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1243/osqa/trunk/forum/forms/auth.py -END -qanda.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1259/osqa/trunk/forum/forms/qanda.py -END -admin.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1077/osqa/trunk/forum/forms/admin.py -END -general.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1243/osqa/trunk/forum/forms/general.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1077/osqa/trunk/forum/forms/__init__.py -END diff --git a/forum/forms/.svn/dir-prop-base b/forum/forms/.svn/dir-prop-base deleted file mode 100644 index a0055bc12716d51919f34645408f5bab32bba3d4..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/dir-prop-base +++ /dev/null @@ -1,6 +0,0 @@ -K 13 -svn:mergeinfo -V 98 -/osqa/branches/cacheimp/forum/forms:874-939 -/osqa/branches/notification-config/forum/forms:693-848 -END diff --git a/forum/forms/.svn/entries b/forum/forms/.svn/entries deleted file mode 100644 index 8fe6bec27e9ea705d5d22d619c2e854c5b938061..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/entries +++ /dev/null @@ -1,198 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/forms -http://svn.osqa.net/svnroot - - - -2012-04-27T22:19:01.772705Z -1259 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -admin.py -file - - - - -2012-06-22T20:34:38.742399Z -a43c1ae22041dc89b6f987dc1a99a73a -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4232 - -general.py -file - - - - -2012-06-22T20:34:38.742399Z -23bee137a8843249f52781a33fa8896a -2012-04-04T23:10:46.497540Z -1243 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -8563 - -__init__.py -file - - - - -2012-06-22T20:34:38.750395Z -bcdc3b9b78a0ba73dcd40f72539b9aec -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -81 - -auth.py -file - - - - -2012-06-22T20:34:38.750395Z -6142498b2a72083c2014d297d90f941a -2012-04-04T23:10:46.497540Z -1243 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2040 - -qanda.py -file - - - - -2012-06-22T20:34:38.750395Z -8700e2c58378c204b929c50100af1ecd -2012-04-27T22:19:01.772705Z -1259 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -15431 - diff --git a/forum/forms/.svn/prop-base/__init__.py.svn-base b/forum/forms/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/forms/.svn/prop-base/admin.py.svn-base b/forum/forms/.svn/prop-base/admin.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/prop-base/admin.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/forms/.svn/prop-base/auth.py.svn-base b/forum/forms/.svn/prop-base/auth.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/prop-base/auth.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/forms/.svn/prop-base/general.py.svn-base b/forum/forms/.svn/prop-base/general.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/prop-base/general.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/forms/.svn/prop-base/qanda.py.svn-base b/forum/forms/.svn/prop-base/qanda.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/prop-base/qanda.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/forms/.svn/text-base/__init__.py.svn-base b/forum/forms/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index ea5108cf0f704adc2ded58a50c6723aa20a3e1f0..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -from qanda import * -from admin import * -from auth import * -from general import * diff --git a/forum/forms/.svn/text-base/admin.py.svn-base b/forum/forms/.svn/text-base/admin.py.svn-base deleted file mode 100644 index 1ff2e8549d9b145a7e3bdd5e2b495464d144f111..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/text-base/admin.py.svn-base +++ /dev/null @@ -1,107 +0,0 @@ -import socket -from django import forms -from django.utils.translation import ugettext as _ -from django.contrib.admin.widgets import FilteredSelectMultiple, AdminDateWidget -from qanda import TitleField, EditorField -from forum import settings -from forum.models.node import NodeMetaClass -from forum.models import User - -class IPListField(forms.CharField): - def clean(self, value): - ips = [ip.strip() for ip in value.strip().strip(',').split(',')] - iplist = [] - - if len(ips) < 1: - raise forms.ValidationError(_('Please input at least one ip address')) - - for ip in ips: - try: - socket.inet_aton(ip) - except socket.error: - raise forms.ValidationError(_('Invalid ip address: %s' % ip)) - - if not len(ip.split('.')) == 4: - raise forms.ValidationError(_('Please use the dotted quad notation for the ip addresses')) - - iplist.append(ip) - - return iplist - -class MaintenanceModeForm(forms.Form): - ips = IPListField(label=_('Allow ips'), - help_text=_('Comma separated list of ips allowed to access the site while in maintenance'), - required=True, - widget=forms.TextInput(attrs={'class': 'longstring'})) - - message = forms.CharField(label=_('Message'), - help_text=_('A message to display to your site visitors while in maintainance mode'), - widget=forms.Textarea) - - -TEMPLATE_CHOICES = ( -('default', _('Default')), -('sidebar', _('Default with sidebar')), -('none', _('None')), -) - -RENDER_CHOICES = ( -('markdown', _('Markdown')), -('html', _('HTML')), -('escape', _('Escaped')) -) - -class UrlFieldWidget(forms.TextInput): - def render(self, name, value, attrs=None): - if not value: - value = '' - - return """ - <input class="url_field" type="text" name="%(name)s" value="%(value)s" /> - <a class="url_field_anchor" target="_blank" href="%(app_url)s"></a> - """ % {'name': name, 'value': value, 'app_url': settings.APP_URL} - - -class PageForm(forms.Form): - def __init__(self, page, *args, **kwargs): - if page: - initial = page.extra - initial.update(dict(title=page.title, content=page.body)) - super(PageForm, self).__init__(initial=initial, *args, **kwargs) - else: - super(PageForm, self).__init__(*args, **kwargs) - - - title = forms.CharField(label=_('Title'), max_length=255, widget=forms.TextInput(attrs={'class': 'longstring'}), - initial='New page') - path = forms.CharField(label=_('Page URL'), widget=UrlFieldWidget, initial='pages/new/') - - content = forms.CharField(label=_('Page Content'), widget=forms.Textarea(attrs={'rows': 30})) - mimetype = forms.CharField(label=_('Mime Type'), initial='text/html') - - render = forms.ChoiceField(widget=forms.RadioSelect, choices=RENDER_CHOICES, initial='markdown', - label=_('Render Mode')) - - template = forms.ChoiceField(widget=forms.RadioSelect, choices=TEMPLATE_CHOICES, initial='default', - label=_('Template')) - sidebar = forms.CharField(label=_('Sidebar Content'), widget=forms.Textarea(attrs={'rows': 20}), required=False) - sidebar_wrap = forms.BooleanField(label=_("Wrap sidebar block"), initial=True, required=False) - sidebar_render = forms.ChoiceField(widget=forms.RadioSelect, choices=RENDER_CHOICES, initial='markdown', - label=_('Sidebar Render Mode')) - - comments = forms.BooleanField(label=_("Allow comments"), initial=False, required=False) - -from forum.forms.auth import SimpleRegistrationForm -from forum.forms.general import SetPasswordForm - - -class CreateUserForm(SimpleRegistrationForm, SetPasswordForm): - validate_email = forms.BooleanField(required=False, label=_('send validation email')) - - def __init__(self, *args, **kwargs): - super(CreateUserForm, self).__init__(*args, **kwargs) - self.fields.keyOrder = ['username', 'email', 'validate_email', 'password1', 'password2'] - self.fields['email'].label = _('email address') - - - diff --git a/forum/forms/.svn/text-base/auth.py.svn-base b/forum/forms/.svn/text-base/auth.py.svn-base deleted file mode 100644 index 0d07ce81ad8d2d7ea4f896a6338822d85cc7d0d4..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/text-base/auth.py.svn-base +++ /dev/null @@ -1,54 +0,0 @@ -from general import NextUrlField, UserNameField, UserEmailField, UserRealNameField, SetPasswordForm -from forum.models import Question, User -from django.contrib.contenttypes.models import ContentType -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe -from django import forms -import logging - -class SimpleRegistrationForm(forms.Form): - next = NextUrlField() - username = UserNameField() - email = UserEmailField() - real_name = UserRealNameField() - -class TemporaryLoginRequestForm(forms.Form): - def __init__(self, data=None): - super(TemporaryLoginRequestForm, self).__init__(data) - self.user_cache = None - - email = forms.EmailField( - required=True, - label=_("Your account email"), - error_messages={ - 'required': _("You cannot leave this field blank"), - 'invalid': _('please enter a valid email address'), - } - ) - - def clean_email(self): - users = list(User.objects.filter(email=self.cleaned_data['email'])) - - if not len(users): - raise forms.ValidationError(_("Sorry, but this email is not on our database.")) - - self.user_cache = users - return self.cleaned_data['email'] - -class ChangePasswordForm(SetPasswordForm): - """ change password form """ - oldpw = forms.CharField(widget=forms.PasswordInput(attrs={'class':'required'}), - label=mark_safe(_('Current password'))) - - def __init__(self, data=None, user=None, *args, **kwargs): - if user is None: - raise TypeError("Keyword argument 'user' must be supplied") - super(ChangePasswordForm, self).__init__(data, *args, **kwargs) - self.user = user - - def clean_oldpw(self): - """ test old password """ - if not self.user.check_password(self.cleaned_data['oldpw']): - raise forms.ValidationError(_("Old password is incorrect. \ - Please enter the correct password.")) - return self.cleaned_data['oldpw'] diff --git a/forum/forms/.svn/text-base/general.py.svn-base b/forum/forms/.svn/text-base/general.py.svn-base deleted file mode 100644 index 01c528bb854a7295e05e6ad6cd0523d6150358af..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/text-base/general.py.svn-base +++ /dev/null @@ -1,199 +0,0 @@ -from django import forms -import re -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe -from forum import settings -from django.http import str_to_unicode -from forum.models import User -from forum.modules import call_all_handlers -import urllib -import logging - -DEFAULT_NEXT = getattr(settings, 'APP_BASE_URL') -def clean_next(next): - if next is None: - return DEFAULT_NEXT - next = str_to_unicode(urllib.unquote(next), 'utf-8') - next = next.strip() - if next.startswith('/'): - return next - return DEFAULT_NEXT - -def get_next_url(request): - return clean_next(request.REQUEST.get('next')) - -class StrippedNonEmptyCharField(forms.CharField): - def clean(self,value): - value = value.strip() - if self.required and value == '': - raise forms.ValidationError(_('this field is required')) - return value - -class NextUrlField(forms.CharField): - def __init__(self): - super(NextUrlField,self).__init__(max_length = 255,widget = forms.HiddenInput(),required = False) - def clean(self,value): - return clean_next(value) - -login_form_widget_attrs = { 'class': 'required login' } -username_re = re.compile(r'^[\-\w\s ]+$', re.UNICODE) - -class UserNameField(StrippedNonEmptyCharField): - def __init__(self,db_model=User, db_field='username', must_exist=False,skip_clean=False,label=_('choose a username'),**kw): - self.must_exist = must_exist - self.skip_clean = skip_clean - self.db_model = db_model - self.db_field = db_field - error_messages={'required':_('user name is required'), - 'taken':_('sorry, this name is taken, please choose another'), - 'forbidden':_('sorry, this name is not allowed, please choose another'), - 'missing':_('sorry, there is no user with this name'), - 'multiple-taken':_('sorry, we have a serious error - user name is taken by several users'), - 'invalid':_('user name can only consist of letters, empty space, hyphens and underscore'), - 'toshort':_('user name is to short, please use at least %d characters') % settings.MIN_USERNAME_LENGTH - } - if 'error_messages' in kw: - error_messages.update(kw['error_messages']) - del kw['error_messages'] - super(UserNameField,self).__init__(max_length=30, - widget=forms.TextInput(attrs=login_form_widget_attrs), - label=label, - error_messages=error_messages, - **kw - ) - - def clean(self,username): - """ validate username """ - if self.skip_clean == True: - return username - if hasattr(self, 'user_instance') and isinstance(self.user_instance, User): - if username == self.user_instance.username: - return username - try: - username = super(UserNameField, self).clean(username) - except forms.ValidationError: - raise forms.ValidationError(self.error_messages['required']) - if len(username) < settings.MIN_USERNAME_LENGTH: - raise forms.ValidationError(self.error_messages['toshort']) - if self.required and not username_re.match(username): - raise forms.ValidationError(self.error_messages['invalid']) - if username in settings.RESERVED_USERNAMES: - raise forms.ValidationError(self.error_messages['forbidden']) - try: - user = self.db_model.objects.get( - **{'%s' % self.db_field : username} - ) - if user: - if self.must_exist: - return username - else: - raise forms.ValidationError(self.error_messages['taken']) - except self.db_model.DoesNotExist: - if self.must_exist: - raise forms.ValidationError(self.error_messages['missing']) - else: - return username - except self.db_model.MultipleObjectsReturned: - raise forms.ValidationError(self.error_messages['multiple-taken']) - -class UserEmailField(forms.EmailField): - def __init__(self,skip_clean=False,**kw): - self.skip_clean = skip_clean - super(UserEmailField,self).__init__(widget=forms.TextInput(attrs=dict(login_form_widget_attrs, - maxlength=200)), label=mark_safe(_('your email address')), - error_messages={'required':_('email address is required'), - 'invalid':_('please enter a valid email address'), - 'taken':_('this email is already used by someone else, please choose another'), - }, - **kw - ) - - def clean(self,email): - """ validate if email exist in database - from legacy register - return: raise error if it exist """ - email = super(UserEmailField,self).clean(email.strip()) - if self.skip_clean: - return email - if settings.EMAIL_UNIQUE == True: - try: - user = User.objects.get(email = email) - raise forms.ValidationError(self.error_messages['taken']) - except User.DoesNotExist: - return email - except User.MultipleObjectsReturned: - raise forms.ValidationError(self.error_messages['taken']) - else: - return email - -class UserRealNameField(StrippedNonEmptyCharField): - def __init__(self, db_model=User, db_field='real_name', must_exist=True, skip_clean=False, label=_('Your real name'),**kw): - self.must_exist = must_exist - self.skip_clean = skip_clean - self.db_model = db_model - self.db_field = db_field - error_messages={'required':_('Real name is required') - } - if 'error_messages' in kw: - error_messages.update(kw['error_messages']) - del kw['error_messages'] - super(UserRealNameField,self).__init__(max_length=100, - widget=forms.TextInput(attrs=login_form_widget_attrs), - label=label, - error_messages=error_messages, - **kw - ) - - def clean(self, real_name): - if self.skip_clean == True: - return real_name - try: - return super(UserRealNameField, self).clean(real_name) - except forms.ValidationError: - raise forms.ValidationError(self.error_messages['required']) - -class SetPasswordForm(forms.Form): - password1 = forms.CharField(widget=forms.PasswordInput(attrs=login_form_widget_attrs), - label=_('choose password'), - error_messages={'required':_('password is required')}, - ) - password2 = forms.CharField(widget=forms.PasswordInput(attrs=login_form_widget_attrs), - label=mark_safe(_('retype password')), - error_messages={'required':_('please, retype your password'), - 'nomatch':_('sorry, entered passwords did not match, please try again')}, - ) - - def __init__(self, data=None, user=None, *args, **kwargs): - super(SetPasswordForm, self).__init__(data, *args, **kwargs) - - def clean_password2(self): - """ - Validates that the two password inputs match. - - """ - if 'password1' in self.cleaned_data: - if self.cleaned_data['password1'] == self.cleaned_data['password2']: - self.password = self.cleaned_data['password2'] - self.cleaned_data['password'] = self.cleaned_data['password2'] - return self.cleaned_data['password2'] - else: - del self.cleaned_data['password2'] - raise forms.ValidationError(self.fields['password2'].error_messages['nomatch']) - else: - return self.cleaned_data['password2'] - -class SimpleCaptchaForm(forms.Form): - fields = {} - - def __init__(self, *args, **kwargs): - super(SimpleCaptchaForm, self).__init__(*args, **kwargs) - - spam_fields = call_all_handlers('create_anti_spam_field') - if spam_fields: - spam_fields = dict(spam_fields) - for name, field in spam_fields.items(): - self.fields[name] = field - - self._anti_spam_fields = spam_fields.keys() - else: - self._anti_spam_fields = [] diff --git a/forum/forms/.svn/text-base/qanda.py.svn-base b/forum/forms/.svn/text-base/qanda.py.svn-base deleted file mode 100644 index d2cc837c701af8710c9788808c87b51638b83b2a..0000000000000000000000000000000000000000 --- a/forum/forms/.svn/text-base/qanda.py.svn-base +++ /dev/null @@ -1,362 +0,0 @@ -import re -from datetime import date -from django import forms -from forum.models import * -from django.utils.translation import ugettext as _ - -from django.utils.encoding import smart_unicode -from general import NextUrlField, UserNameField - -from forum import settings, REQUEST_HOLDER - -from forum.modules import call_all_handlers - -import logging - -class TitleField(forms.CharField): - def __init__(self, *args, **kwargs): - super(TitleField, self).__init__(*args, **kwargs) - - self.required = True - self.max_length = 255 - self.widget = forms.TextInput(attrs={'size' : 70, 'autocomplete' : 'off', 'maxlength' : self.max_length}) - self.label = _('title') - self.help_text = _('please enter a descriptive title for your question') - self.initial = '' - - def clean(self, value): - super(TitleField, self).clean(value) - - if len(value) < settings.FORM_MIN_QUESTION_TITLE: - raise forms.ValidationError(_('title must be must be at least %s characters') % settings.FORM_MIN_QUESTION_TITLE) - - return value - -class EditorField(forms.CharField): - def __init__(self, *args, **kwargs): - super(EditorField, self).__init__(*args, **kwargs) - - self.widget = forms.Textarea(attrs={'id':'editor'}) - self.label = _('content') - self.help_text = u'' - self.initial = '' - - -class QuestionEditorField(EditorField): - def __init__(self, *args, **kwargs): - super(QuestionEditorField, self).__init__(*args, **kwargs) - self.required = not bool(settings.FORM_EMPTY_QUESTION_BODY) - - - def clean(self, value): - super(QuestionEditorField, self).clean(value) - - if not bool(settings.FORM_EMPTY_QUESTION_BODY) and (len(re.sub('[ ]{2,}', ' ', value)) < settings.FORM_MIN_QUESTION_BODY): - raise forms.ValidationError(_('question content must be at least %s characters') % settings.FORM_MIN_QUESTION_BODY) - - return value - -class AnswerEditorField(EditorField): - def __init__(self, *args, **kwargs): - super(AnswerEditorField, self).__init__(*args, **kwargs) - self.required = True - - def clean(self, value): - super(AnswerEditorField, self).clean(value) - - if len(re.sub('[ ]{2,}', ' ', value)) < settings.FORM_MIN_QUESTION_BODY: - raise forms.ValidationError(_('answer content must be at least %s characters') % settings.FORM_MIN_QUESTION_BODY) - - return value - - -class TagNamesField(forms.CharField): - def __init__(self, user=None, *args, **kwargs): - super(TagNamesField, self).__init__(*args, **kwargs) - - self.required = True - self.widget = forms.TextInput(attrs={'size' : 50, 'autocomplete' : 'off'}) - self.max_length = 255 - self.label = _('tags') - #self.help_text = _('please use space to separate tags (this enables autocomplete feature)') - self.help_text = _('Tags are short keywords, with no spaces within. At least %(min)s and up to %(max)s tags can be used.') % { - 'min': settings.FORM_MIN_NUMBER_OF_TAGS, 'max': settings.FORM_MAX_NUMBER_OF_TAGS - } - self.initial = '' - self.user = user - - def clean(self, value): - super(TagNamesField, self).clean(value) - - value = super(TagNamesField, self).clean(value) - data = value.strip().lower() - - split_re = re.compile(r'[ ,]+') - list = {} - for tag in split_re.split(data): - list[tag] = tag - - if len(list) > settings.FORM_MAX_NUMBER_OF_TAGS or len(list) < settings.FORM_MIN_NUMBER_OF_TAGS: - raise forms.ValidationError(_('please use between %(min)s and %(max)s tags') % { 'min': settings.FORM_MIN_NUMBER_OF_TAGS, 'max': settings.FORM_MAX_NUMBER_OF_TAGS}) - - list_temp = [] - tagname_re = re.compile(r'^[\w+#\.-]+$', re.UNICODE) - for key,tag in list.items(): - if len(tag) > settings.FORM_MAX_LENGTH_OF_TAG or len(tag) < settings.FORM_MIN_LENGTH_OF_TAG: - raise forms.ValidationError(_('please use between %(min)s and %(max)s characters in you tags') % { 'min': settings.FORM_MIN_LENGTH_OF_TAG, 'max': settings.FORM_MAX_LENGTH_OF_TAG}) - if not tagname_re.match(tag): - raise forms.ValidationError(_('please use following characters in tags: letters , numbers, and characters \'.#-_\'')) - # only keep one same tag - if tag not in list_temp and len(tag.strip()) > 0: - list_temp.append(tag) - - if settings.LIMIT_TAG_CREATION and not self.user.can_create_tags(): - existent = Tag.objects.filter(name__in=list_temp).values_list('name', flat=True) - - if len(existent) < len(list_temp): - unexistent = [n for n in list_temp if not n in existent] - raise forms.ValidationError(_("You don't have enough reputation to create new tags. The following tags do not exist yet: %s") % - ', '.join(unexistent)) - - - return u' '.join(list_temp) - -class WikiField(forms.BooleanField): - def __init__(self, disabled=False, *args, **kwargs): - super(WikiField, self).__init__(*args, **kwargs) - self.required = False - self.label = _('community wiki') - self.help_text = _('if you choose community wiki option, the question and answer do not generate points and name of author will not be shown') - if disabled: - self.widget=forms.CheckboxInput(attrs={'disabled': "disabled"}) - def clean(self,value): - return value - -class EmailNotifyField(forms.BooleanField): - def __init__(self, *args, **kwargs): - super(EmailNotifyField, self).__init__(*args, **kwargs) - self.required = False - self.widget.attrs['class'] = 'nomargin' - -class SummaryField(forms.CharField): - def __init__(self, *args, **kwargs): - super(SummaryField, self).__init__(*args, **kwargs) - self.required = False - self.widget = forms.TextInput(attrs={'size' : 50, 'autocomplete' : 'off'}) - self.max_length = 300 - self.label = _('update summary:') - self.help_text = _('enter a brief summary of your revision (e.g. fixed spelling, grammar, improved style, this field is optional)') - - -class FeedbackForm(forms.Form): - message = forms.CharField(label=_('Your message:'), max_length=800,widget=forms.Textarea(attrs={'cols':60})) - next = NextUrlField() - - def __init__(self, user, *args, **kwargs): - super(FeedbackForm, self).__init__(*args, **kwargs) - if not user.is_authenticated(): - self.fields['name'] = forms.CharField(label=_('Your name:'), required=False) - self.fields['email'] = forms.EmailField(label=_('Email (not shared with anyone):'), required=True) - - # Create anti spam fields - spam_fields = call_all_handlers('create_anti_spam_field') - if spam_fields: - spam_fields = dict(spam_fields) - for name, field in spam_fields.items(): - self.fields[name] = field - - self._anti_spam_fields = spam_fields.keys() - else: - self._anti_spam_fields = [] - - - -class AskForm(forms.Form): - title = TitleField() - text = QuestionEditorField() - - def __init__(self, data=None, user=None, *args, **kwargs): - super(AskForm, self).__init__(data, *args, **kwargs) - - self.fields['tags'] = TagNamesField(user) - - if not user.is_authenticated() or (int(user.reputation) < settings.CAPTCHA_IF_REP_LESS_THAN and not (user.is_superuser or user.is_staff)): - spam_fields = call_all_handlers('create_anti_spam_field') - if spam_fields: - spam_fields = dict(spam_fields) - for name, field in spam_fields.items(): - self.fields[name] = field - - self._anti_spam_fields = spam_fields.keys() - else: - self._anti_spam_fields = [] - - if settings.WIKI_ON: - self.fields['wiki'] = WikiField() - -class AnswerForm(forms.Form): - text = AnswerEditorField() - wiki = WikiField() - - def __init__(self, data=None, user=None, *args, **kwargs): - super(AnswerForm, self).__init__(data, *args, **kwargs) - - if not user.is_authenticated() or (int(user.reputation) < settings.CAPTCHA_IF_REP_LESS_THAN and not (user.is_superuser or user.is_staff)): - spam_fields = call_all_handlers('create_anti_spam_field') - if spam_fields: - spam_fields = dict(spam_fields) - for name, field in spam_fields.items(): - self.fields[name] = field - - self._anti_spam_fields = spam_fields.keys() - else: - self._anti_spam_fields = [] - - if settings.WIKI_ON: - self.fields['wiki'] = WikiField() - -class RetagQuestionForm(forms.Form): - tags = TagNamesField() - # initialize the default values - def __init__(self, question, *args, **kwargs): - super(RetagQuestionForm, self).__init__(*args, **kwargs) - self.fields['tags'].initial = question.tagnames - -class RevisionForm(forms.Form): - """ - Lists revisions of a Question or Answer - """ - revision = forms.ChoiceField(widget=forms.Select(attrs={'style' : 'width:520px'})) - - def __init__(self, post, *args, **kwargs): - super(RevisionForm, self).__init__(*args, **kwargs) - - revisions = post.revisions.all().values_list('revision', 'author__username', 'revised_at', 'summary').order_by('-revised_at') - - date_format = '%c' - self.fields['revision'].choices = [ - (r[0], u'%s - %s (%s) %s' % (r[0], smart_unicode(r[1]), r[2].strftime(date_format), r[3])) - for r in revisions] - - self.fields['revision'].initial = post.active_revision.revision - -class EditQuestionForm(forms.Form): - title = TitleField() - text = QuestionEditorField() - summary = SummaryField() - - def __init__(self, question, user, revision=None, *args, **kwargs): - super(EditQuestionForm, self).__init__(*args, **kwargs) - - if revision is None: - revision = question.active_revision - - self.fields['title'].initial = revision.title - self.fields['text'].initial = revision.body - - self.fields['tags'] = TagNamesField(user) - self.fields['tags'].initial = revision.tagnames - - if not user.is_authenticated() or (int(user.reputation) < settings.CAPTCHA_IF_REP_LESS_THAN and not (user.is_superuser or user.is_staff)): - spam_fields = call_all_handlers('create_anti_spam_field') - if spam_fields: - spam_fields = dict(spam_fields) - for name, field in spam_fields.items(): - self.fields[name] = field - - self._anti_spam_fields = spam_fields.keys() - else: - self._anti_spam_fields = [] - - if settings.WIKI_ON: - self.fields['wiki'] = WikiField(disabled=(question.nis.wiki and not user.can_cancel_wiki(question)), initial=question.nis.wiki) - -class EditAnswerForm(forms.Form): - text = AnswerEditorField() - summary = SummaryField() - - def __init__(self, answer, user, revision=None, *args, **kwargs): - super(EditAnswerForm, self).__init__(*args, **kwargs) - - if revision is None: - revision = answer.active_revision - - self.fields['text'].initial = revision.body - - if not user.is_authenticated() or (int(user.reputation) < settings.CAPTCHA_IF_REP_LESS_THAN and not (user.is_superuser or user.is_staff)): - spam_fields = call_all_handlers('create_anti_spam_field') - if spam_fields: - spam_fields = dict(spam_fields) - for name, field in spam_fields.items(): - self.fields[name] = field - - self._anti_spam_fields = spam_fields.keys() - else: - self._anti_spam_fields = [] - - if settings.WIKI_ON: - self.fields['wiki'] = WikiField(disabled=(answer.nis.wiki and not user.can_cancel_wiki(answer)), initial=answer.nis.wiki) - -class EditUserForm(forms.Form): - email = forms.EmailField(label=u'Email', help_text=_('this email does not have to be linked to gravatar'), required=True, max_length=75, widget=forms.TextInput(attrs={'size' : 35})) - realname = forms.CharField(label=_('Real name'), required=False, max_length=255, widget=forms.TextInput(attrs={'size' : 35})) - website = forms.URLField(label=_('Website'), required=False, max_length=255, widget=forms.TextInput(attrs={'size' : 35})) - city = forms.CharField(label=_('Location'), required=False, max_length=255, widget=forms.TextInput(attrs={'size' : 35})) - birthday = forms.DateField(label=_('Date of birth'), help_text=_('will not be shown, used to calculate age, format: YYYY-MM-DD'), required=False, widget=forms.TextInput(attrs={'size' : 35})) - about = forms.CharField(label=_('Profile'), required=False, widget=forms.Textarea(attrs={'cols' : 60})) - - def __init__(self, user, *args, **kwargs): - super(EditUserForm, self).__init__(*args, **kwargs) - if settings.EDITABLE_SCREEN_NAME or (REQUEST_HOLDER.request.user.is_authenticated() and REQUEST_HOLDER.request.user.is_superuser): - self.fields['username'] = UserNameField(label=_('Screen name')) - self.fields['username'].initial = user.username - self.fields['username'].user_instance = user - self.fields['email'].initial = user.email - self.fields['realname'].initial = user.real_name - self.fields['website'].initial = user.website - self.fields['city'].initial = user.location - - if user.date_of_birth is not None: - self.fields['birthday'].initial = user.date_of_birth - - self.fields['about'].initial = user.about - self.user = user - - def clean_email(self): - if self.user.email != self.cleaned_data['email']: - if settings.EMAIL_UNIQUE: - if 'email' in self.cleaned_data: - from forum.models import User - try: - User.objects.get(email = self.cleaned_data['email']) - except User.DoesNotExist: - return self.cleaned_data['email'] - except User.MultipleObjectsReturned: - logging.error("Found multiple users sharing the same email: %s" % self.cleaned_data['email']) - - raise forms.ValidationError(_('this email has already been registered, please use another one')) - return self.cleaned_data['email'] - - -NOTIFICATION_CHOICES = ( - ('i', _('Instantly')), - #('d', _('Daily')), - #('w', _('Weekly')), - ('n', _('No notifications')), -) - -class SubscriptionSettingsForm(forms.ModelForm): - enable_notifications = forms.BooleanField(widget=forms.HiddenInput, required=False) - member_joins = forms.ChoiceField(widget=forms.RadioSelect, choices=NOTIFICATION_CHOICES) - new_question = forms.ChoiceField(widget=forms.RadioSelect, choices=NOTIFICATION_CHOICES) - new_question_watched_tags = forms.ChoiceField(widget=forms.RadioSelect, choices=NOTIFICATION_CHOICES) - subscribed_questions = forms.ChoiceField(widget=forms.RadioSelect, choices=NOTIFICATION_CHOICES) - - class Meta: - model = SubscriptionSettings - -class UserPreferencesForm(forms.Form): - sticky_sorts = forms.BooleanField(required=False, initial=False) - - - diff --git a/forum/management/.svn/all-wcprops b/forum/management/.svn/all-wcprops deleted file mode 100644 index 6fe5a08d4b4047fe966ee3748491a3ecbeff8e8e..0000000000000000000000000000000000000000 --- a/forum/management/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/1220/osqa/trunk/forum/management -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1220/osqa/trunk/forum/management/__init__.py -END diff --git a/forum/management/.svn/entries b/forum/management/.svn/entries deleted file mode 100644 index 96f79b02156e381079d66a9a14603c00fcb418b0..0000000000000000000000000000000000000000 --- a/forum/management/.svn/entries +++ /dev/null @@ -1,65 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/management -http://svn.osqa.net/svnroot - - - -2012-01-14T17:56:15.940019Z -1220 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -commands -dir - -__init__.py -file - - - - -2012-06-22T20:34:47.821868Z -db7b572e9211189d36622cc42c4e7ab6 -2012-01-14T17:56:15.940019Z -1220 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -79 - diff --git a/forum/management/.svn/prop-base/__init__.py.svn-base b/forum/management/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/.svn/text-base/__init__.py.svn-base b/forum/management/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 6a3ce4ac722bdfdeecb7ba900a7cb0c3f733009c..0000000000000000000000000000000000000000 --- a/forum/management/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,3 +0,0 @@ -from forum.modules import get_modules_script - -get_modules_script('management') diff --git a/forum/management/commands/.svn/all-wcprops b/forum/management/commands/.svn/all-wcprops deleted file mode 100644 index 6e3221969249c47ad1c6a34e696dbc6c08a5718f..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/all-wcprops +++ /dev/null @@ -1,77 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1199/osqa/trunk/forum/management/commands -END -create_extended_user.py -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/1079/osqa/trunk/forum/management/commands/create_extended_user.py -END -message_to_everyone.py -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/message_to_everyone.py -END -module_command.py -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/module_command.py -END -checkinstall.py -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/checkinstall.py -END -render_bodies.py -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/1199/osqa/trunk/forum/management/commands/render_bodies.py -END -maintaindb.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1153/osqa/trunk/forum/management/commands/maintaindb.py -END -base_command.py -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/base_command.py -END -create_subscriptions.py -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/create_subscriptions.py -END -send_email_alerts.py -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1108/osqa/trunk/forum/management/commands/send_email_alerts.py -END -test_ui.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/test_ui.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/__init__.py -END -sample_command.py -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1077/osqa/trunk/forum/management/commands/sample_command.py -END diff --git a/forum/management/commands/.svn/entries b/forum/management/commands/.svn/entries deleted file mode 100644 index 93b9df4300856c1cf7a1e95e92ca73c7422d9960..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/entries +++ /dev/null @@ -1,436 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/management/commands -http://svn.osqa.net/svnroot - - - -2011-11-01T17:23:35.858149Z -1199 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -test_ui.py -file - - - - -2012-06-22T20:34:47.801878Z -6e5d2f1806824d3d22132ca643fe9938 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1540 - -__init__.py -file - - - - -2012-06-22T20:34:47.805876Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -sample_command.py -file - - - - -2012-06-22T20:34:47.805876Z -6e4a059bdd6d44ff3df41ae29b5ed0fb -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -213 - -create_extended_user.py -file - - - - -2012-06-22T20:34:47.805876Z -9478a075102487863d8094028ed69a18 -2011-06-25T15:13:15.337221Z -1079 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -19305 - -message_to_everyone.py -file - - - - -2012-06-22T20:34:47.809874Z -3cfb5d0fbd8e367a73f990b305880764 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -413 - -module_command.py -file - - - - -2012-06-22T20:34:47.809874Z -f2ab6e47c0bef107638458a0a0cda1d7 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -392 - -checkinstall.py -file - - - - -2012-06-22T20:34:47.809874Z -b2da10e1c026673dc76dfebb062e4d12 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3457 - -render_bodies.py -file - - - - -2012-06-22T20:34:47.809874Z -13989cd719ce978f3150037204d92493 -2011-11-01T17:23:35.858149Z -1199 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -474 - -maintaindb.py -file - - - - -2012-06-22T20:34:47.817870Z -9ed3eb5bbd8013df5aa82e6054171965 -2011-08-02T16:55:10.337908Z -1153 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2988 - -base_command.py -file - - - - -2012-06-22T20:34:47.801878Z -76c541a16334235e74f40e71fb26e384 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1150 - -create_subscriptions.py -file - - - - -2012-06-22T20:34:47.801878Z -919431b4dfe1637496682d9f15caed08 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -499 - -send_email_alerts.py -file - - - - -2012-06-22T20:34:47.801878Z -8050ef46ae91e7a5c7d81edab02ea6f4 -2011-07-07T01:07:57.825865Z -1108 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4690 - diff --git a/forum/management/commands/.svn/prop-base/__init__.py.svn-base b/forum/management/commands/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/base_command.py.svn-base b/forum/management/commands/.svn/prop-base/base_command.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/base_command.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/checkinstall.py.svn-base b/forum/management/commands/.svn/prop-base/checkinstall.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/checkinstall.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/create_extended_user.py.svn-base b/forum/management/commands/.svn/prop-base/create_extended_user.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/create_extended_user.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/create_subscriptions.py.svn-base b/forum/management/commands/.svn/prop-base/create_subscriptions.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/create_subscriptions.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/maintaindb.py.svn-base b/forum/management/commands/.svn/prop-base/maintaindb.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/maintaindb.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/message_to_everyone.py.svn-base b/forum/management/commands/.svn/prop-base/message_to_everyone.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/message_to_everyone.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/module_command.py.svn-base b/forum/management/commands/.svn/prop-base/module_command.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/module_command.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/render_bodies.py.svn-base b/forum/management/commands/.svn/prop-base/render_bodies.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/render_bodies.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/sample_command.py.svn-base b/forum/management/commands/.svn/prop-base/sample_command.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/sample_command.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/send_email_alerts.py.svn-base b/forum/management/commands/.svn/prop-base/send_email_alerts.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/send_email_alerts.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/prop-base/test_ui.py.svn-base b/forum/management/commands/.svn/prop-base/test_ui.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/prop-base/test_ui.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/management/commands/.svn/text-base/__init__.py.svn-base b/forum/management/commands/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum/management/commands/.svn/text-base/base_command.py.svn-base b/forum/management/commands/.svn/text-base/base_command.py.svn-base deleted file mode 100644 index 4a8a4b60f3b778bbafbad0df824089f2b479cdae..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/base_command.py.svn-base +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python -#encoding:utf-8 -#------------------------------------------------------------------------------- -# Name: Award badges command -# Purpose: This is a command file croning in background process regularly to -# query database and award badges for user's special acitivities. -# -# Author: Mike, Sailing -# -# Created: 22/01/2009 -# Copyright: (c) Mike 2009 -# Licence: GPL V2 -#------------------------------------------------------------------------------- - -from datetime import datetime, date -from django.core.management.base import NoArgsCommand -from django.db import connection -from django.shortcuts import get_object_or_404 -from django.contrib.contenttypes.models import ContentType - -from forum.models import * - -class BaseCommand(NoArgsCommand): - def update_activities_auditted(self, cursor, activity_ids): - # update processed rows to auditted - if len(activity_ids): - query = "UPDATE activity SET is_auditted = 1 WHERE id in (%s)"\ - % ','.join('%s' % item for item in activity_ids) - cursor.execute(query) - - - - - diff --git a/forum/management/commands/.svn/text-base/checkinstall.py.svn-base b/forum/management/commands/.svn/text-base/checkinstall.py.svn-base deleted file mode 100644 index 6e37d11123cbbc2c4abbacf8407316d36f9ac4b5..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/checkinstall.py.svn-base +++ /dev/null @@ -1,85 +0,0 @@ -import re -import sys, traceback -from django.core.management.base import NoArgsCommand - -OK_MESSAGE = " Found %(what)s version %(version)s - OK" - -OLD_VERSION_ERROR = """ ERROR: Found %(what)s version %(version)s - you should upgrade it to at least %(minimum)s. - Package installers like apt-get or yum usually maintain old versions of libraries in the repositories.""" - -NOT_FOUND_ERROR = "ERROR: %(what)s was not found on your system." - -HOW_TO_INSTALL = """ Try easy_install %(what)s or download it from %(where)s""" - -IMPORT_ERROR_MESSAGE = """Importing %(what)s is throwing an exception. Here's the full stack trace:""" - -class Command(NoArgsCommand): - def handle_noargs(self, **options): - print "Checking dependencies:" - - try: - import html5lib - print " Found html5lib - OK" - except ImportError: - print NOT_FOUND_ERROR % dict(what='html5lib') - print HOW_TO_INSTALL % dict(what='html5lib', where='http://code.google.com/p/html5lib/') - except Exception, e: - print IMPORT_ERROR_MESSAGE % dict(what='html5lib') - traceback.print_exc(file=sys.stdout) - - try: - import markdown - version = int(re.findall('^\d+', markdown.version)[0]) - if version < 2: - print OLD_VERSION_ERROR % dict(what='markdown', version=markdown.version, minimum='2.0') - print HOW_TO_INSTALL % dict(what='markdown', where='http://www.freewisdom.org/projects/python-markdown/') - else: - print OK_MESSAGE % dict(what='markdown', version=markdown.version) - except ImportError: - print NOT_FOUND_ERROR % dict(what='markdown') - print HOW_TO_INSTALL % dict(what='markdown', where='http://www.freewisdom.org/projects/python-markdown/') - except Exception, e: - print IMPORT_ERROR_MESSAGE % dict(what='markdown') - traceback.print_exc(file=sys.stdout) - - try: - import south - version = re.findall('\d+', south.__version__) - - if int(version[1]) < 6 and int(version[0]) == 0: - print OLD_VERSION_ERROR % dict(what='south', version=south.__version__, minimum='0.6') - print HOW_TO_INSTALL % dict(what='south', where='http://south.aeracode.org/') - else: - print OK_MESSAGE % dict(what='south', version=south.__version__) - - - except ImportError: - print NOT_FOUND_ERROR % dict(what='south') - print HOW_TO_INSTALL % dict(what='south', where='http://south.aeracode.org/') - except Exception, e: - print IMPORT_ERROR_MESSAGE % dict(what='south') - traceback.print_exc(file=sys.stdout) - - - print "\n\nChecking database connection:" - - try: - from forum.models import User - User.objects.all().count() - print " Connection OK" - except Exception, e: - print "There seems to be a problem with your database: %s" % str(e) - - - - from django.conf import settings - - print "\n\nChecking important settings:" - - if not re.match('^https?:\/\/\w+', settings.APP_URL): - print " Your APP_URL does not seem to be a valid url. Please fill this setting with the URL of your OSQA installation" - else: - print " APP_URL - %s" % settings.APP_URL - print " APP_BASE_URL - %s" % settings.APP_BASE_URL - - diff --git a/forum/management/commands/.svn/text-base/create_extended_user.py.svn-base b/forum/management/commands/.svn/text-base/create_extended_user.py.svn-base deleted file mode 100644 index 768e18d007df670835c04edd0b15dea4891d9ab0..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/create_extended_user.py.svn-base +++ /dev/null @@ -1,288 +0,0 @@ -from forum.base import get_database_engine - -database_type = get_database_engine() - -PG_MIGRATION_QUERY = """ -SELECT id AS user_ptr_id, is_approved, email_isvalid, email_key, reputation, gravatar, gold, silver, bronze, questions_per_page, last_seen, real_name, website, location, date_of_birth, about, hide_ignored_questions, tag_filter_setting INTO forum_user FROM auth_user; - -ALTER TABLE forum_user - ADD CONSTRAINT forum_user_pkey PRIMARY KEY(user_ptr_id); - -ALTER TABLE forum_user - ADD CONSTRAINT forum_user_user_ptr_id_fkey FOREIGN KEY (user_ptr_id) - REFERENCES auth_user (id) MATCH SIMPLE - ON UPDATE NO ACTION ON DELETE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE forum_user - ADD CONSTRAINT forum_user_reputation_check CHECK (reputation >= 0); - -ALTER TABLE auth_user DROP COLUMN is_approved; -ALTER TABLE auth_user DROP COLUMN email_isvalid; -ALTER TABLE auth_user DROP COLUMN email_key; -ALTER TABLE auth_user DROP COLUMN reputation; -ALTER TABLE auth_user DROP COLUMN gravatar; -ALTER TABLE auth_user DROP COLUMN gold; -ALTER TABLE auth_user DROP COLUMN silver; -ALTER TABLE auth_user DROP COLUMN bronze; -ALTER TABLE auth_user DROP COLUMN questions_per_page; -ALTER TABLE auth_user DROP COLUMN last_seen; -ALTER TABLE auth_user DROP COLUMN real_name; -ALTER TABLE auth_user DROP COLUMN website; -ALTER TABLE auth_user DROP COLUMN "location"; -ALTER TABLE auth_user DROP COLUMN date_of_birth; -ALTER TABLE auth_user DROP COLUMN about; -ALTER TABLE auth_user DROP COLUMN hide_ignored_questions; -ALTER TABLE auth_user DROP COLUMN tag_filter_setting; - -""" - -PG_FKEYS_QUERY = """ - -ALTER TABLE "public"."activity" -DROP CONSTRAINT "activity_user_id_fkey", -ADD CONSTRAINT "activity_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."answer" -DROP CONSTRAINT "answer_author_id_fkey", -ADD CONSTRAINT "answer_author_id_fkey" FOREIGN KEY ("author_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "answer_deleted_by_id_fkey", -ADD CONSTRAINT "answer_deleted_by_id_fkey" FOREIGN KEY ("deleted_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "answer_last_edited_by_id_fkey", -ADD CONSTRAINT "answer_last_edited_by_id_fkey" FOREIGN KEY ("last_edited_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "answer_locked_by_id_fkey", -ADD CONSTRAINT "answer_locked_by_id_fkey" FOREIGN KEY ("locked_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."answer_revision" -DROP CONSTRAINT "answer_revision_author_id_fkey", -ADD CONSTRAINT "answer_revision_author_id_fkey" FOREIGN KEY ("author_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."award" -DROP CONSTRAINT "award_user_id_fkey", -ADD CONSTRAINT "award_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."comment" -DROP CONSTRAINT "comment_user_id_fkey", -ADD CONSTRAINT "comment_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."favorite_question" -DROP CONSTRAINT "favorite_question_user_id_fkey", -ADD CONSTRAINT "favorite_question_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."flagged_item" -DROP CONSTRAINT "flagged_item_user_id_fkey", -ADD CONSTRAINT "flagged_item_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."forum_anonymousanswer" -DROP CONSTRAINT "forum_anonymousanswer_author_id_fkey", -ADD CONSTRAINT "forum_anonymousanswer_author_id_fkey" FOREIGN KEY ("author_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."forum_anonymousquestion" -DROP CONSTRAINT "forum_anonymousquestion_author_id_fkey", -ADD CONSTRAINT "forum_anonymousquestion_author_id_fkey" FOREIGN KEY ("author_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."forum_authkeyuserassociation" -DROP CONSTRAINT "forum_authkeyuserassociation_user_id_fkey", -ADD CONSTRAINT "forum_authkeyuserassociation_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."forum_markedtag" -DROP CONSTRAINT "forum_markedtag_user_id_fkey", -ADD CONSTRAINT "forum_markedtag_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."forum_questionsubscription" -DROP CONSTRAINT "forum_questionsubscription_user_id_fkey", -ADD CONSTRAINT "forum_questionsubscription_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."forum_subscriptionsettings" -DROP CONSTRAINT "forum_subscriptionsettings_user_id_fkey", -ADD CONSTRAINT "forum_subscriptionsettings_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."forum_validationhash" -DROP CONSTRAINT "forum_validationhash_user_id_fkey", -ADD CONSTRAINT "forum_validationhash_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."question" -DROP CONSTRAINT "question_author_id_fkey", -ADD CONSTRAINT "question_author_id_fkey" FOREIGN KEY ("author_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "question_closed_by_id_fkey", -ADD CONSTRAINT "question_closed_by_id_fkey" FOREIGN KEY ("closed_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "question_deleted_by_id_fkey", -ADD CONSTRAINT "question_deleted_by_id_fkey" FOREIGN KEY ("deleted_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "question_last_activity_by_id_fkey", -ADD CONSTRAINT "question_last_activity_by_id_fkey" FOREIGN KEY ("last_activity_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "question_last_edited_by_id_fkey", -ADD CONSTRAINT "question_last_edited_by_id_fkey" FOREIGN KEY ("last_edited_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "question_locked_by_id_fkey", -ADD CONSTRAINT "question_locked_by_id_fkey" FOREIGN KEY ("locked_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."question_followed_by" -DROP CONSTRAINT "question_followed_by_user_id_fkey", -ADD CONSTRAINT "question_followed_by_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."question_revision" -DROP CONSTRAINT "question_revision_author_id_fkey", -ADD CONSTRAINT "question_revision_author_id_fkey" FOREIGN KEY ("author_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."repute" -DROP CONSTRAINT "repute_user_id_fkey", -ADD CONSTRAINT "repute_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."tag" -DROP CONSTRAINT "tag_created_by_id_fkey", -ADD CONSTRAINT "tag_created_by_id_fkey" FOREIGN KEY ("created_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED, -DROP CONSTRAINT "tag_deleted_by_id_fkey", -ADD CONSTRAINT "tag_deleted_by_id_fkey" FOREIGN KEY ("deleted_by_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -ALTER TABLE "public"."vote" -DROP CONSTRAINT "vote_user_id_fkey", -ADD CONSTRAINT "vote_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "public"."forum_user" (user_ptr_id) ON DELETE NO ACTION ON UPDATE NO ACTION DEFERRABLE INITIALLY DEFERRED; - -""" - -MYSQL_MIGRATION_QUERY = """ -CREATE TABLE `forum_user` ( - `user_ptr_id` int(11) NOT NULL, - `is_approved` tinyint(1) NOT NULL, - `email_isvalid` tinyint(1) NOT NULL, - `email_key` varchar(32) DEFAULT NULL, - `reputation` int(10) unsigned NOT NULL, - `gravatar` varchar(32) NOT NULL, - `gold` smallint(6) NOT NULL, - `silver` smallint(6) NOT NULL, - `bronze` smallint(6) NOT NULL, - `questions_per_page` smallint(6) NOT NULL, - `last_seen` datetime NOT NULL, - `real_name` varchar(100) NOT NULL, - `website` varchar(200) NOT NULL, - `location` varchar(100) NOT NULL, - `date_of_birth` date DEFAULT NULL, - `about` longtext NOT NULL, - `hide_ignored_questions` tinyint(1) NOT NULL, - `tag_filter_setting` varchar(16) NOT NULL, - PRIMARY KEY (`user_ptr_id`), - CONSTRAINT `user_ptr_id_refs_id_71071d7` FOREIGN KEY (`user_ptr_id`) REFERENCES `auth_user` (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 -SELECT id AS user_ptr_id, is_approved, email_isvalid, email_key, reputation, gravatar, gold, silver, bronze, questions_per_page, - last_seen, real_name, website, location, date_of_birth, about, hide_ignored_questions, tag_filter_setting FROM auth_user; - -ALTER TABLE `auth_user` -DROP COLUMN `is_approved`, -DROP COLUMN `email_isvalid`, -DROP COLUMN `email_key`, -DROP COLUMN `reputation`, -DROP COLUMN `gravatar`, -DROP COLUMN `gold`, -DROP COLUMN `silver`, -DROP COLUMN `bronze`, -DROP COLUMN `questions_per_page`, -DROP COLUMN `last_seen`, -DROP COLUMN `real_name`, -DROP COLUMN `website`, -DROP COLUMN `location`, -DROP COLUMN `date_of_birth`, -DROP COLUMN `about`, -DROP COLUMN `hide_ignored_questions`, -DROP COLUMN `tag_filter_setting`; - -""" - -MYSQL_FKEYS_QUERY = """ - -ALTER TABLE `activity` DROP FOREIGN KEY `user_id_refs_id_47c8583f`; -ALTER TABLE `activity` ADD CONSTRAINT `user_id_refs_user_ptr_id_62ae9785` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `answer` DROP FOREIGN KEY `author_id_refs_id_192b0170`; -ALTER TABLE `answer` ADD CONSTRAINT `author_id_refs_user_ptr_id_9681994` FOREIGN KEY (`author_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `answer` DROP FOREIGN KEY `deleted_by_id_refs_id_192b0170`; -ALTER TABLE `answer` ADD CONSTRAINT `deleted_by_id_refs_user_ptr_id_9681994` FOREIGN KEY (`deleted_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `answer` DROP FOREIGN KEY `last_edited_by_id_refs_id_192b0170`; -ALTER TABLE `answer` ADD CONSTRAINT `last_edited_by_id_refs_user_ptr_id_9681994` FOREIGN KEY (`last_edited_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `answer` DROP FOREIGN KEY `locked_by_id_refs_id_192b0170`; -ALTER TABLE `answer` ADD CONSTRAINT `locked_by_id_refs_user_ptr_id_9681994` FOREIGN KEY (`locked_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `answer_revision` DROP FOREIGN KEY `author_id_refs_id_3ccc055f`; -ALTER TABLE `answer_revision` ADD CONSTRAINT `author_id_refs_user_ptr_id_331f0123` FOREIGN KEY (`author_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `award` DROP FOREIGN KEY `user_id_refs_id_2d83e9b6`; -ALTER TABLE `award` ADD CONSTRAINT `user_id_refs_user_ptr_id_1b2d0192` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `comment` DROP FOREIGN KEY `user_id_refs_id_6be725e8`; -ALTER TABLE `comment` ADD CONSTRAINT `user_id_refs_user_ptr_id_1ac2320c` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `favorite_question` DROP FOREIGN KEY `user_id_refs_id_52853822`; -ALTER TABLE `favorite_question` ADD CONSTRAINT `user_id_refs_user_ptr_id_3f419c1a` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `flagged_item` DROP FOREIGN KEY `user_id_refs_id_35e3c608`; -ALTER TABLE `flagged_item` ADD CONSTRAINT `user_id_refs_user_ptr_id_1ce834d4` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `forum_anonymousanswer` DROP FOREIGN KEY `author_id_refs_id_13fb542e`; -ALTER TABLE `forum_anonymousanswer` ADD CONSTRAINT `author_id_refs_user_ptr_id_6b5b476a` FOREIGN KEY (`author_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `forum_anonymousquestion` DROP FOREIGN KEY `author_id_refs_id_7511a98a`; -ALTER TABLE `forum_anonymousquestion` ADD CONSTRAINT `author_id_refs_user_ptr_id_104edd52` FOREIGN KEY (`author_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `forum_authkeyuserassociation` DROP FOREIGN KEY `user_id_refs_id_2c2a6b01`; -ALTER TABLE `forum_authkeyuserassociation` ADD CONSTRAINT `user_id_refs_user_ptr_id_3f0ec0c3` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `forum_markedtag` DROP FOREIGN KEY `user_id_refs_id_23b833bd`; -ALTER TABLE `forum_markedtag` ADD CONSTRAINT `user_id_refs_user_ptr_id_5a13f081` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `forum_questionsubscription` DROP FOREIGN KEY `user_id_refs_id_18e1489`; -ALTER TABLE `forum_questionsubscription` ADD CONSTRAINT `user_id_refs_user_ptr_id_521b19ad` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `forum_subscriptionsettings` DROP FOREIGN KEY `user_id_refs_id_35edacb4`; -ALTER TABLE `forum_subscriptionsettings` ADD CONSTRAINT `user_id_refs_user_ptr_id_1bc4fc70` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `forum_validationhash` DROP FOREIGN KEY `user_id_refs_id_2c2d214b`; -ALTER TABLE `forum_validationhash` ADD CONSTRAINT `user_id_refs_user_ptr_id_4e5b2d6f` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `question` DROP FOREIGN KEY `author_id_refs_id_56e9d00c`; -ALTER TABLE `question` ADD CONSTRAINT `author_id_refs_user_ptr_id_60d41818` FOREIGN KEY (`author_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `question` DROP FOREIGN KEY `closed_by_id_refs_id_56e9d00c`; -ALTER TABLE `question` ADD CONSTRAINT `closed_by_id_refs_user_ptr_id_60d41818` FOREIGN KEY (`closed_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `question` DROP FOREIGN KEY `deleted_by_id_refs_id_56e9d00c`; -ALTER TABLE `question` ADD CONSTRAINT `deleted_by_id_refs_user_ptr_id_60d41818` FOREIGN KEY (`deleted_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `question` DROP FOREIGN KEY `last_activity_by_id_refs_id_56e9d00c`; -ALTER TABLE `question` ADD CONSTRAINT `last_activity_by_id_refs_user_ptr_id_60d41818` FOREIGN KEY (`last_activity_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `question` DROP FOREIGN KEY `last_edited_by_id_refs_id_56e9d00c`; -ALTER TABLE `question` ADD CONSTRAINT `last_edited_by_id_refs_user_ptr_id_60d41818` FOREIGN KEY (`last_edited_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `question` DROP FOREIGN KEY `locked_by_id_refs_id_56e9d00c`; -ALTER TABLE `question` ADD CONSTRAINT `locked_by_id_refs_user_ptr_id_60d41818` FOREIGN KEY (`locked_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `question_followed_by` DROP FOREIGN KEY `user_id_refs_id_6d30712d`; -ALTER TABLE `question_followed_by` ADD CONSTRAINT `user_id_refs_user_ptr_id_615e65af` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `question_revision` DROP FOREIGN KEY `author_id_refs_id_4f88024f`; -ALTER TABLE `question_revision` ADD CONSTRAINT `author_id_refs_user_ptr_id_42e3d48d` FOREIGN KEY (`author_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `repute` DROP FOREIGN KEY `user_id_refs_id_5a426cd`; -ALTER TABLE `repute` ADD CONSTRAINT `user_id_refs_user_ptr_id_5ea9540f` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `tag` DROP FOREIGN KEY `created_by_id_refs_id_47205d6d`; -ALTER TABLE `tag` ADD CONSTRAINT `created_by_id_refs_user_ptr_id_417f3449` FOREIGN KEY (`created_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; -ALTER TABLE `tag` DROP FOREIGN KEY `deleted_by_id_refs_id_47205d6d`; -ALTER TABLE `tag` ADD CONSTRAINT `deleted_by_id_refs_user_ptr_id_417f3449` FOREIGN KEY (`deleted_by_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -ALTER TABLE `vote` DROP FOREIGN KEY `user_id_refs_id_760a4df0`; -ALTER TABLE `vote` ADD CONSTRAINT `user_id_refs_user_ptr_id_18723e34` FOREIGN KEY (`user_id`) REFERENCES `forum_user` (`user_ptr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT; - -""" - -from django.core.management.base import NoArgsCommand -from django.db import connection, transaction -from django.conf import settings - -class Command(NoArgsCommand): - def handle_noargs(self, **options): - if database_type.__contains__('postgresql'): - migration_query = PG_MIGRATION_QUERY - fkeys_query = PG_FKEYS_QUERY - elif database_type.__contains__('mysql'): - migration_query = MYSQL_MIGRATION_QUERY - fkeys_query = MYSQL_FKEYS_QUERY - else: - raise Exception("Database backend not suported by this migration command") - - cursor = connection.cursor() - cursor.execute(migration_query) - cursor.execute(fkeys_query) - transaction.commit_unless_managed() \ No newline at end of file diff --git a/forum/management/commands/.svn/text-base/create_subscriptions.py.svn-base b/forum/management/commands/.svn/text-base/create_subscriptions.py.svn-base deleted file mode 100644 index 3e0da3e7009804566bde305ed54981e77645b044..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/create_subscriptions.py.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -from forum.models import User, SubscriptionSettings, QuestionSubscription -from django.core.management.base import NoArgsCommand - -class Command(NoArgsCommand): - def handle_noargs(self, **options): - users = User.objects.all() - for u in users: - s = SubscriptionSettings(user=u) - s.save() - - user_questions = u.questions.all() - - for q in user_questions: - sub = QuestionSubscription(user=u, question=q) - sub.save() \ No newline at end of file diff --git a/forum/management/commands/.svn/text-base/maintaindb.py.svn-base b/forum/management/commands/.svn/text-base/maintaindb.py.svn-base deleted file mode 100644 index c41d36bb29bb68c9e5283fe2d3379b024b91d96b..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/maintaindb.py.svn-base +++ /dev/null @@ -1,75 +0,0 @@ -from django.core.management.base import BaseCommand, CommandError -from forum.models import Node, NodeRevision - -import logging - -# Used to activate the latest revision connected to some node -def activate_latest_revision(node): - # We're adding a new try-except block just in case that function has been called incorrectly. - try: - # The latest revision is the one that was added the last. - rev = node.revisions.all().order_by('-pk')[0] - node.active_revision_id = rev.id - node.save() - - return rev - except: - logging.error("Incorrect attempt to activate the latest revision of a node \ - that has no revisions at all has been made.") - return None - -# Used to create a new NodeRevision object according to the node content -def create_revision(node): - rev = NodeRevision( - author_id = node.author_id, - body = node.body, - node_id = node.id, - revised_at = node.added_at, - revision = 1, - summary = 'Initial revision', - tagnames = node.tagnames, - title = node.title, - ) - rev.save() - node.save() - - return node - -class Command(BaseCommand): - - def handle(self,*args, **options): - print 'Running MaintainDb' - - nodes = Node.objects.all() - - for node in nodes: - if node.active_revision is None: - print "Node #%(node_id)d: NodeRevision doesn't exist" % dict(node_id=node.id) - - # We currently don't have any active revision for this Node. Let's check if there are any revisions - # at all for it. If there are any we activate the last. - if node.revisions.all().count() > 0: - print " We have revisions for Node #%(node_id)d." % dict(node_id=node.id) - - # If there are already some revisions connected to the current node, we activate the latest - activate_latest_revision(node) - else: - print " We don't have revisions for Node #%(node_id)d. We're "\ - "going to create a new one from the current node content."% dict(node_id=node.id) - - # First of all we're going to create a new revision according to the current node data... - create_revision(node) - - # ...and after that we're going to activate it - activate_latest_revision(node) - - #print rev.node - - if node.node_type == "question": - # Reset the answer count cache - node.reset_answer_count_cache() - print "Question #%(question_id)d: Answer count cache has been reset" % { 'question_id' : node.id } - - # Reset the accepted count cache - node.reset_accepted_count_cache() - print "Question #%(question_id)d: Resetting the accepted count cache" % { 'question_id' : node.id } \ No newline at end of file diff --git a/forum/management/commands/.svn/text-base/message_to_everyone.py.svn-base b/forum/management/commands/.svn/text-base/message_to_everyone.py.svn-base deleted file mode 100644 index ea7b41a6c093361b963f03dea6099e6a5229a315..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/message_to_everyone.py.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -from django.core.management.base import NoArgsCommand -from forum.models import User -import sys - -class Command(NoArgsCommand): - def handle_noargs(self, **options): - msg = None - if msg == None: - print 'to run this command, please first edit the file %s' % __file__ - sys.exit(1) - for u in User.objects.all(): - u.message_set.create(message = msg % u.username) diff --git a/forum/management/commands/.svn/text-base/module_command.py.svn-base b/forum/management/commands/.svn/text-base/module_command.py.svn-base deleted file mode 100644 index 378d15ad7d7021a8bb080fc44a3b37d1343e851a..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/module_command.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -from django.core.management.base import BaseCommand, CommandError - -class Command(BaseCommand): - - def handle(self, *args, **options): - - for path in args: - m = __import__('forum_modules.%s' % path, globals(), locals(), ['forum_modules']) - - if hasattr(m, 'run'): - run = getattr(m, 'run') - if callable(run): - run() diff --git a/forum/management/commands/.svn/text-base/render_bodies.py.svn-base b/forum/management/commands/.svn/text-base/render_bodies.py.svn-base deleted file mode 100644 index 90badaadaffb1949c2d13a3aada66d3c39b40d56..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/render_bodies.py.svn-base +++ /dev/null @@ -1,19 +0,0 @@ -# coding: utf-8 - -from django.core.management.base import BaseCommand -from forum.models import Node - -import logging - -class Command(BaseCommand): - - def handle(self,*args, **options): - # Re-render node bodies - nodes = Node.objects.all() - for node in nodes: - try: - node.body = node.rendered(node.body) - node.save() - print node.body - except Exception, e: - logging.error(e) diff --git a/forum/management/commands/.svn/text-base/sample_command.py.svn-base b/forum/management/commands/.svn/text-base/sample_command.py.svn-base deleted file mode 100644 index 55e67235dcebc60cb1c9ec3056cb286fe003793a..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/sample_command.py.svn-base +++ /dev/null @@ -1,7 +0,0 @@ -from django.core.management.base import NoArgsCommand -from forum.models import Comment - -class Command(NoArgsCommand): - def handle_noargs(self, **options): - objs = Comment.objects.all() - print objs \ No newline at end of file diff --git a/forum/management/commands/.svn/text-base/send_email_alerts.py.svn-base b/forum/management/commands/.svn/text-base/send_email_alerts.py.svn-base deleted file mode 100644 index 06cad53e1903d4956406d99d535a8d6967fbb96a..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/send_email_alerts.py.svn-base +++ /dev/null @@ -1,125 +0,0 @@ -import datetime -from forum.models import * -from forum import settings -from django.db import models -from forum.utils.mail import send_template_email -from django.core.management.base import NoArgsCommand -from forum.settings.email import EMAIL_DIGEST_FLAG -from django.utils import translation -import logging - -SHOW_N_MORE_ACTIVE_NEW_MEMBERS = 5 -SUB_QUESTION_LIST_LENGTH = 5 -TRY_N_USER_TAGS = 5 - -class DigestQuestionsIndex(object): - def __init__(self, from_date): - self.from_date = from_date - - new_questions = Question.objects.filter_state(deleted=False).\ - filter(added_at__gt=from_date).\ - annotate(n_actions=models.Count('actions')).\ - annotate(child_count=models.Count('all_children')) - - hotness = lambda q: 3*q.child_count + q.n_actions - - for q in new_questions: - q.hotness=hotness(q) - - self.questions = sorted(new_questions, lambda q1, q2: q2.hotness - q1.hotness) - self.count = len(self.questions) - - def unseen_question(self, user, question): - try: - subscription = QuestionSubscription.objects.get(question=q, user=user) - except: - subscription = None - - return (not subscription) or subscription.last_view < q.last_activity_at - - def get_for_user(self, user): - user_tags = list(user.marked_tags.filter(user_selections__reason='good')) - - if len(user_tags) < TRY_N_USER_TAGS: - user_tags += list(Tag.objects.filter(models.Q(nodes__author=user) | models.Q(nodes__children__author=user)) \ - .annotate(user_tag_usage_count=models.Count('name')).order_by('-user_tag_usage_count')[:TRY_N_USER_TAGS - len(user_tags)]) - - user_tag_names = set([t.name for t in user_tags]) - - - subscriptions = user.subscriptions.filter(added_at__lt=self.from_date, last_activity_at__gt=models.F('questionsubscription__last_view') - ).order_by('-questionsubscription__last_view')[:SUB_QUESTION_LIST_LENGTH] - - unseen_questions = [q for q in self.questions if self.unseen_question(user, q)] - - interesting = [] - - for q in unseen_questions: - if len(set(q.tagname_list()) & user_tag_names): interesting.append(q) - - - may_help = [] - if len(interesting): - if len(interesting) > SUB_QUESTION_LIST_LENGTH: - may_help = interesting[SUB_QUESTION_LIST_LENGTH:][-SUB_QUESTION_LIST_LENGTH:] - interesting = interesting[:SUB_QUESTION_LIST_LENGTH] - else: - interesting = unseen_questions[:SUB_QUESTION_LIST_LENGTH] - - return {'interesting': interesting, 'may_help': may_help, 'subscriptions': subscriptions} - - - - -class Command(NoArgsCommand): - def handle_noargs(self, **options): - try: - translation.activate(settings.LANGUAGE_CODE) - except: - logging.error("Unable to set the locale in the send emails cron job") - - digest_control = EMAIL_DIGEST_FLAG.value - - if digest_control is None: - digest_control = { - 'LAST_DAILY': datetime.datetime.now() - datetime.timedelta(days=1), - 'LAST_WEEKLY': datetime.datetime.now() - datetime.timedelta(days=1), - } - - from_date = digest_control['LAST_DAILY'] - digest_control['LAST_DAILY'] = datetime.datetime.now() - - EMAIL_DIGEST_FLAG.set_value(digest_control) - - users = User.objects.filter(subscription_settings__enable_notifications=True, - subscription_settings__send_digest=True) - - # Send digest only to active users - if settings.SEND_DIGEST_ONLY_TO_ACTIVE_USERS: - users = users.filter(is_active=True) - - # Send digest only to users with validated emails - if settings.SEND_DIGEST_ONLY_TO_VALIDATED_USERS: - users = users.filter(email_isvalid=True) - - new_members = User.objects.filter(is_active=True, date_joined__gt=from_date).annotate(n_actions=models.Count('actions')).order_by('-n_actions') - - new_member_count = new_members.count() - - # The number of the flagged content for the day - flagged_count = Flag.objects.filter(flagged_at__gt=datetime.datetime.today()-datetime.timedelta(days=1)).count() - - if new_member_count >= SHOW_N_MORE_ACTIVE_NEW_MEMBERS: - new_members = new_members[:SHOW_N_MORE_ACTIVE_NEW_MEMBERS] - show_all_users = True - else: - show_all_users = False - - digest = DigestQuestionsIndex(from_date) - - if (not new_member_count) and (not digest.count): - return - - send_template_email(users, "notifications/digest.html", locals()) - - diff --git a/forum/management/commands/.svn/text-base/test_ui.py.svn-base b/forum/management/commands/.svn/text-base/test_ui.py.svn-base deleted file mode 100644 index 500cfdeff0cee2a267b6cdb0d871cf7b455d6d75..0000000000000000000000000000000000000000 --- a/forum/management/commands/.svn/text-base/test_ui.py.svn-base +++ /dev/null @@ -1,45 +0,0 @@ -import os -import glob -import logging -import subprocess - -from django.core.management.base import BaseCommand, CommandError -from django.conf import settings as django_settings - -from forum import settings - -class Command(BaseCommand): - args = '<test1 test2 test3 ...>' - help = 'Closes the specified poll for voting' - - def handle(self, *args, **options): - # Try to load Selenium. - try: - import selenium - print "Selenium has been successfully loaded" - except ImportError: - logging.error("Couldn't load selenium") - exit("Python Selenium couldn't be loaded: pip install selenium") - - # Tests folder - TEST_FOLDER = '%s/forum/skins/%s/tests' % (django_settings.SITE_SRC_ROOT, django_settings.OSQA_DEFAULT_SKIN) - - # Check if the UI tests folder exists - if os.path.exists(TEST_FOLDER): - print 'Loading UI tests from %s' % TEST_FOLDER - else: - exit("UI tests folder couldn't be loaded") - - # Loop through all args and try to get the python test files that match - print args - files = [] - for arg in args: - matching_files = glob.glob('%s/%s.py' % (TEST_FOLDER, arg)) - for matching_file in matching_files: - files.append(matching_file) - - # Loop through all test files - for file in files: - file_name = file.split('/')[-1] - print "Starting test %s" % file_name - child = subprocess.Popen('python %s' % file, shell=True) diff --git a/forum/markdownext/.svn/all-wcprops b/forum/markdownext/.svn/all-wcprops deleted file mode 100644 index 3bef4fd71004be98c9a1e0991c3efab681f3b1f4..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 51 -/svnroot/!svn/ver/1187/osqa/trunk/forum/markdownext -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/1077/osqa/trunk/forum/markdownext/__init__.py -END -mdx_auto_linker.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1187/osqa/trunk/forum/markdownext/mdx_auto_linker.py -END -mdx_settingsparser.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1077/osqa/trunk/forum/markdownext/mdx_settingsparser.py -END -mdx_limitedsyntax.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1077/osqa/trunk/forum/markdownext/mdx_limitedsyntax.py -END diff --git a/forum/markdownext/.svn/entries b/forum/markdownext/.svn/entries deleted file mode 100644 index 2778ca73e66f26db2f0497200d5a8c4e4911de66..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/entries +++ /dev/null @@ -1,164 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/markdownext -http://svn.osqa.net/svnroot - - - -2011-10-11T21:29:38.174803Z -1187 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:44.059746Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -mdx_auto_linker.py -file - - - - -2012-06-22T20:34:44.059746Z -6dc42314c391cac89f0e6678e8d0dcc6 -2011-10-11T21:29:38.174803Z -1187 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3837 - -mdx_settingsparser.py -file - - - - -2012-06-22T20:34:44.059746Z -9e5cf6c2f2d98dfc9df136e9c84edebf -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1200 - -mdx_limitedsyntax.py -file - - - - -2012-06-22T20:34:44.059746Z -6cce7ba3b00ea64787f95270de88a127 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -378 - diff --git a/forum/markdownext/.svn/prop-base/__init__.py.svn-base b/forum/markdownext/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/markdownext/.svn/prop-base/mdx_auto_linker.py.svn-base b/forum/markdownext/.svn/prop-base/mdx_auto_linker.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/prop-base/mdx_auto_linker.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/markdownext/.svn/prop-base/mdx_limitedsyntax.py.svn-base b/forum/markdownext/.svn/prop-base/mdx_limitedsyntax.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/prop-base/mdx_limitedsyntax.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/markdownext/.svn/prop-base/mdx_settingsparser.py.svn-base b/forum/markdownext/.svn/prop-base/mdx_settingsparser.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/prop-base/mdx_settingsparser.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/markdownext/.svn/text-base/__init__.py.svn-base b/forum/markdownext/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum/markdownext/.svn/text-base/mdx_auto_linker.py.svn-base b/forum/markdownext/.svn/text-base/mdx_auto_linker.py.svn-base deleted file mode 100644 index c1ec9aa5f29f8f82198b4380736615e572823875..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/text-base/mdx_auto_linker.py.svn-base +++ /dev/null @@ -1,110 +0,0 @@ -import markdown -import re, socket - -TLDS = ('gw', 'gu', 'gt', 'gs', 'gr', 'gq', 'gp', 'gy', 'gg', 'gf', 'ge', 'gd', 'ga', 'edu', 'va', 'gn', 'gl', 'gi', - 'gh', 'iq', 'lb', 'lc', 'la', 'tv', 'tw', 'tt', 'arpa', 'lk', 'li', 'lv', 'to', 'lt', 'lr', 'ls', 'th', 'tf', - 'su', 'td', 'aspx', 'tc', 'ly', 'do', 'coop', 'dj', 'dk', 'de', 'vc', 'me', 'dz', 'uy', 'yu', 'vg', 'ro', - 'vu', 'qa', 'ml', 'us', 'zm', 'cfm', 'tel', 'ee', 'htm', 'za', 'ec', 'bg', 'uk', 'eu', 'et', 'zw', - 'es', 'er', 'ru', 'rw', 'rs', 'asia', 're', 'it', 'net', 'gov', 'tz', 'bd', 'be', 'bf', 'asp', 'jobs', 'ba', - 'bb', 'bm', 'bn', 'bo', 'bh', 'bi', 'bj', 'bt', 'jm', 'sb', 'bw', 'ws', 'br', 'bs', 'je', 'tg', 'by', 'bz', - 'tn', 'om', 'ua', 'jo', 'pdf', 'mz', 'com', 'ck', 'ci', 'ch', 'co', 'cn', 'cm', 'cl', 'cc', 'tr', 'ca', 'cg', - 'cf', 'cd', 'cz', 'cy', 'cx', 'org', 'cr', 'txt', 'cv', 'cu', 've', 'pr', 'ps', 'fk', 'pw', 'pt', 'museum', - 'py', 'tl', 'int', 'pa', 'pf', 'pg', 'pe', 'pk', 'ph', 'pn', 'eg', 'pl', 'tk', 'hr', 'aero', 'ht', 'hu', 'hk', - 'hn', 'vn', 'hm', 'jp', 'info', 'md', 'mg', 'ma', 'mc', 'uz', 'mm', 'local', 'mo', 'mn', 'mh', 'mk', 'cat', - 'mu', 'mt', 'mw', 'mv', 'mq', 'ms', 'mr', 'im', 'ug', 'my', 'mx', 'il', 'pro', 'ac', 'sa', 'ae', 'ad', 'ag', - 'af', 'ai', 'vi', 'is', 'ir', 'am', 'al', 'ao', 'an', 'aq', 'as', 'ar', 'au', 'at', 'aw', 'in', 'ax', 'az', - 'ie', 'id', 'sr', 'nl', 'mil', 'no', 'na', 'travel', 'nc', 'ne', 'nf', 'ng', 'nz', 'dm', 'np', - 'so', 'nr', 'nu', 'fr', 'io', 'ni', 'ye', 'sv', 'kz', 'fi', 'fj', 'fm', 'fo', 'tj', 'sz', 'sy', - 'mobi', 'kg', 'ke', 'doc', 'ki', 'kh', 'kn', 'km', 'st', 'sk', 'kr', 'si', 'kp', 'kw', 'sn', 'sm', 'sl', 'sc', - 'biz', 'ky', 'sg', 'se', 'sd') - -AUTO_LINK_RE = re.compile(r""" - (?P<ws>.?\s*) - (?P<url> - (?:(?P<format1> - ((?P<protocol1>[a-z][a-z]+)://)? - (?P<domain1>\w(?:[\w-]*\w)?\.\w(?:[\w-]*\w)?(?:\.\w(?:[\w-]*\w)?)*) - ) | (?P<format2> - ((?P<protocol2>[a-z][a-z]+)://) - (?P<domain2>\w(?:[\w-]*\w)?(?:\.\w(?:[\w-]*\w)?)*) - )) - (?P<port>:\d+)? - (?P<uri>/[^\s<]*)? - ) - -""", re.X | re.I) - -EMAIL_LINK_REPLACE_RE = re.compile("(?<= href=\")[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})(?=\")") - -def is_ip(addr): - try: - socket.inet_aton(addr) - return True - except: - return False - -def replacer(m): - - ws = m.group('ws') - - if ws and ws[0] in ("'", '"', "@"): - return m.group(0) - - elif not ws: - ws = '' - - if m.group('format1'): - fn = 1 - else: - fn = 2 - - protocol = m.group('protocol%s' % fn) - domain = m.group('domain%s' % fn) - - if not protocol: - domain_chunks = domain.split('.') - - if not (len(domain_chunks) == 1 and domain_chunks[0].lower() == 'localhost') or (domain_chunks[-1].lower() in TLDS): - return m.group(0) - - if (not protocol) and is_ip(domain): - return m.group(0) - - - port = m.group('port') - uri = m.group('uri') - - if not ws: - ws = '' - - if not port: - port = '' - - if not protocol: - protocol = 'http' - - if not uri: - uri = '' - - url = "%s://%s%s%s" % (protocol, domain, port, uri) - - return "%s<a href=\"%s\">%s</a>" % (ws, url, m.group('url')) - - -class AutoLinker(markdown.postprocessors.Postprocessor): - - def run(self, text): - text = AUTO_LINK_RE.sub(replacer, text) - text = EMAIL_LINK_REPLACE_RE.sub(lambda m: "mailto:%s" % m.group(0), text) - - return text - -class AutoLinkerExtension(markdown.Extension): - - def extendMarkdown(self, md, md_globals): - md.postprocessors['autolinker'] = AutoLinker() - -def makeExtension(configs=None): - return AutoLinkerExtension(configs=configs) - - diff --git a/forum/markdownext/.svn/text-base/mdx_limitedsyntax.py.svn-base b/forum/markdownext/.svn/text-base/mdx_limitedsyntax.py.svn-base deleted file mode 100644 index 5ac0f00f4f94f27cd544e54afeec48704396627e..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/text-base/mdx_limitedsyntax.py.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -import markdown -from django.utils.safestring import mark_safe -from django.utils.html import strip_tags -from forum.utils.html import sanitize_html - -class LimitedSyntaxExtension(markdown.Extension): - def extendMarkdown(self, md, md_globals): - del md.inlinePatterns["image_reference"] - -def makeExtension(configs=None) : - return LimitedSyntaxExtension(configs=configs) diff --git a/forum/markdownext/.svn/text-base/mdx_settingsparser.py.svn-base b/forum/markdownext/.svn/text-base/mdx_settingsparser.py.svn-base deleted file mode 100644 index 9d0c69ff0bc63f46ab8b2a6f53af54f195f9e702..0000000000000000000000000000000000000000 --- a/forum/markdownext/.svn/text-base/mdx_settingsparser.py.svn-base +++ /dev/null @@ -1,46 +0,0 @@ -from os import linesep -from csv import reader, QUOTE_NONE -import markdown -from markdown import Extension -from markdown.preprocessors import Preprocessor -import re - -from forum import settings - -class SettingsExtension(markdown.Extension): - def __init__(self, configs): - self.configs = {} # settings.REP_TO_VOTE_UP} - for key, value in configs: - self.config[key] = value - - # self.extendMarkdown(markdown.Markdown()., config) - - def reset(self): - pass - - def extendMarkdown(self, md, md_globals): - md.registerExtension(self) - self.parser = md.parser - md.preprocessors.add('MinRep', SettingsPre(self), '_begin') - -SETTING_RE = re.compile(r'\|[A-Z_]+\|') - -def setting_rep_callback(m): - setting_name = m.group(0).strip('|') - if hasattr(settings, setting_name): - return unicode(getattr(settings, setting_name)) - else: - return '' - - -class SettingsPre(Preprocessor): - def run(self, lines): - new_lines = [] - for line in lines: - new_lines.append(SETTING_RE.sub(setting_rep_callback, line)) - - return new_lines - - -def makeExtension(configs=None) : - return SettingsExtension(configs=configs) \ No newline at end of file diff --git a/forum/middleware/.svn/all-wcprops b/forum/middleware/.svn/all-wcprops deleted file mode 100644 index 61c587f9afe55540748e3b9dd1ceae7091ceb3e5..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/all-wcprops +++ /dev/null @@ -1,53 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/1185/osqa/trunk/forum/middleware -END -cancel.py -K 25 -svn:wc:ra_dav:version-url -V 60 -/svnroot/!svn/ver/1077/osqa/trunk/forum/middleware/cancel.py -END -request_utils.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1185/osqa/trunk/forum/middleware/request_utils.py -END -anon_user.py -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/1077/osqa/trunk/forum/middleware/anon_user.py -END -custom_pages.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1142/osqa/trunk/forum/middleware/custom_pages.py -END -django_cookies.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum/middleware/django_cookies.py -END -extended_user.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1077/osqa/trunk/forum/middleware/extended_user.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1077/osqa/trunk/forum/middleware/__init__.py -END -admin_messages.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum/middleware/admin_messages.py -END diff --git a/forum/middleware/.svn/dir-prop-base b/forum/middleware/.svn/dir-prop-base deleted file mode 100644 index ad36fd02569fbcc8133aa6297569ab9476c878f8..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/dir-prop-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 275 -/osqa/branches/cacheimp/forum/middleware:874-939 -/osqa/branches/carpenter/forum/middleware:691-725 -/osqa/branches/hernani/forum/middleware:772-832 -/osqa/branches/jambazov/forum/middleware:675-831 -/osqa/branches/notification-config/forum/middleware:693-794,809,811-812,825-827 -END diff --git a/forum/middleware/.svn/entries b/forum/middleware/.svn/entries deleted file mode 100644 index f30801bd8ade6d02297a519a67d5202b0d2ffd7d..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/entries +++ /dev/null @@ -1,300 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/middleware -http://svn.osqa.net/svnroot - - - -2011-10-09T12:42:46.693361Z -1185 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -cancel.py -file - - - - -2012-06-22T20:34:47.849854Z -d7315bb08432e055296a1cf6a80470ae -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -618 - -request_utils.py -file - - - - -2012-06-22T20:34:47.845856Z -6d9cd3526ab5bfaa1254e0322ab98b77 -2011-10-09T12:42:46.693361Z -1185 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -942 - -anon_user.py -file - - - - -2012-06-22T20:34:47.845856Z -1631dd56154b850a410a053932f6487b -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2002 - -custom_pages.py -file - - - - -2012-06-22T20:34:47.845856Z -56e20f5f8d45bf1db5117d23d1696d86 -2011-08-01T10:27:08.178414Z -1142 -jordan - - - - - - - - - - - - - - - - - - - - - -673 - -django_cookies.py -file - - - - -2012-06-22T20:34:47.845856Z -617d2b791d9fe12f9b5d3fe73649aa06 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3253 - -extended_user.py -file - - - - -2012-06-22T20:34:47.849854Z -9216430cce46e19487b82d96d63af028 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -984 - -__init__.py -file - - - - -2012-06-22T20:34:47.849854Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -admin_messages.py -file - - - - -2012-06-22T20:34:47.849854Z -214a7f235384c7c44eac7af7e9df0ac2 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3210 - diff --git a/forum/middleware/.svn/prop-base/__init__.py.svn-base b/forum/middleware/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/middleware/.svn/prop-base/admin_messages.py.svn-base b/forum/middleware/.svn/prop-base/admin_messages.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/prop-base/admin_messages.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/middleware/.svn/prop-base/anon_user.py.svn-base b/forum/middleware/.svn/prop-base/anon_user.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/prop-base/anon_user.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/middleware/.svn/prop-base/cancel.py.svn-base b/forum/middleware/.svn/prop-base/cancel.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/prop-base/cancel.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/middleware/.svn/prop-base/django_cookies.py.svn-base b/forum/middleware/.svn/prop-base/django_cookies.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/prop-base/django_cookies.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/middleware/.svn/prop-base/extended_user.py.svn-base b/forum/middleware/.svn/prop-base/extended_user.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/prop-base/extended_user.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/middleware/.svn/prop-base/request_utils.py.svn-base b/forum/middleware/.svn/prop-base/request_utils.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/prop-base/request_utils.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/middleware/.svn/text-base/__init__.py.svn-base b/forum/middleware/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum/middleware/.svn/text-base/admin_messages.py.svn-base b/forum/middleware/.svn/text-base/admin_messages.py.svn-base deleted file mode 100644 index 2d391defc44823174ab29bb1cbef9ff51a86f334..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/text-base/admin_messages.py.svn-base +++ /dev/null @@ -1,60 +0,0 @@ -from forum.user_messages import create_message -from django.utils.translation import ugettext as _ -from django.core.urlresolvers import reverse -from django.core.exceptions import ObjectDoesNotExist - -from forum.settings import EMAIL_HOST, EMAIL_HOST_USER, EMAIL_HOST_PASSWORD, \ - APP_URL - -class AdminMessagesMiddleware(object): - def process_request(self, request): - # Check if the email settings are configured - self.check_email_settings(request) - - # Check if the APP_URL setting is configured - self.check_app_url(request) - - def check_email_settings(self, request): - # We want to warn only the administrators that the email settings are not configured. - # So, first of all we check if we're dealing with the administrators and after that if - # the SMTP settings are configured at all. We suppose that the SMTP settings are not configured - # if the EMAIL_HOST, the EMAIL_HOST_USER and the EMAIL_HOST_PASSWORD are not set at all. - if request.user.is_authenticated and request.user.is_staff and request.user.is_superuser and \ - EMAIL_HOST == '' and EMAIL_HOST_USER == '' and EMAIL_HOST_PASSWORD == '': - - msg = _(""" - The e-mail settings of this community are not configured yet. We strongly recommend you to - do that from the <a href="%(email_settings_url)s">e-mail settings page</a> as soon as possible. - """ % dict(email_settings_url=reverse('admin_set', kwargs={'set_name':'email'}))) - - # We do not want to repeat ourselves. If the message already exists in the message list, we're not going to - # add it. That's why first of all we're going the check if it is there. - try: - # If the message doesn't exist in the RelatedManager ObjectsDoesNotExist is going to be raised. - request.user.message_set.all().get(message=msg) - except ObjectDoesNotExist: - # Let's create the message. - request.user.message_set.create(message=msg) - except: - pass - - def check_app_url(self, request): - # We consider the APP_URL setting not configured if it contains only the protocol - # name or if it's shorter than 7 characters. - if request.user.is_authenticated and request.user.is_staff and request.user.is_superuser and \ - APP_URL == 'http://' or APP_URL == 'https://' or len(APP_URL) < 7: - - msg = _(""" - Please, configure your APP_URL setting from the local settings file. - """) - - # We do not want to repeat ourselves. If the message already exists in the message list, we're not going to - # add it. That's why first of all we're going the check if it is there. - try: - # If the message doesn't exist in the RelatedManager ObjectsDoesNotExist is going to be raised. - request.user.message_set.all().get(message=msg) - except ObjectDoesNotExist: - # Let's create the message. - request.user.message_set.create(message=msg) - except: - pass diff --git a/forum/middleware/.svn/text-base/anon_user.py.svn-base b/forum/middleware/.svn/text-base/anon_user.py.svn-base deleted file mode 100644 index 25f192a00f94f83adaeec97d785352e943e60038..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/text-base/anon_user.py.svn-base +++ /dev/null @@ -1,43 +0,0 @@ -from django.http import HttpResponseRedirect, HttpResponse -from forum.forms import get_next_url -from django.utils.translation import ugettext as _ -from forum.user_messages import create_message, get_and_delete_messages -from forum import settings -from django.core.urlresolvers import reverse -import logging - -class AnonymousMessageManager(object): - def __init__(self,request): - self.request = request - def create(self,message=''): - create_message(self.request,message) - def get_and_delete(self): - messages = get_and_delete_messages(self.request) - return messages - -def dummy_deepcopy(*arg): - """this is necessary to prevent deepcopy() on anonymous user object - that now contains reference to request, which cannot be deepcopied - """ - return None - -class ConnectToSessionMessagesMiddleware(object): - def process_request(self, request): - if not request.user.is_authenticated(): - request.user.__deepcopy__ = dummy_deepcopy #plug on deepcopy which may be called by django db "driver" - request.user.message_set = AnonymousMessageManager(request) #here request is linked to anon user - request.user.get_and_delete_messages = request.user.message_set.get_and_delete - - #also set the first greeting one time per session only - if 'greeting_set' not in request.session: - request.session['greeting_set'] = True - - msg = _('First time here? Check out the <a href="%s">FAQ</a>!') % reverse('faq') - - # If the store greeting in cookie setting is activated make sure that the greeting_set cookies isn't set - if (settings.STORE_GREETING_IN_COOKIE and not request.COOKIES.has_key('greeting_set')) or \ - not settings.STORE_GREETING_IN_COOKIE: - request.user.message_set.create(message=msg) - - if settings.STORE_GREETING_IN_COOKIE: - request.COOKIES.set(key='greeting_set', value=True) diff --git a/forum/middleware/.svn/text-base/cancel.py.svn-base b/forum/middleware/.svn/text-base/cancel.py.svn-base deleted file mode 100644 index 2d78a171c5e811ae4c9845a6a06a27ec1e72ec25..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/text-base/cancel.py.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -from django.http import HttpResponseRedirect -from forum.forms import get_next_url -import logging -class CancelActionMiddleware(object): - def process_view(self, request, view_func, view_args, view_kwargs): - if 'cancel' in request.REQUEST: - #todo use session messages for the anonymous users - try: - msg = getattr(view_func,'CANCEL_MESSAGE') - except AttributeError: - msg = 'action canceled' - request.user.message_set.create(message=msg) - return HttpResponseRedirect(get_next_url(request)) - else: - return None diff --git a/forum/middleware/.svn/text-base/custom_pages.py.svn-base b/forum/middleware/.svn/text-base/custom_pages.py.svn-base deleted file mode 100644 index 6de00f88eb353280fb686af5eb2525cafa182394..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/text-base/custom_pages.py.svn-base +++ /dev/null @@ -1,19 +0,0 @@ -from django.http import Http404 -from django.conf import settings - -from forum.views.meta import page - -class CustomPagesFallbackMiddleware(object): - def process_response(self, request, response): - if response.status_code != 404: - return response # No need to check for a flatpage for non-404 responses. - try: - return page(request) - # Return the original response if any errors happened. Because this - # is a middleware, we can't assume the errors will be caught elsewhere. - except Http404: - return response - except: - if settings.DEBUG: - raise - return response diff --git a/forum/middleware/.svn/text-base/django_cookies.py.svn-base b/forum/middleware/.svn/text-base/django_cookies.py.svn-base deleted file mode 100644 index 5e5277e497dd9bdc359ab782fafae36d5faa0b93..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/text-base/django_cookies.py.svn-base +++ /dev/null @@ -1,102 +0,0 @@ -""" -A two-part middleware which modifies request.COOKIES and adds a set and delete method. - - `set` matches django.http.HttpResponse.set_cookie - `delete` matches django.http.HttpResponse.delete_cookie - -MIDDLEWARE_CLASSES = ( - 'django_cookies.CookiePreHandlerMiddleware', - ... - 'django_cookies.CookiePostHandlerMiddleware', -) - -def my_view(request): - request.COOKIES.set([args]) - ... - return response -""" - -from Cookie import SimpleCookie, Morsel -from django.utils.encoding import smart_unicode, smart_str -import copy - -class CookiePreHandlerMiddleware(object): - """ - This middleware modifies request.COOKIES and adds a set and delete method. - - `set` matches django.http.HttpResponse.set_cookie - `delete` matches django.http.HttpResponse.delete_cookie - - This should be the first middleware you load. - """ - def process_request(self, request): - cookies = CookieHandler() - for k, v in request.COOKIES.iteritems(): - cookies[k] = str(v) - request.COOKIES = cookies - request._orig_cookies = copy.deepcopy(request.COOKIES) - -class CookiePostHandlerMiddleware(object): - """ - This middleware modifies updates the response will all modified cookies. - - This should be the last middleware you load. - """ - def process_response(self, request, response): - if hasattr(request, '_orig_cookies') and request.COOKIES != request._orig_cookies: - for k,v in request.COOKIES.iteritems(): - if request._orig_cookies.get(k) != v: - dict.__setitem__(response.cookies, k, v) - return response - -class StringMorsel(Morsel): - def __str__(self): - return smart_str(self.value) - - def __eq__(self, a): - if isinstance(a, str): - return smart_str(self) == a - elif isinstance(a, Morsel): - return a.output() == self.output() - return False - - def __ne__(self, a): - if isinstance(a, str): - return smart_str(self) != a - elif isinstance(a, Morsel): - return a.output() != self.output() - return True - - def __repr__(self): - return smart_unicode(self) - - def decode(self, *args): - return self.__repr__() - -class CookieHandler(SimpleCookie): - def __set(self, key, real_value, coded_value): - """Private method for setting a cookie's value""" - M = self.get(key, StringMorsel()) - M.set(key, real_value, coded_value) - dict.__setitem__(self, key, M) - - def __setitem__(self, key, value): - """Dictionary style assignment.""" - rval, cval = self.value_encode(value) - self.__set(key, rval, cval) - - def set(self, key, value='', max_age=None, expires=None, path='/', domain=None, secure=None): - self[key] = value - for var in ('max_age', 'path', 'domain', 'secure', 'expires'): - val = locals()[var] - if val is not None: - self[key][var.replace('_', '-')] = val - - def delete(self, key, path='/', domain=None): - self[key] = '' - if path is not None: - self[key]['path'] = path - if domain is not None: - self[key]['domain'] = domain - self[key]['expires'] = 0 - self[key]['max-age'] = 0 diff --git a/forum/middleware/.svn/text-base/extended_user.py.svn-base b/forum/middleware/.svn/text-base/extended_user.py.svn-base deleted file mode 100644 index ca1d15112f577ff51be62630d8ce24412fded98d..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/text-base/extended_user.py.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -from django.contrib.auth.middleware import AuthenticationMiddleware -from django.contrib.auth import logout -from forum.models.user import AnonymousUser -from forum.views.auth import forward_suspended_user -import logging - -class ExtendedUser(AuthenticationMiddleware): - def process_request(self, request): - super(ExtendedUser, self).process_request(request) - if request.user.is_authenticated(): - try: - request.user = request.user.user - - if request.user.is_suspended(): - user = request.user - logout(request) - return forward_suspended_user(request, user) - - return None - except Exception, e: - import traceback - logging.error("Unable to convert auth_user %s to forum_user: \n%s" % ( - request.user.id, traceback.format_exc() - )) - - request.user = AnonymousUser() - return None \ No newline at end of file diff --git a/forum/middleware/.svn/text-base/request_utils.py.svn-base b/forum/middleware/.svn/text-base/request_utils.py.svn-base deleted file mode 100644 index e7fd7403a8ed3697e1563000aa1916d655276822..0000000000000000000000000000000000000000 --- a/forum/middleware/.svn/text-base/request_utils.py.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -import forum - -from forum.settings import MAINTAINANCE_MODE, APP_LOGO, APP_TITLE - -from forum.http_responses import HttpResponseServiceUnavailable - - - -class RequestUtils(object): - def process_request(self, request): - if MAINTAINANCE_MODE.value is not None and isinstance(MAINTAINANCE_MODE.value.get('allow_ips', None), list): - ip = request.META['REMOTE_ADDR'] - - if not ip in MAINTAINANCE_MODE.value['allow_ips']: - return HttpResponseServiceUnavailable(MAINTAINANCE_MODE.value.get('message', '')) - - if request.session.get('redirect_POST_data', None): - request.POST = request.session.pop('redirect_POST_data') - request.META['REQUEST_METHOD'] = "POST" - - self.request = request - forum.REQUEST_HOLDER.request = request - return None - - def process_response(self, request, response): - forum.REQUEST_HOLDER.request = None - return response - diff --git a/forum/migrations/.svn/all-wcprops b/forum/migrations/.svn/all-wcprops deleted file mode 100644 index 8e7ed95a648677ce42dd275a71d4533965e39fc9..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/all-wcprops +++ /dev/null @@ -1,317 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/1092/osqa/trunk/forum/migrations -END -0011_auto__add_field_node_active_revision.py -K 25 -svn:wc:ra_dav:version-url -V 95 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0011_auto__add_field_node_active_revision.py -END -0037_fill_node_state.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0037_fill_node_state.py -END -0041_action_ip_fixes.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0041_action_ip_fixes.py -END -0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py -END -0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py -K 25 -svn:wc:ra_dav:version-url -V 114 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py -END -0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py -END -0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py -END -0005_fill_accepted_by_field.py -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0005_fill_accepted_by_field.py -END -0026_reset_deleted_and_lastedited_flags.py -K 25 -svn:wc:ra_dav:version-url -V 93 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0026_reset_deleted_and_lastedited_flags.py -END -0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py -K 25 -svn:wc:ra_dav:version-url -V 113 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py -END -0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py -END -0040_auto__chg_field_nodestate_action__add_field_node_extra.py -K 25 -svn:wc:ra_dav:version-url -V 113 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0040_auto__chg_field_nodestate_action__add_field_node_extra.py -END -0014_auto__add_field_question_accepted_answer.py -K 25 -svn:wc:ra_dav:version-url -V 99 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0014_auto__add_field_question_accepted_answer.py -END -0015_accepted_answer_changes.py -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0015_accepted_answer_changes.py -END -0031_alter_pickle_storage.py -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0031_alter_pickle_storage.py -END -0021_create_new_pg_fts_triggers.py -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0021_create_new_pg_fts_triggers.py -END -0048_zero_count_tags_fix.py -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0048_zero_count_tags_fix.py -END -0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py -K 25 -svn:wc:ra_dav:version-url -V 122 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py -END -0042_auto__add_userproperty.py -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0042_auto__add_userproperty.py -END -0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py -END -0001_initial.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0001_initial.py -END -0029_repute_dates.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0029_repute_dates.py -END -0020_create_absolute_parents.py -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0020_create_absolute_parents.py -END -0017_auto__add_field_repute_node__add_field_repute_canceled.py -K 25 -svn:wc:ra_dav:version-url -V 113 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0017_auto__add_field_repute_node__add_field_repute_canceled.py -END -0007_q_and_a_to_node.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0007_q_and_a_to_node.py -END -0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py -END -0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py -END -0018_comments_to_node.py -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0018_comments_to_node.py -END -0012_set_active_revision.py -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0012_set_active_revision.py -END -0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py -K 25 -svn:wc:ra_dav:version-url -V 128 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py -END -0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py -END -0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py -END -0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py -END -0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py -END -0027_auto__del_activity.py -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0027_auto__del_activity.py -END -0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py -END -0046_set_tag_dates.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0046_set_tag_dates.py -END -0049_auto__chg_field_user_reputation.py -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0049_auto__chg_field_user_reputation.py -END -0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py -END -0034_new_badge_and_award.py -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0034_new_badge_and_award.py -END -0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py -END -0044_markdown_cache_migration.py -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0044_markdown_cache_migration.py -END -0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py -END -0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py -END -0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py -END -0009_convert_revisions.py -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0009_convert_revisions.py -END -0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py -K 25 -svn:wc:ra_dav:version-url -V 129 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py -END -0051_auto__chg_field_action_action_type.py -K 25 -svn:wc:ra_dav:version-url -V 93 -/svnroot/!svn/ver/1092/osqa/trunk/forum/migrations/0051_auto__chg_field_action_action_type.py -END -0023_flaten_node_inheritance_create_actions.py -K 25 -svn:wc:ra_dav:version-url -V 97 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0023_flaten_node_inheritance_create_actions.py -END -0003_repute_changes.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0003_repute_changes.py -END -0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py -K 25 -svn:wc:ra_dav:version-url -V 126 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1077/osqa/trunk/forum/migrations/__init__.py -END diff --git a/forum/migrations/.svn/entries b/forum/migrations/.svn/entries deleted file mode 100644 index 5c61f4cea3843c97bff51f28939fffe324502cde..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/entries +++ /dev/null @@ -1,1796 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/migrations -http://svn.osqa.net/svnroot - - - -2011-07-02T14:04:43.918209Z -1092 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -0014_auto__add_field_question_accepted_answer.py -file - - - - -2012-06-22T20:34:47.625966Z -35b4d80b61022701d0fc008897ce7fa1 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -26575 - -0015_accepted_answer_changes.py -file - - - - -2012-06-22T20:34:47.621968Z -b733a64fb929c7acc4176020105b801b -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -26764 - -0031_alter_pickle_storage.py -file - - - - -2012-06-22T20:34:47.625966Z -ab725fd679a0c4ec92cc2b9d3c1e837c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21221 - -0021_create_new_pg_fts_triggers.py -file - - - - -2012-06-22T20:34:47.629964Z -4df3745993fdfa8180a468aac0e384cd -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -25801 - -0048_zero_count_tags_fix.py -file - - - - -2012-06-22T20:34:47.629964Z -ee66ed0c8479ddc0525e454cd77e8105 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22070 - -0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py -file - - - - -2012-06-22T20:34:47.637960Z -8c1bd2d9422accff687862b25f93d95e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -20806 - -0042_auto__add_userproperty.py -file - - - - -2012-06-22T20:34:47.633962Z -5f825fab0ebaa658d2d2d751a4fa94f6 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22478 - -0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py -file - - - - -2012-06-22T20:34:47.641958Z -8b31b8f360d2d9cd9b823c0bde58058c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21817 - -0001_initial.py -file - - - - -2012-06-22T20:34:47.641958Z -bed81304cfef11edd4a7fb4ce0f90931 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -57815 - -0020_create_absolute_parents.py -file - - - - -2012-06-22T20:34:47.645956Z -19a54ae9eb8d08b18063256ffb7c00eb -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -24977 - -0017_auto__add_field_repute_node__add_field_repute_canceled.py -file - - - - -2012-06-22T20:34:47.645956Z -b525cde405bf143df77b17b8e9328042 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -26731 - -0029_repute_dates.py -file - - - - -2012-06-22T20:34:47.653952Z -531908e93791b65d2f75554c8f959c64 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -20713 - -0007_q_and_a_to_node.py -file - - - - -2012-06-22T20:34:47.657950Z -5faa4491c0ae17581988e615db4e032b -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -38487 - -0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py -file - - - - -2012-06-22T20:34:47.657950Z -576b8dc1222b6c59483109acfbb7cfe9 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -36778 - -0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py -file - - - - -2012-06-22T20:34:47.661948Z -ad41750571a622119776c93ecf0b36bc -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -35290 - -0018_comments_to_node.py -file - - - - -2012-06-22T20:34:47.665946Z -a50455fa445fbad3f1590b5067d68566 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -28452 - -0012_set_active_revision.py -file - - - - -2012-06-22T20:34:47.717920Z -6cfca6eddc422c9da3e7bd1db1b75060 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -27801 - -0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py -file - - - - -2012-06-22T20:34:47.729914Z -4d4349de721486f0bd7b5316895146a3 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -26574 - -0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py -file - - - - -2012-06-22T20:34:47.729914Z -706c21ece44b87edc4f53d5696936344 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -23213 - -0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py -file - - - - -2012-06-22T20:34:47.733912Z -19bbd9aef1c0a3d86e71d697e0a7fd4e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21346 - -0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py -file - - - - -2012-06-22T20:34:47.733912Z -a251ff6efd707d5e1062831b0335c848 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -28446 - -0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py -file - - - - -2012-06-22T20:34:47.737910Z -b7141f6f3dfe394d95a61f8d84aba3ed -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22949 - -0027_auto__del_activity.py -file - - - - -2012-06-22T20:34:47.741908Z -e794cfd5ec1838bb6741b505d6dc9c7b -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -20916 - -0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py -file - - - - -2012-06-22T20:34:47.741908Z -55b4c105a825f80ee9d391910e7fcfbc -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22153 - -0046_set_tag_dates.py -file - - - - -2012-06-22T20:34:47.745906Z -895754a4171f76a49a39e8af0b6199ed -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22240 - -0049_auto__chg_field_user_reputation.py -file - - - - -2012-06-22T20:34:47.745906Z -5b8d09ec9e27e8a6b6d66e3f7bc90e83 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22033 - -0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py -file - - - - -2012-06-22T20:34:47.749904Z -f8f9b5de1b18bd2252e05b1efe362781 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -36563 - -0034_new_badge_and_award.py -file - - - - -2012-06-22T20:34:47.753902Z -feb11f22159296ece2342c129fed1d8b -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -24387 - -0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py -file - - - - -2012-06-22T20:34:47.753902Z -f1749e7a40a73f999a2b38e2693c4a2d -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22815 - -0044_markdown_cache_migration.py -file - - - - -2012-06-22T20:34:47.757900Z -f11e227ce7bf2ad2113f8ac8ea8a7428 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21786 - -0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py -file - - - - -2012-06-22T20:34:47.761898Z -5fe01d482f540fe13de43f861affd258 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21603 - -0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py -file - - - - -2012-06-22T20:34:47.761898Z -f75f8f250976e3d331ffced089e2d1a8 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -25638 - -0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py -file - - - - -2012-06-22T20:34:47.577990Z -084a85e3552bdead0d62ea6b981ecb74 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -30285 - -0009_convert_revisions.py -file - - - - -2012-06-22T20:34:47.581988Z -5378d37c9fa89b967c4540fa2b09a235 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -33985 - -0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py -file - - - - -2012-06-22T20:34:47.581988Z -f26111d49693814715b7a8d99c8eb854 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22108 - -0051_auto__chg_field_action_action_type.py -file - - - - -2012-06-22T20:34:47.585986Z -586e887c18578daebce846dd6c366ade -2011-07-02T14:04:43.918209Z -1092 -jordan - - - - - - - - - - - - - - - - - - - - - -22653 - -0023_flaten_node_inheritance_create_actions.py -file - - - - -2012-06-22T20:34:47.585986Z -df594f66cea41e16f46568bee6ef02af -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -38350 - -0003_repute_changes.py -file - - - - -2012-06-22T20:34:47.589984Z -37996a0dde43341250c13a6a936cf884 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -30211 - -0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py -file - - - - -2012-06-22T20:34:47.589984Z -11db8653d01e69583d241ede1cb1e80e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -28781 - -__init__.py -file - - - - -2012-06-22T20:34:47.593982Z -8ae90e931b75d094dacafd7e88848966 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -422 - -0011_auto__add_field_node_active_revision.py -file - - - - -2012-06-22T20:34:47.593982Z -7e27cc0b95f3346852d8cce54f6cfcf0 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -27670 - -0037_fill_node_state.py -file - - - - -2012-06-22T20:34:47.597980Z -bda27323b198e47f51c3520c01cd218c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -23936 - -0041_action_ip_fixes.py -file - - - - -2012-06-22T20:34:47.601978Z -8dbcec17cf6cc549be45d6e4b329c655 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22675 - -0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py -file - - - - -2012-06-22T20:34:47.601978Z -3db0ca22b26fa78098a5ef7c2db041a2 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -35494 - -0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py -file - - - - -2012-06-22T20:34:47.605976Z -a8f7f8ecfe0f8fe4da4056cf7c5801ef -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22948 - -0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py -file - - - - -2012-06-22T20:34:47.605976Z -d8dcffc230a9d367a937f4fe6e4a3264 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -24330 - -0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py -file - - - - -2012-06-22T20:34:47.613972Z -4df0b4470eef750fa4dda9b58f6042e8 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -27046 - -0026_reset_deleted_and_lastedited_flags.py -file - - - - -2012-06-22T20:34:47.609974Z -454968cd887e86975b84ddd686be6c5a -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21953 - -0005_fill_accepted_by_field.py -file - - - - -2012-06-22T20:34:47.609974Z -f4d077c4902b995299ab3e379cbbbf38 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -29632 - -0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py -file - - - - -2012-06-22T20:34:47.617970Z -05ca41f2b89f7bb125c98642f62563ce -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -20828 - -0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py -file - - - - -2012-06-22T20:34:47.621968Z -5b47b62a83f8a98e285e3cde02190d0c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -40482 - -0040_auto__chg_field_nodestate_action__add_field_node_extra.py -file - - - - -2012-06-22T20:34:47.617970Z -630e1ab68d9d1a4cd714a60c725affe8 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21566 - diff --git a/forum/migrations/.svn/prop-base/0001_initial.py.svn-base b/forum/migrations/.svn/prop-base/0001_initial.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0001_initial.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py.svn-base b/forum/migrations/.svn/prop-base/0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0003_repute_changes.py.svn-base b/forum/migrations/.svn/prop-base/0003_repute_changes.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0003_repute_changes.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py.svn-base b/forum/migrations/.svn/prop-base/0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0005_fill_accepted_by_field.py.svn-base b/forum/migrations/.svn/prop-base/0005_fill_accepted_by_field.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0005_fill_accepted_by_field.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py.svn-base b/forum/migrations/.svn/prop-base/0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0007_q_and_a_to_node.py.svn-base b/forum/migrations/.svn/prop-base/0007_q_and_a_to_node.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0007_q_and_a_to_node.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py.svn-base b/forum/migrations/.svn/prop-base/0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0009_convert_revisions.py.svn-base b/forum/migrations/.svn/prop-base/0009_convert_revisions.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0009_convert_revisions.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py.svn-base b/forum/migrations/.svn/prop-base/0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0011_auto__add_field_node_active_revision.py.svn-base b/forum/migrations/.svn/prop-base/0011_auto__add_field_node_active_revision.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0011_auto__add_field_node_active_revision.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0012_set_active_revision.py.svn-base b/forum/migrations/.svn/prop-base/0012_set_active_revision.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0012_set_active_revision.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py.svn-base b/forum/migrations/.svn/prop-base/0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0014_auto__add_field_question_accepted_answer.py.svn-base b/forum/migrations/.svn/prop-base/0014_auto__add_field_question_accepted_answer.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0014_auto__add_field_question_accepted_answer.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0015_accepted_answer_changes.py.svn-base b/forum/migrations/.svn/prop-base/0015_accepted_answer_changes.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0015_accepted_answer_changes.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py.svn-base b/forum/migrations/.svn/prop-base/0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0017_auto__add_field_repute_node__add_field_repute_canceled.py.svn-base b/forum/migrations/.svn/prop-base/0017_auto__add_field_repute_node__add_field_repute_canceled.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0017_auto__add_field_repute_node__add_field_repute_canceled.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0018_comments_to_node.py.svn-base b/forum/migrations/.svn/prop-base/0018_comments_to_node.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0018_comments_to_node.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py.svn-base b/forum/migrations/.svn/prop-base/0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0020_create_absolute_parents.py.svn-base b/forum/migrations/.svn/prop-base/0020_create_absolute_parents.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0020_create_absolute_parents.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0021_create_new_pg_fts_triggers.py.svn-base b/forum/migrations/.svn/prop-base/0021_create_new_pg_fts_triggers.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0021_create_new_pg_fts_triggers.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py.svn-base b/forum/migrations/.svn/prop-base/0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0023_flaten_node_inheritance_create_actions.py.svn-base b/forum/migrations/.svn/prop-base/0023_flaten_node_inheritance_create_actions.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0023_flaten_node_inheritance_create_actions.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py.svn-base b/forum/migrations/.svn/prop-base/0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py.svn-base b/forum/migrations/.svn/prop-base/0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0026_reset_deleted_and_lastedited_flags.py.svn-base b/forum/migrations/.svn/prop-base/0026_reset_deleted_and_lastedited_flags.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0026_reset_deleted_and_lastedited_flags.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0027_auto__del_activity.py.svn-base b/forum/migrations/.svn/prop-base/0027_auto__del_activity.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0027_auto__del_activity.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py.svn-base b/forum/migrations/.svn/prop-base/0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0029_repute_dates.py.svn-base b/forum/migrations/.svn/prop-base/0029_repute_dates.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0029_repute_dates.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py.svn-base b/forum/migrations/.svn/prop-base/0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0031_alter_pickle_storage.py.svn-base b/forum/migrations/.svn/prop-base/0031_alter_pickle_storage.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0031_alter_pickle_storage.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py.svn-base b/forum/migrations/.svn/prop-base/0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py.svn-base b/forum/migrations/.svn/prop-base/0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0034_new_badge_and_award.py.svn-base b/forum/migrations/.svn/prop-base/0034_new_badge_and_award.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0034_new_badge_and_award.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py.svn-base b/forum/migrations/.svn/prop-base/0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py.svn-base b/forum/migrations/.svn/prop-base/0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0037_fill_node_state.py.svn-base b/forum/migrations/.svn/prop-base/0037_fill_node_state.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0037_fill_node_state.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py.svn-base b/forum/migrations/.svn/prop-base/0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py.svn-base b/forum/migrations/.svn/prop-base/0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0040_auto__chg_field_nodestate_action__add_field_node_extra.py.svn-base b/forum/migrations/.svn/prop-base/0040_auto__chg_field_nodestate_action__add_field_node_extra.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0040_auto__chg_field_nodestate_action__add_field_node_extra.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0041_action_ip_fixes.py.svn-base b/forum/migrations/.svn/prop-base/0041_action_ip_fixes.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0041_action_ip_fixes.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0042_auto__add_userproperty.py.svn-base b/forum/migrations/.svn/prop-base/0042_auto__add_userproperty.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0042_auto__add_userproperty.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py.svn-base b/forum/migrations/.svn/prop-base/0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0044_markdown_cache_migration.py.svn-base b/forum/migrations/.svn/prop-base/0044_markdown_cache_migration.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0044_markdown_cache_migration.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py.svn-base b/forum/migrations/.svn/prop-base/0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0046_set_tag_dates.py.svn-base b/forum/migrations/.svn/prop-base/0046_set_tag_dates.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0046_set_tag_dates.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py.svn-base b/forum/migrations/.svn/prop-base/0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0048_zero_count_tags_fix.py.svn-base b/forum/migrations/.svn/prop-base/0048_zero_count_tags_fix.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0048_zero_count_tags_fix.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0049_auto__chg_field_user_reputation.py.svn-base b/forum/migrations/.svn/prop-base/0049_auto__chg_field_user_reputation.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0049_auto__chg_field_user_reputation.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py.svn-base b/forum/migrations/.svn/prop-base/0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/prop-base/__init__.py.svn-base b/forum/migrations/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/migrations/.svn/text-base/0001_initial.py.svn-base b/forum/migrations/.svn/text-base/0001_initial.py.svn-base deleted file mode 100644 index 52811f8bfb30d32367791dd79d6ed636e043826d..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0001_initial.py.svn-base +++ /dev/null @@ -1,764 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding model 'User' - db.create_table('forum_user', ( - ('website', self.gf('django.db.models.fields.URLField')(max_length=200, blank=True)), - ('user_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['auth.User'], unique=True, primary_key=True)), - ('hide_ignored_questions', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('is_approved', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('email_isvalid', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('real_name', self.gf('django.db.models.fields.CharField')(max_length=100, blank=True)), - ('about', self.gf('django.db.models.fields.TextField')(blank=True)), - ('silver', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('date_of_birth', self.gf('django.db.models.fields.DateField')(null=True, blank=True)), - ('reputation', self.gf('django.db.models.fields.PositiveIntegerField')(default=1)), - ('gravatar', self.gf('django.db.models.fields.CharField')(max_length=32)), - ('location', self.gf('django.db.models.fields.CharField')(max_length=100, blank=True)), - ('tag_filter_setting', self.gf('django.db.models.fields.CharField')(default='ignored', max_length=16)), - ('gold', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('last_seen', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('email_key', self.gf('django.db.models.fields.CharField')(max_length=32, null=True)), - ('bronze', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('questions_per_page', self.gf('django.db.models.fields.SmallIntegerField')(default=10)), - )) - db.send_create_signal('forum', ['User']) - - # Adding model 'Activity' - db.create_table(u'activity', ( - ('is_auditted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')()), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])), - ('active_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('activity_type', self.gf('django.db.models.fields.SmallIntegerField')()), - )) - db.send_create_signal('forum', ['Activity']) - - # Adding model 'SubscriptionSettings' - db.create_table('forum_subscriptionsettings', ( - ('questions_asked', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), - ('questions_viewed', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('notify_comments', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('new_question', self.gf('django.db.models.fields.CharField')(default='d', max_length=1)), - ('all_questions', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('new_question_watched_tags', self.gf('django.db.models.fields.CharField')(default='i', max_length=1)), - ('questions_answered', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), - ('notify_comments_own_post', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), - ('questions_commented', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('subscribed_questions', self.gf('django.db.models.fields.CharField')(default='i', max_length=1)), - ('notify_reply_to_comments', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), - ('member_joins', self.gf('django.db.models.fields.CharField')(default='n', max_length=1)), - ('user', self.gf('django.db.models.fields.related.OneToOneField')(related_name='subscription_settings', unique=True, to=orm['forum.User'])), - ('notify_answers', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), - ('enable_notifications', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), - ('all_questions_watched_tags', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('notify_accepted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - )) - db.send_create_signal('forum', ['SubscriptionSettings']) - - # Adding model 'ValidationHash' - db.create_table('forum_validationhash', ( - ('hash_code', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)), - ('seed', self.gf('django.db.models.fields.CharField')(max_length=12)), - ('expiration', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime(2010, 4, 7, 10, 36, 23, 812000))), - ('type', self.gf('django.db.models.fields.CharField')(max_length=12)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['ValidationHash']) - - # Adding unique constraint on 'ValidationHash', fields ['user', 'type'] - db.create_unique('forum_validationhash', ['user_id', 'type']) - - # Adding model 'AuthKeyUserAssociation' - db.create_table('forum_authkeyuserassociation', ( - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='auth_keys', to=orm['forum.User'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('key', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)), - ('provider', self.gf('django.db.models.fields.CharField')(max_length=64)), - )) - db.send_create_signal('forum', ['AuthKeyUserAssociation']) - - # Adding model 'Vote' - db.create_table(u'vote', ( - ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')()), - ('voted_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='votes', to=orm['forum.User'])), - ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])), - ('vote', self.gf('django.db.models.fields.SmallIntegerField')()), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['Vote']) - - # Adding unique constraint on 'Vote', fields ['content_type', 'object_id', 'user'] - db.create_unique(u'vote', ['content_type_id', 'object_id', 'user_id']) - - # Adding model 'FlaggedItem' - db.create_table(u'flagged_item', ( - ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')()), - ('flagged_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='flaggeditems', to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['FlaggedItem']) - - # Adding unique constraint on 'FlaggedItem', fields ['content_type', 'object_id', 'user'] - db.create_unique(u'flagged_item', ['content_type_id', 'object_id', 'user_id']) - - # Adding model 'Comment' - db.create_table(u'comment', ( - ('comment', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')()), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='comments', to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['Comment']) - - # Adding model 'Tag' - db.create_table(u'tag', ( - ('name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)), - ('deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('created_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='created_tags', to=orm['forum.User'])), - ('deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='deleted_tags', null=True, to=orm['forum.User'])), - ('used_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)), - ('deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['Tag']) - - # Adding model 'MarkedTag' - db.create_table('forum_markedtag', ( - ('reason', self.gf('django.db.models.fields.CharField')(max_length=16)), - ('tag', self.gf('django.db.models.fields.related.ForeignKey')(related_name='user_selections', to=orm['forum.Tag'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='tag_selections', to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['MarkedTag']) - - # Adding model 'Question' - db.create_table(u'question', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('vote_up_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('answer_accepted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('offensive_flag_count', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('closed_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('last_activity_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='last_active_in_questions', to=orm['forum.User'])), - ('view_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('locked_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('score', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='questions', to=orm['forum.User'])), - ('comment_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)), - ('html', self.gf('django.db.models.fields.TextField')()), - ('vote_down_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('closed', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('last_edited_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='last_edited_questions', null=True, to=orm['forum.User'])), - ('favourite_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=180)), - ('answer_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)), - ('last_activity_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('closed_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='closed_questions', null=True, to=orm['forum.User'])), - ('close_reason', self.gf('django.db.models.fields.SmallIntegerField')(null=True, blank=True)), - ('locked', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('tagnames', self.gf('django.db.models.fields.CharField')(max_length=125)), - ('locked_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='locked_questions', null=True, to=orm['forum.User'])), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='deleted_questions', null=True, to=orm['forum.User'])), - ('wikified_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('title', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('last_edited_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - )) - db.send_create_signal('forum', ['Question']) - - # Adding M2M table for field followed_by on 'Question' - db.create_table(u'question_followed_by', ( - ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), - ('question', models.ForeignKey(orm['forum.question'], null=False)), - ('user', models.ForeignKey(orm['forum.user'], null=False)) - )) - db.create_unique(u'question_followed_by', ['question_id', 'user_id']) - - # Adding M2M table for field tags on 'Question' - db.create_table(u'question_tags', ( - ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), - ('question', models.ForeignKey(orm['forum.question'], null=False)), - ('tag', models.ForeignKey(orm['forum.tag'], null=False)) - )) - db.create_unique(u'question_tags', ['question_id', 'tag_id']) - - # Adding model 'QuestionSubscription' - db.create_table('forum_questionsubscription', ( - ('last_view', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime(2010, 4, 6, 10, 36, 23, 725000))), - ('auto_subscription', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Question'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['QuestionSubscription']) - - # Adding model 'FavoriteQuestion' - db.create_table(u'favorite_question', ( - ('question', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Question'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='user_favorite_questions', to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['FavoriteQuestion']) - - # Adding model 'QuestionRevision' - db.create_table(u'question_revision', ( - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='questionrevisions', to=orm['forum.User'])), - ('tagnames', self.gf('django.db.models.fields.CharField')(max_length=125)), - ('text', self.gf('django.db.models.fields.TextField')()), - ('title', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(related_name='revisions', to=orm['forum.Question'])), - ('revised_at', self.gf('django.db.models.fields.DateTimeField')()), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=300, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('revision', self.gf('django.db.models.fields.PositiveIntegerField')()), - )) - db.send_create_signal('forum', ['QuestionRevision']) - - # Adding model 'AnonymousQuestion' - db.create_table('forum_anonymousquestion', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('ip_addr', self.gf('django.db.models.fields.IPAddressField')(max_length=15)), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'], null=True)), - ('tagnames', self.gf('django.db.models.fields.CharField')(max_length=125)), - ('text', self.gf('django.db.models.fields.TextField')()), - ('title', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=180)), - ('session_key', self.gf('django.db.models.fields.CharField')(max_length=40)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['AnonymousQuestion']) - - # Adding model 'Answer' - db.create_table(u'answer', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('vote_up_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('offensive_flag_count', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('locked_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('score', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='answers', to=orm['forum.User'])), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(related_name='answers', to=orm['forum.Question'])), - ('comment_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)), - ('html', self.gf('django.db.models.fields.TextField')()), - ('vote_down_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('last_edited_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='last_edited_answers', null=True, to=orm['forum.User'])), - ('accepted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('accepted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('locked', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('locked_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='locked_answers', null=True, to=orm['forum.User'])), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='deleted_answers', null=True, to=orm['forum.User'])), - ('wikified_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('last_edited_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - )) - db.send_create_signal('forum', ['Answer']) - - # Adding model 'AnswerRevision' - db.create_table(u'answer_revision', ( - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='answerrevisions', to=orm['forum.User'])), - ('text', self.gf('django.db.models.fields.TextField')()), - ('revised_at', self.gf('django.db.models.fields.DateTimeField')()), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=300, blank=True)), - ('answer', self.gf('django.db.models.fields.related.ForeignKey')(related_name='revisions', to=orm['forum.Answer'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('revision', self.gf('django.db.models.fields.PositiveIntegerField')()), - )) - db.send_create_signal('forum', ['AnswerRevision']) - - # Adding model 'AnonymousAnswer' - db.create_table('forum_anonymousanswer', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('ip_addr', self.gf('django.db.models.fields.IPAddressField')(max_length=15)), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'], null=True)), - ('text', self.gf('django.db.models.fields.TextField')()), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(related_name='anonymous_answers', to=orm['forum.Question'])), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=180)), - ('session_key', self.gf('django.db.models.fields.CharField')(max_length=40)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['AnonymousAnswer']) - - # Adding model 'Badge' - db.create_table(u'badge', ( - ('multiple', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('description', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('awarded_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)), - ('type', self.gf('django.db.models.fields.SmallIntegerField')()), - ('slug', self.gf('django.db.models.fields.SlugField')(db_index=True, max_length=50, blank=True)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=50)), - )) - db.send_create_signal('forum', ['Badge']) - - # Adding unique constraint on 'Badge', fields ['name', 'type'] - db.create_unique(u'badge', ['name', 'type']) - - # Adding model 'Award' - db.create_table(u'award', ( - ('awarded_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('notified', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')()), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='awards', to=orm['forum.User'])), - ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])), - ('badge', self.gf('django.db.models.fields.related.ForeignKey')(related_name='award_badge', to=orm['forum.Badge'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['Award']) - - # Adding unique constraint on 'Award', fields ['content_type', 'object_id', 'user', 'badge'] - db.create_unique(u'award', ['content_type_id', 'object_id', 'user_id', 'badge_id']) - - # Adding model 'Repute' - db.create_table(u'repute', ( - ('positive', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Question'])), - ('negative', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('reputation_type', self.gf('django.db.models.fields.SmallIntegerField')()), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - ('reputed_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('reputation', self.gf('django.db.models.fields.IntegerField')(default=1)), - )) - db.send_create_signal('forum', ['Repute']) - - # Adding model 'KeyValue' - db.create_table('forum_keyvalue', ( - ('value', self.gf('forum.models.utils.PickledObjectField')()), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('key', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)), - )) - db.send_create_signal('forum', ['KeyValue']) - - - def backwards(self, orm): - - # Deleting model 'User' - db.delete_table('forum_user') - - # Deleting model 'Activity' - db.delete_table(u'activity') - - # Deleting model 'SubscriptionSettings' - db.delete_table('forum_subscriptionsettings') - - # Deleting model 'ValidationHash' - db.delete_table('forum_validationhash') - - # Removing unique constraint on 'ValidationHash', fields ['user', 'type'] - db.delete_unique('forum_validationhash', ['user_id', 'type']) - - # Deleting model 'AuthKeyUserAssociation' - db.delete_table('forum_authkeyuserassociation') - - # Deleting model 'Vote' - db.delete_table(u'vote') - - # Removing unique constraint on 'Vote', fields ['content_type', 'object_id', 'user'] - db.delete_unique(u'vote', ['content_type_id', 'object_id', 'user_id']) - - # Deleting model 'FlaggedItem' - db.delete_table(u'flagged_item') - - # Removing unique constraint on 'FlaggedItem', fields ['content_type', 'object_id', 'user'] - db.delete_unique(u'flagged_item', ['content_type_id', 'object_id', 'user_id']) - - # Deleting model 'Comment' - db.delete_table(u'comment') - - # Deleting model 'Tag' - db.delete_table(u'tag') - - # Deleting model 'MarkedTag' - db.delete_table('forum_markedtag') - - # Deleting model 'Question' - db.delete_table(u'question') - - # Removing M2M table for field followed_by on 'Question' - db.delete_table('question_followed_by') - - # Removing M2M table for field tags on 'Question' - db.delete_table('question_tags') - - # Deleting model 'QuestionSubscription' - db.delete_table('forum_questionsubscription') - - # Deleting model 'FavoriteQuestion' - db.delete_table(u'favorite_question') - - # Deleting model 'QuestionRevision' - db.delete_table(u'question_revision') - - # Deleting model 'AnonymousQuestion' - db.delete_table('forum_anonymousquestion') - - # Deleting model 'Answer' - db.delete_table(u'answer') - - # Deleting model 'AnswerRevision' - db.delete_table(u'answer_revision') - - # Deleting model 'AnonymousAnswer' - db.delete_table('forum_anonymousanswer') - - # Deleting model 'Badge' - db.delete_table(u'badge') - - # Removing unique constraint on 'Badge', fields ['name', 'type'] - db.delete_unique(u'badge', ['name', 'type']) - - # Deleting model 'Award' - db.delete_table(u'award') - - # Removing unique constraint on 'Award', fields ['content_type', 'object_id', 'user', 'badge'] - db.delete_unique(u'award', ['content_type_id', 'object_id', 'user_id', 'badge_id']) - - # Deleting model 'Repute' - db.delete_table(u'repute') - - # Deleting model 'KeyValue' - db.delete_table('forum_keyvalue') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'locked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'locked_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'locked_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'locked_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user'),)", 'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'locked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'locked_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'locked_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'locked_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 6, 10, 36, 23, 725000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'negative': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'positive': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation': ('django.db.models.fields.IntegerField', [], {'default': '1'}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'gravatar': ('django.db.models.fields.CharField', [], {'max_length': '32'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'tag_filter_setting': ('django.db.models.fields.CharField', [], {'default': "'ignored'", 'max_length': '16'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 7, 10, 36, 23, 863000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user'),)", 'object_name': 'Vote', 'db_table': "u'vote'"}, - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py.svn-base b/forum/migrations/.svn/text-base/0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py.svn-base deleted file mode 100644 index c914809c579b87636daee34fb7826d8d59cd2c03..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0002_auto__add_likedcomment__del_field_repute_positive__del_field_repute_ne.py.svn-base +++ /dev/null @@ -1,481 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding model 'LikedComment' - db.create_table('forum_likedcomment', ( - ('comment', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Comment'])), - ('canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['LikedComment']) - - # Adding field 'Repute.value' - db.add_column(u'repute', 'value', self.gf('django.db.models.fields.SmallIntegerField')(default=0), keep_default=False) - - # Adding field 'Repute.user_previous_rep' - db.add_column(u'repute', 'user_previous_rep', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Vote.canceled' - db.add_column(u'vote', 'canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Removing unique constraint on 'Vote', fields ['object_id', 'content_type', 'user'] - db.delete_unique(u'vote', ['object_id', 'content_type_id', 'user_id']) - - # Adding field 'Comment.deleted' - db.add_column(u'comment', 'deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Comment.deleted_by' - db.add_column(u'comment', 'deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='deleted_comments', null=True, to=orm['forum.User']), keep_default=False) - - # Adding field 'Comment.score' - db.add_column(u'comment', 'score', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Comment.deleted_at' - db.add_column(u'comment', 'deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Deleting field 'Answer.locked_at' - db.delete_column(u'answer', 'locked_at') - - # Deleting field 'Answer.locked' - db.delete_column(u'answer', 'locked') - - # Deleting field 'Answer.locked_by' - db.delete_column(u'answer', 'locked_by_id') - - # Adding field 'Answer.accepted_by' - db.add_column(u'answer', 'accepted_by', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'], null=True), keep_default=False) - - # Adding field 'FlaggedItem.canceled' - db.add_column(u'flagged_item', 'canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'FlaggedItem.reason' - db.add_column(u'flagged_item', 'reason', self.gf('django.db.models.fields.CharField')(max_length=300, null=True), keep_default=False) - - # Removing unique constraint on 'FlaggedItem', fields ['object_id', 'content_type', 'user'] - db.delete_unique(u'flagged_item', ['object_id', 'content_type_id', 'user_id']) - - # Adding unique constraint on 'FavoriteQuestion', fields ['question', 'user'] - db.create_unique(u'favorite_question', ['question_id', 'user_id']) - - # Deleting field 'User.gravatar' - db.delete_column('forum_user', 'gravatar') - - # Deleting field 'User.tag_filter_setting' - db.delete_column('forum_user', 'tag_filter_setting') - - # Deleting field 'Question.locked_at' - db.delete_column(u'question', 'locked_at') - - # Deleting field 'Question.locked' - db.delete_column(u'question', 'locked') - - # Deleting field 'Question.locked_by' - db.delete_column(u'question', 'locked_by_id') - - - def backwards(self, orm): - - # Deleting model 'LikedComment' - db.delete_table('forum_likedcomment') - - # Deleting field 'Repute.value' - db.delete_column(u'repute', 'value') - - # Deleting field 'Repute.user_previous_rep' - db.delete_column(u'repute', 'user_previous_rep') - - # Deleting field 'Vote.canceled' - db.delete_column(u'vote', 'canceled') - - # Adding unique constraint on 'Vote', fields ['object_id', 'content_type', 'user'] - db.create_unique(u'vote', ['object_id', 'content_type_id', 'user_id']) - - # Deleting field 'Comment.deleted' - db.delete_column(u'comment', 'deleted') - - # Deleting field 'Comment.deleted_by' - db.delete_column(u'comment', 'deleted_by_id') - - # Deleting field 'Comment.score' - db.delete_column(u'comment', 'score') - - # Deleting field 'Comment.deleted_at' - db.delete_column(u'comment', 'deleted_at') - - # Adding field 'Answer.locked_at' - db.add_column(u'answer', 'locked_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Adding field 'Answer.locked' - db.add_column(u'answer', 'locked', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Answer.locked_by' - db.add_column(u'answer', 'locked_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='locked_answers', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Deleting field 'Answer.accepted_by' - db.delete_column(u'answer', 'accepted_by_id') - - # Deleting field 'FlaggedItem.canceled' - db.delete_column(u'flagged_item', 'canceled') - - # Deleting field 'FlaggedItem.reason' - db.delete_column(u'flagged_item', 'reason') - - # Adding unique constraint on 'FlaggedItem', fields ['object_id', 'content_type', 'user'] - db.create_unique(u'flagged_item', ['object_id', 'content_type_id', 'user_id']) - - # Removing unique constraint on 'FavoriteQuestion', fields ['question', 'user'] - db.delete_unique(u'favorite_question', ['question_id', 'user_id']) - - # Adding field 'User.gravatar' - db.add_column('forum_user', 'gravatar', self.gf('django.db.models.fields.CharField')(default='', max_length=32), keep_default=False) - - # Adding field 'User.tag_filter_setting' - db.add_column('forum_user', 'tag_filter_setting', self.gf('django.db.models.fields.CharField')(default='ignored', max_length=16), keep_default=False) - - # Adding field 'Question.locked_at' - db.add_column(u'question', 'locked_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Adding field 'Question.locked' - db.add_column(u'question', 'locked', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Question.locked_by' - db.add_column(u'question', 'locked_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='locked_questions', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 6, 11, 11, 44, 616000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'negative': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'positive': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'reputation': ('django.db.models.fields.IntegerField', [], {'default': '1'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 7, 11, 11, 52, 402000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0003_repute_changes.py.svn-base b/forum/migrations/.svn/text-base/0003_repute_changes.py.svn-base deleted file mode 100644 index f7ab5a645d4e77daf8cd0e1aa8f1fa998fb1c13f..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0003_repute_changes.py.svn-base +++ /dev/null @@ -1,355 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models - -class Migration(DataMigration): - - def forwards(self, orm): - for r in orm.Repute.objects.all(): - r.value = r.positive + r.negative - r.user_previous_rep = r.reputation - r.value - r.save() - - - def backwards(self, orm): - for r in orm.Repute.objects.all(): - if r.value > 0: - r.positive = r.value - r.negative = 0 - else: - r.positive = 0 - r.negative = r.value - - r.reputation = r.user_previous_rep + r.value - r.save() - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 6, 11, 30, 3, 497000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'negative': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'positive': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation': ('django.db.models.fields.IntegerField', [], {'default': '1'}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 7, 11, 30, 3, 573000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py.svn-base b/forum/migrations/.svn/text-base/0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py.svn-base deleted file mode 100644 index 68c25385585149c4e6158ff307b071154480d15d..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0004_auto__del_field_repute_negative__del_field_repute_positive__del_field_.py.svn-base +++ /dev/null @@ -1,357 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting field 'Repute.negative' - db.delete_column(u'repute', 'negative') - - # Deleting field 'Repute.positive' - db.delete_column(u'repute', 'positive') - - # Deleting field 'Repute.reputation' - db.delete_column(u'repute', 'reputation') - - - def backwards(self, orm): - - # Adding field 'Repute.negative' - db.add_column(u'repute', 'negative', self.gf('django.db.models.fields.SmallIntegerField')(default=0), keep_default=False) - - # Adding field 'Repute.positive' - db.add_column(u'repute', 'positive', self.gf('django.db.models.fields.SmallIntegerField')(default=0), keep_default=False) - - # Adding field 'Repute.reputation' - db.add_column(u'repute', 'reputation', self.gf('django.db.models.fields.IntegerField')(default=1), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 6, 11, 40, 26, 816000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 7, 11, 40, 27, 72000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0005_fill_accepted_by_field.py.svn-base b/forum/migrations/.svn/text-base/0005_fill_accepted_by_field.py.svn-base deleted file mode 100644 index 377226727dfcc561740f344d31793abc8ec3c5fc..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0005_fill_accepted_by_field.py.svn-base +++ /dev/null @@ -1,341 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models - -class Migration(DataMigration): - - def forwards(self, orm): - for a in orm.Answer.objects.filter(accepted=True): - a.accepted_by = a.question.author - a.save() - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 6, 11, 46, 14, 452000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 7, 11, 46, 14, 538000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py.svn-base b/forum/migrations/.svn/text-base/0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py.svn-base deleted file mode 100644 index a7303a4003d09cd265fd621bdba731930c299fbe..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0006_auto__add_node__add_field_vote_node__add_field_comment_node__add_field.py.svn-base +++ /dev/null @@ -1,433 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding model 'Node' - db.create_table('forum_node', ( - ('body', self.gf('django.db.models.fields.TextField')()), - ('vote_up_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('parent', self.gf('django.db.models.fields.related.ForeignKey')(related_name='childs', null=True, to=orm['forum.Node'])), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='nodes', to=orm['forum.User'])), - ('deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('title', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('comment_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='deleted_nodes', null=True, to=orm['forum.User'])), - ('tagnames', self.gf('django.db.models.fields.CharField')(max_length=125)), - ('node_type', self.gf('django.db.models.fields.CharField')(default='node', max_length=16)), - ('score', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('vote_down_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('offensive_flag_count', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('last_edited_by', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='last_edited_nodes', null=True, to=orm['forum.User'])), - ('deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('last_edited_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - )) - db.send_create_signal('forum', ['Node']) - - # Adding M2M table for field tags on 'Node' - db.create_table('forum_node_tags', ( - ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), - ('node', models.ForeignKey(orm['forum.node'], null=False)), - ('tag', models.ForeignKey(orm['forum.tag'], null=False)) - )) - db.create_unique('forum_node_tags', ['node_id', 'tag_id']) - - # Adding field 'Vote.node' - db.add_column(u'vote', 'node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='votes', null=True, to=orm['forum.Node']), keep_default=False) - - # Adding field 'Comment.node' - db.add_column(u'comment', 'node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='comments', null=True, to=orm['forum.Node']), keep_default=False) - - # Adding field 'Answer.node_ptr' - db.add_column(u'answer', 'node_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, null=True), keep_default=False) - - # Adding field 'FlaggedItem.node' - db.add_column(u'flagged_item', 'node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='flaggeditems', null=True, to=orm['forum.Node']), keep_default=False) - - # Adding field 'Question.node_ptr' - db.add_column(u'question', 'node_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, null=True), keep_default=False) - - - def backwards(self, orm): - - # Deleting model 'Node' - db.delete_table('forum_node') - - # Removing M2M table for field tags on 'Node' - db.delete_table('forum_node_tags') - - # Deleting field 'Vote.node' - db.delete_column(u'vote', 'node_id') - - # Deleting field 'Comment.node' - db.delete_column(u'comment', 'node_id') - - # Deleting field 'Answer.node_ptr' - db.delete_column(u'answer', 'node_ptr_id') - - # Deleting field 'FlaggedItem.node' - db.delete_column(u'flagged_item', 'node_id') - - # Deleting field 'Question.node_ptr' - db.delete_column(u'question', 'node_ptr_id') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'childs'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 1, 28, 41, 733000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 1, 28, 41, 976000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0007_q_and_a_to_node.py.svn-base b/forum/migrations/.svn/text-base/0007_q_and_a_to_node.py.svn-base deleted file mode 100644 index e952691c020dc6bf3846f3e50b5ad0658d17f9f9..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0007_q_and_a_to_node.py.svn-base +++ /dev/null @@ -1,549 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - #Converting questions - question_count = orm.Question.objects.all().count() - print "\nConverting %d questions:" % question_count - progress = ProgressBar(question_count) - - question_id_map = {} - - for q in orm.Question.objects.order_by('id'): - node = orm.Node( - node_type='question', - author=q.author, - added_at=q.added_at, - score=q.score, - vote_up_count=q.vote_up_count, - vote_down_count=q.vote_down_count, - offensive_flag_count=q.offensive_flag_count, - last_edited_at=q.last_edited_at, - last_edited_by=q.last_edited_by, - title=q.title, - body=q.html, - deleted=q.deleted, - deleted_by=q.deleted_by, - deleted_at=q.deleted_at, - tagnames=q.tagnames, - comment_count=q.comment_count, - ) - - node.save() - q.node_ptr = node - q.save() - node.tags = q.tags.all() - - question_id_map[q.id] = node - progress.update() - - print "\n...done\n" - - #Converting answers - answer_count = orm.Answer.objects.all().count() - print "Converting %d answers:" % answer_count - progress = ProgressBar(answer_count) - - answer_id_map = {} - - for a in orm.Answer.objects.order_by('id'): - node = orm.Node( - node_type='answer', - parent=question_id_map[a.question.id], - author=a.author, - added_at=a.added_at, - score=a.score, - vote_up_count=a.vote_up_count, - vote_down_count=a.vote_down_count, - offensive_flag_count=a.offensive_flag_count, - last_edited_at=a.last_edited_at, - last_edited_by=a.last_edited_by, - body=a.html, - deleted=a.deleted, - deleted_by=a.deleted_by, - deleted_at=a.deleted_at, - comment_count=a.comment_count, - ) - - node.save() - a.node_ptr = node - a.save() - answer_id_map[a.id] = node - progress.update() - - print "\n...done\n" - - ctypes = dict([(ct.name, ct.id) for ct in orm['contenttypes.ContentType'].objects.all()]) - - #Converting votes - vote_count = orm.Vote.objects.all().count() - print "Converting %d vote references:" % vote_count - progress = ProgressBar(vote_count) - orfan_count = 0 - - for v in orm.Vote.objects.all(): - node = (v.content_type.id == ctypes['question']) and question_id_map.get(v.object_id, None) \ - or answer_id_map.get(v.object_id, None) - - if node: - v.node = node - v.save() - else: - v.delete() - orfan_count += 1 - - progress.update() - - if orfan_count: - print "Deleted %d orfan votes" - - print "\n...done\n" - - #Converting flags - flag_count = orm.FlaggedItem.objects.all().count() - print "Converting %d flag references:" % flag_count - progress = ProgressBar(flag_count) - orfan_count = 0 - - for f in orm.FlaggedItem.objects.all(): - node = (f.content_type.id == ctypes['question']) and question_id_map.get(f.object_id, None) \ - or answer_id_map.get(f.object_id, None) - - if node: - f.node = node - f.save() - else: - f.delete() - orfan_count += 1 - - progress.update() - - if orfan_count: - print "Deleted %d orfan votes" - - print "\n...done\n" - - #Converting comments - comment_count = orm.Comment.objects.all().count() - print "Converting %d comment references:" % comment_count - progress = ProgressBar(comment_count) - orfan_count = 0 - - for c in orm.Comment.objects.all(): - node = (c.content_type.id == ctypes['question']) and question_id_map.get(c.object_id, None) \ - or answer_id_map.get(c.object_id, None) - - if node: - c.node = node - c.save() - else: - c.delete() - orfan_count += 1 - - progress.update() - - if orfan_count: - print "Deleted %d orfan comments" - - print "\n...done\n" - - - #Converting awards - awards = orm.Award.objects.filter(content_type__id__in=(ctypes['question'], ctypes['answer'])) - award_count = awards.count() - print "Converting %d award references:" % award_count - progress = ProgressBar(award_count) - - for a in awards: - node = (a.content_type.id == ctypes['question']) and question_id_map.get(a.object_id, None) \ - or answer_id_map.get(a.object_id, None) - - if node: - a.object_id = node.id - a.save() - - progress.update() - - print "\n...done\n" - - - #Converting activity - activities = orm.Activity.objects.filter(content_type__id__in=(ctypes['question'], ctypes['answer'])) - activity_count = activities.count() - print "Converting %d activity references:" % activity_count - progress = ProgressBar(activity_count) - - for a in activities: - node = (a.content_type.id == ctypes['question']) and question_id_map.get(a.object_id, None) \ - or answer_id_map.get(a.object_id, None) - - if node: - a.object_id = node.id - a.save() - - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'childs'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 1, 29, 43, 727000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 1, 29, 43, 815000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py.svn-base b/forum/migrations/.svn/text-base/0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py.svn-base deleted file mode 100644 index 141aca123ad045b7d948781ae43a960eb58d5163..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0008_auto__add_noderevision__del_field_vote_object_id__del_field_vote_conte.py.svn-base +++ /dev/null @@ -1,424 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding model 'NodeRevision' - db.create_table('forum_noderevision', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='revisions', to=orm['forum.Node'])), - ('body', self.gf('django.db.models.fields.TextField')()), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='noderevisions', to=orm['forum.User'])), - ('tagnames', self.gf('django.db.models.fields.CharField')(max_length=125)), - ('title', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('revised_at', self.gf('django.db.models.fields.DateTimeField')()), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('revision', self.gf('django.db.models.fields.PositiveIntegerField')()), - )) - db.send_create_signal('forum', ['NodeRevision']) - - # Deleting field 'Vote.object_id' - db.delete_column(u'vote', 'object_id') - - # Deleting field 'Vote.content_type' - db.delete_column(u'vote', 'content_type_id') - - # Deleting field 'Comment.object_id' - db.delete_column(u'comment', 'object_id') - - # Deleting field 'Comment.content_type' - db.delete_column(u'comment', 'content_type_id') - - # Deleting field 'FlaggedItem.object_id' - db.delete_column(u'flagged_item', 'object_id') - - # Deleting field 'FlaggedItem.content_type' - db.delete_column(u'flagged_item', 'content_type_id') - - - def backwards(self, orm): - - # Deleting model 'NodeRevision' - db.delete_table('forum_noderevision') - - # Adding field 'Vote.object_id' - db.add_column(u'vote', 'object_id', self.gf('django.db.models.fields.PositiveIntegerField')(default=1), keep_default=False) - - # Adding field 'Vote.content_type' - db.add_column(u'vote', 'content_type', self.gf('django.db.models.fields.related.ForeignKey')(default=1, to=orm['contenttypes.ContentType']), keep_default=False) - - # Adding field 'Comment.object_id' - db.add_column(u'comment', 'object_id', self.gf('django.db.models.fields.PositiveIntegerField')(default=1), keep_default=False) - - # Adding field 'Comment.content_type' - db.add_column(u'comment', 'content_type', self.gf('django.db.models.fields.related.ForeignKey')(default=1, to=orm['contenttypes.ContentType']), keep_default=False) - - # Adding field 'FlaggedItem.object_id' - db.add_column(u'flagged_item', 'object_id', self.gf('django.db.models.fields.PositiveIntegerField')(default=1), keep_default=False) - - # Adding field 'FlaggedItem.content_type' - db.add_column(u'flagged_item', 'content_type', self.gf('django.db.models.fields.related.ForeignKey')(default=1, to=orm['contenttypes.ContentType']), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'childs'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 12, 14, 26, 755000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 12, 14, 35, 357000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0009_convert_revisions.py.svn-base b/forum/migrations/.svn/text-base/0009_convert_revisions.py.svn-base deleted file mode 100644 index c057dad3c5f8a31ba5af6056a91f6fca902fd407..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0009_convert_revisions.py.svn-base +++ /dev/null @@ -1,414 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - #Converting question revisions - qr_count = orm.QuestionRevision.objects.all().count() - print "\nConverting %d question revisions:" % qr_count - progress = ProgressBar(qr_count) - - for q in orm.QuestionRevision.objects.order_by('id'): - revision = orm.NodeRevision( - node=q.question.node_ptr, - title=q.title, - summary=q.summary, - tagnames=q.tagnames, - revision=q.revision, - author=q.author, - revised_at=q.revised_at, - body=q.text, - ) - - revision.save() - progress.update() - - print "\n...done\n" - - - #Converting answer revisions - ar_count = orm.AnswerRevision.objects.all().count() - print "\nConverting %d answer revisions:" % ar_count - progress = ProgressBar(ar_count) - - for a in orm.AnswerRevision.objects.order_by('id'): - revision = orm.NodeRevision( - summary=a.summary, - node=a.answer.node_ptr, - revision=a.revision, - author=a.author, - revised_at=a.revised_at, - body=a.text, - ) - - revision.save() - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_answers'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answers'", 'to': "orm['forum.Question']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.answerrevision': { - 'Meta': {'object_name': 'AnswerRevision', 'db_table': "u'answer_revision'"}, - 'answer': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Answer']"}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'answerrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'text': ('django.db.models.fields.TextField', [], {}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'childs'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questions'", 'to': "orm['forum.User']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_questions'", 'to': "orm['forum.User']"}), - 'html': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'null': 'True'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'questions'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionrevision': { - 'Meta': {'object_name': 'QuestionRevision', 'db_table': "u'question_revision'"}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'questionrevisions'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Question']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 12, 14, 26, 755000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 12, 14, 35, 357000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py.svn-base b/forum/migrations/.svn/text-base/0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py.svn-base deleted file mode 100644 index 589565b026101f748ea011ea5fa3d58f405aaa2e..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0010_auto__del_questionrevision__del_answerrevision__del_field_answer_vote_.py.svn-base +++ /dev/null @@ -1,576 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting model 'QuestionRevision' - db.delete_table(u'question_revision') - - # Deleting model 'AnswerRevision' - db.delete_table(u'answer_revision') - - # Deleting field 'Answer.vote_up_count' - db.delete_column(u'answer', 'vote_up_count') - - # Deleting field 'Answer.author' - db.delete_column(u'answer', 'author_id') - - # Deleting field 'Answer.deleted' - db.delete_column(u'answer', 'deleted') - - # Deleting field 'Answer.question' - db.delete_column(u'answer', 'question_id') - - # Deleting field 'Answer.html' - db.delete_column(u'answer', 'html') - - # Deleting field 'Answer.offensive_flag_count' - db.delete_column(u'answer', 'offensive_flag_count') - - # Deleting field 'Answer.deleted_by' - db.delete_column(u'answer', 'deleted_by_id') - - # Deleting field 'Answer.comment_count' - db.delete_column(u'answer', 'comment_count') - - # Deleting field 'Answer.score' - db.delete_column(u'answer', 'score') - - # Deleting field 'Answer.vote_down_count' - db.delete_column(u'answer', 'vote_down_count') - - # Deleting field 'Answer.added_at' - db.delete_column(u'answer', 'added_at') - - # Deleting field 'Answer.last_edited_by' - db.delete_column(u'answer', 'last_edited_by_id') - - # Deleting field 'Answer.deleted_at' - db.delete_column(u'answer', 'deleted_at') - - # Deleting field 'Answer.id' - db.delete_column(u'answer', 'id') - - # Deleting field 'Answer.last_edited_at' - db.delete_column(u'answer', 'last_edited_at') - - # Changing field 'Answer.node_ptr' - db.alter_column(u'answer', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True)) - db.create_primary_key(u'answer', ['node_ptr_id']) - - # Deleting field 'Question.vote_up_count' - db.delete_column(u'question', 'vote_up_count') - - # Deleting field 'Question.offensive_flag_count' - db.delete_column(u'question', 'offensive_flag_count') - - # Deleting field 'Question.summary' - db.delete_column(u'question', 'summary') - - # Deleting field 'Question.id' - db.delete_column(u'question', 'id') - - # Deleting field 'Question.deleted_at' - db.delete_column(u'question', 'deleted_at') - - # Deleting field 'Question.score' - db.delete_column(u'question', 'score') - - # Deleting field 'Question.author' - db.delete_column(u'question', 'author_id') - - # Deleting field 'Question.comment_count' - db.delete_column(u'question', 'comment_count') - - # Deleting field 'Question.html' - db.delete_column(u'question', 'html') - - # Deleting field 'Question.vote_down_count' - db.delete_column(u'question', 'vote_down_count') - - # Deleting field 'Question.last_edited_by' - db.delete_column(u'question', 'last_edited_by_id') - - # Deleting field 'Question.deleted' - db.delete_column(u'question', 'deleted') - - # Deleting field 'Question.tagnames' - db.delete_column(u'question', 'tagnames') - - # Deleting field 'Question.title' - db.delete_column(u'question', 'title') - - # Deleting field 'Question.added_at' - db.delete_column(u'question', 'added_at') - - # Deleting field 'Question.deleted_by' - db.delete_column(u'question', 'deleted_by_id') - - # Deleting field 'Question.last_edited_at' - db.delete_column(u'question', 'last_edited_at') - - # Removing M2M table for field followed_by on 'Question' - db.delete_table('question_followed_by') - - # Removing M2M table for field tags on 'Question' - db.delete_table('question_tags') - - # Changing field 'Question.node_ptr' - db.alter_column(u'question', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True)) - db.create_primary_key(u'question', ['node_ptr_id']) - - - def backwards(self, orm): - - # Adding model 'QuestionRevision' - db.create_table(u'question_revision', ( - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='questionrevisions', to=orm['forum.User'])), - ('tagnames', self.gf('django.db.models.fields.CharField')(max_length=125)), - ('text', self.gf('django.db.models.fields.TextField')()), - ('title', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(related_name='revisions', to=orm['forum.Question'])), - ('revised_at', self.gf('django.db.models.fields.DateTimeField')()), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=300, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('revision', self.gf('django.db.models.fields.PositiveIntegerField')()), - )) - db.send_create_signal('forum', ['QuestionRevision']) - - # Adding model 'AnswerRevision' - db.create_table(u'answer_revision', ( - ('author', self.gf('django.db.models.fields.related.ForeignKey')(related_name='answerrevisions', to=orm['forum.User'])), - ('text', self.gf('django.db.models.fields.TextField')()), - ('revised_at', self.gf('django.db.models.fields.DateTimeField')()), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=300, blank=True)), - ('answer', self.gf('django.db.models.fields.related.ForeignKey')(related_name='revisions', to=orm['forum.Answer'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('revision', self.gf('django.db.models.fields.PositiveIntegerField')()), - )) - db.send_create_signal('forum', ['AnswerRevision']) - - # Adding field 'Answer.vote_up_count' - db.add_column(u'answer', 'vote_up_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Answer.author' - db.add_column(u'answer', 'author', self.gf('django.db.models.fields.related.ForeignKey')(default=1, related_name='answers', to=orm['forum.User']), keep_default=False) - - # Adding field 'Answer.deleted' - db.add_column(u'answer', 'deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Answer.question' - db.add_column(u'answer', 'question', self.gf('django.db.models.fields.related.ForeignKey')(default=1, related_name='answers', to=orm['forum.Question']), keep_default=False) - - # Adding field 'Answer.html' - db.add_column(u'answer', 'html', self.gf('django.db.models.fields.TextField')(default=1), keep_default=False) - - # Adding field 'Answer.offensive_flag_count' - db.add_column(u'answer', 'offensive_flag_count', self.gf('django.db.models.fields.SmallIntegerField')(default=0), keep_default=False) - - # Adding field 'Answer.deleted_by' - db.add_column(u'answer', 'deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='deleted_answers', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Adding field 'Answer.comment_count' - db.add_column(u'answer', 'comment_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0), keep_default=False) - - # Adding field 'Answer.score' - db.add_column(u'answer', 'score', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Answer.vote_down_count' - db.add_column(u'answer', 'vote_down_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Answer.added_at' - db.add_column(u'answer', 'added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now), keep_default=False) - - # Adding field 'Answer.last_edited_by' - db.add_column(u'answer', 'last_edited_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='last_edited_answers', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Adding field 'Answer.deleted_at' - db.add_column(u'answer', 'deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Adding field 'Answer.id' - db.add_column(u'answer', 'id', self.gf('django.db.models.fields.AutoField')(default=1, primary_key=True), keep_default=False) - - # Adding field 'Answer.last_edited_at' - db.add_column(u'answer', 'last_edited_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Changing field 'Answer.node_ptr' - db.alter_column(u'answer', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, null=True)) - - # Adding field 'Question.vote_up_count' - db.add_column(u'question', 'vote_up_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Question.offensive_flag_count' - db.add_column(u'question', 'offensive_flag_count', self.gf('django.db.models.fields.SmallIntegerField')(default=0), keep_default=False) - - # Adding field 'Question.summary' - db.add_column(u'question', 'summary', self.gf('django.db.models.fields.CharField')(default=1, max_length=180), keep_default=False) - - # Adding field 'Question.id' - db.add_column(u'question', 'id', self.gf('django.db.models.fields.AutoField')(default=1, primary_key=True), keep_default=False) - - # Adding field 'Question.deleted_at' - db.add_column(u'question', 'deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Adding field 'Question.score' - db.add_column(u'question', 'score', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Question.author' - db.add_column(u'question', 'author', self.gf('django.db.models.fields.related.ForeignKey')(default=1, related_name='questions', to=orm['forum.User']), keep_default=False) - - # Adding field 'Question.comment_count' - db.add_column(u'question', 'comment_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0), keep_default=False) - - # Adding field 'Question.html' - db.add_column(u'question', 'html', self.gf('django.db.models.fields.TextField')(default=1), keep_default=False) - - # Adding field 'Question.vote_down_count' - db.add_column(u'question', 'vote_down_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Question.last_edited_by' - db.add_column(u'question', 'last_edited_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='last_edited_questions', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Adding field 'Question.deleted' - db.add_column(u'question', 'deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Question.tagnames' - db.add_column(u'question', 'tagnames', self.gf('django.db.models.fields.CharField')(default=1, max_length=125), keep_default=False) - - # Adding field 'Question.title' - db.add_column(u'question', 'title', self.gf('django.db.models.fields.CharField')(default=1, max_length=300), keep_default=False) - - # Adding field 'Question.added_at' - db.add_column(u'question', 'added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now), keep_default=False) - - # Adding field 'Question.deleted_by' - db.add_column(u'question', 'deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='deleted_questions', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Adding field 'Question.last_edited_at' - db.add_column(u'question', 'last_edited_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Adding M2M table for field followed_by on 'Question' - db.create_table(u'question_followed_by', ( - ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), - ('question', models.ForeignKey(orm['forum.question'], null=False)), - ('user', models.ForeignKey(orm['forum.user'], null=False)) - )) - db.create_unique(u'question_followed_by', ['question_id', 'user_id']) - - # Adding M2M table for field tags on 'Question' - db.create_table(u'question_tags', ( - ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), - ('question', models.ForeignKey(orm['forum.question'], null=False)), - ('tag', models.ForeignKey(orm['forum.tag'], null=False)) - )) - db.create_unique(u'question_tags', ['question_id', 'tag_id']) - - # Changing field 'Question.node_ptr' - db.alter_column(u'question', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, null=True)) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'childs'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 12, 30, 8, 362000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 12, 30, 22, 477000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0011_auto__add_field_node_active_revision.py.svn-base b/forum/migrations/.svn/text-base/0011_auto__add_field_node_active_revision.py.svn-base deleted file mode 100644 index 20dcc1f768ad764f1ea8a04bfd9191a1373e1357..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0011_auto__add_field_node_active_revision.py.svn-base +++ /dev/null @@ -1,323 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding field 'Node.active_revision' - db.add_column('forum_node', 'active_revision', self.gf('django.db.models.fields.related.OneToOneField')(related_name='active', unique=True, null=True, to=orm['forum.NodeRevision']), keep_default=False) - - - def backwards(self, orm): - - # Deleting field 'Node.active_revision' - db.delete_column('forum_node', 'active_revision_id') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 17, 56, 17, 351000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 17, 56, 17, 557000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0012_set_active_revision.py.svn-base b/forum/migrations/.svn/text-base/0012_set_active_revision.py.svn-base deleted file mode 100644 index 95fcd443e0e66424a3c6dc354cb7be13b8cab785..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0012_set_active_revision.py.svn-base +++ /dev/null @@ -1,327 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models - -class Migration(DataMigration): - - def forwards(self, orm): - for n in orm.Node.objects.all(): - try: - n.active_revision = n.revisions.order_by('-id')[0] - n.save() - except: - r = orm.NodeRevision(author=n.author, body=n.body, title=n.title, revised_at=datetime.datetime.now(), - tagnames=n.tagnames, summary='Initial Revision', revision=1, node=n) - r.save() - n.active_revision = r - n.save() - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousanswer': { - 'Meta': {'object_name': 'AnonymousAnswer'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['forum.Question']"}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.anonymousquestion': { - 'Meta': {'object_name': 'AnonymousQuestion'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), - 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'text': ('django.db.models.fields.TextField', [], {}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 17, 56, 41, 918000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 17, 56, 41, 986000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py.svn-base b/forum/migrations/.svn/text-base/0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py.svn-base deleted file mode 100644 index b4bff64a9f0382b635ce0e0f6b0eb8b63fcc4f0b..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0013_auto__del_anonymousquestion__del_anonymousanswer__add_anonymousnode.py.svn-base +++ /dev/null @@ -1,344 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting model 'AnonymousQuestion' - db.delete_table('forum_anonymousquestion') - - # Deleting model 'AnonymousAnswer' - db.delete_table('forum_anonymousanswer') - - # Adding model 'AnonymousNode' - db.create_table('forum_anonymousnode', ( - ('convertible_to', self.gf('django.db.models.fields.CharField')(default='node', max_length=16)), - ('validation_hash', self.gf('django.db.models.fields.related.ForeignKey')(related_name='anonymous_content', to=orm['forum.Node'])), - ('node_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, primary_key=True)), - )) - db.send_create_signal('forum', ['AnonymousNode']) - - - def backwards(self, orm): - - # Adding model 'AnonymousQuestion' - db.create_table('forum_anonymousquestion', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('ip_addr', self.gf('django.db.models.fields.IPAddressField')(max_length=15)), - ('title', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('tagnames', self.gf('django.db.models.fields.CharField')(max_length=125)), - ('text', self.gf('django.db.models.fields.TextField')()), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'], null=True)), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=180)), - ('session_key', self.gf('django.db.models.fields.CharField')(max_length=40)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['AnonymousQuestion']) - - # Adding model 'AnonymousAnswer' - db.create_table('forum_anonymousanswer', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('ip_addr', self.gf('django.db.models.fields.IPAddressField')(max_length=15)), - ('author', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'], null=True)), - ('text', self.gf('django.db.models.fields.TextField')()), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(related_name='anonymous_answers', to=orm['forum.Question'])), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('summary', self.gf('django.db.models.fields.CharField')(max_length=180)), - ('session_key', self.gf('django.db.models.fields.CharField')(max_length=40)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['AnonymousAnswer']) - - # Deleting model 'AnonymousNode' - db.delete_table('forum_anonymousnode') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 14, 18, 42, 39, 311000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 15, 18, 42, 39, 525000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0014_auto__add_field_question_accepted_answer.py.svn-base b/forum/migrations/.svn/text-base/0014_auto__add_field_question_accepted_answer.py.svn-base deleted file mode 100644 index 0079d757b8610be8159f74bd3a3a9b7d72b4011f..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0014_auto__add_field_question_accepted_answer.py.svn-base +++ /dev/null @@ -1,309 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models -from django.conf import settings - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding field 'Question.accepted_answer' - db.add_column(u'question', 'accepted_answer', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Answer'], unique=True, null=True), keep_default=False) - - #if db.backend_name == "postgres" and not "pgfulltext" in settings.DISABLED_MODULES: - # db.execute("DROP TRIGGER tsvectorupdate ON question;") - # db.execute("ALTER TABLE question DROP COLUMN tsv;") - - def backwards(self, orm): - - # Deleting field 'Question.accepted_answer' - db.delete_column(u'question', 'accepted_answer_id') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Answer']", 'unique': 'True', 'null': 'True'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 16, 11, 5, 41, 763000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 11, 5, 42, 36000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0015_accepted_answer_changes.py.svn-base b/forum/migrations/.svn/text-base/0015_accepted_answer_changes.py.svn-base deleted file mode 100644 index df5912b0e0d6e0e1bec5599b74ef3ca4696bff90..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0015_accepted_answer_changes.py.svn-base +++ /dev/null @@ -1,320 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - q_count = orm.Node.objects.filter(node_type="question").count() - print "\nConverting %d questions:" % q_count - progress = ProgressBar(q_count) - - for n in orm.Node.objects.filter(node_type="question"): - q = orm.Question.objects.get(node_ptr=n) - if q.answer_accepted: - accepted = list(orm.Answer.objects.filter(node_ptr__parent=n, accepted=True)) - - if len(accepted): - accepted = accepted[0] - q.accepted_answer = accepted - else: - q.answer_accepted = False - - q.save() - - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Answer']", 'unique': 'True', 'null': 'True'}), - 'answer_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 16, 11, 6, 44, 202000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 11, 6, 44, 279000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py.svn-base b/forum/migrations/.svn/text-base/0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py.svn-base deleted file mode 100644 index fb9d99af59e2d035585dabe609dbbef589f5abff..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0016_auto__del_field_question_answer_accepted__chg_field_question_node_ptr.py.svn-base +++ /dev/null @@ -1,310 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting field 'Question.answer_accepted' - db.delete_column(u'question', 'answer_accepted') - - # Changing field 'Question.node_ptr' - db.alter_column(u'question', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True)) - - - def backwards(self, orm): - - # Adding field 'Question.answer_accepted' - db.add_column(u'question', 'answer_accepted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Changing field 'Question.node_ptr' - db.alter_column(u'question', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, primary_key=True)) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Answer']", 'unique': 'True', 'null': 'True'}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 16, 13, 28, 30, 313000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 13, 28, 30, 540000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0017_auto__add_field_repute_node__add_field_repute_canceled.py.svn-base b/forum/migrations/.svn/text-base/0017_auto__add_field_repute_node__add_field_repute_canceled.py.svn-base deleted file mode 100644 index 98ba7c3f663a57a448ace60ea6266e203231dd5e..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0017_auto__add_field_repute_node__add_field_repute_canceled.py.svn-base +++ /dev/null @@ -1,312 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding field 'Repute.node' - db.add_column(u'repute', 'node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='reputes', null=True, to=orm['forum.Node']), keep_default=False) - - # Adding field 'Repute.canceled' - db.add_column(u'repute', 'canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - - def backwards(self, orm): - - # Deleting field 'Repute.node' - db.delete_column(u'repute', 'node_id') - - # Deleting field 'Repute.canceled' - db.delete_column(u'repute', 'canceled') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'question_accepting'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Answer']"}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 16, 14, 18, 46, 625000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 14, 18, 46, 835000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0018_comments_to_node.py.svn-base b/forum/migrations/.svn/text-base/0018_comments_to_node.py.svn-base deleted file mode 100644 index dc97c0bf5726cc6325fb25a014f73b7d7c1c0d26..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0018_comments_to_node.py.svn-base +++ /dev/null @@ -1,376 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - c_count = orm.Comment.objects.count() - print "\nConverting %d comments:" % c_count - progress = ProgressBar(c_count) - - id_map = {} - - for c in orm.Comment.objects.all(): - node = orm.Node( - node_type='comment', - author=c.user, - added_at=c.added_at, - score=c.score, - vote_up_count=c.score, - vote_down_count=0, - offensive_flag_count=0, - last_edited_at=c.added_at, - last_edited_by=c.user, - body=c.comment, - deleted=c.deleted, - deleted_by=c.deleted_by, - deleted_at=c.deleted_at, - parent=c.node, - ) - node.save() - - id_map[c.id] = node - - revision = orm.NodeRevision( - summary="Initial revsion", - revision=1, - revised_at=c.added_at, - body=c.comment, - author=c.user, - node=node, - ) - - revision.save() - - node.active_revision = revision - node.save() - - for v in orm.LikedComment.objects.filter(comment=c): - vote = orm.Vote( - node=node, - vote=1, - voted_at=v.added_at, - canceled=v.canceled, - user=v.user, - ) - - vote.save() - - progress.update() - - print "\n...done\n" - - ctype = orm['contenttypes.ContentType'].objects.get(name="comment").id - ntype = orm['contenttypes.ContentType'].objects.get(name="node").id - - #Converting activity - activities = orm.Activity.objects.filter(content_type__id=ctype) - activity_count = activities.count() - print "Converting %d activity references:" % activity_count - progress = ProgressBar(activity_count) - - for a in activities: - node = id_map.get(a.object_id, None) - if node: - a.content_type_id = ntype - a.object_id = node.id - a.save() - - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.comment': { - 'Meta': {'object_name': 'Comment', 'db_table': "u'comment'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'comment': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_comments'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'liked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'comments_liked'", 'through': "'LikedComment'", 'to': "orm['forum.User']"}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comments'", 'to': "orm['forum.User']"}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.likedcomment': { - 'Meta': {'object_name': 'LikedComment'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'comment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Comment']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'question_accepting'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Answer']"}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 16, 14, 19, 21, 765000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 14, 19, 21, 837000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py.svn-base b/forum/migrations/.svn/text-base/0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py.svn-base deleted file mode 100644 index 9cec24d5e91b8cf29b036823c4e0c18ce0d7b96a..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0019_auto__del_likedcomment__del_comment__add_field_node_abs_parent__chg_fi.py.svn-base +++ /dev/null @@ -1,322 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting model 'LikedComment' - db.delete_table('forum_likedcomment') - - # Deleting model 'Comment' - db.delete_table(u'comment') - - # Adding field 'Node.abs_parent' - db.add_column('forum_node', 'abs_parent', self.gf('django.db.models.fields.related.ForeignKey')(related_name='all_children', null=True, to=orm['forum.Node']), keep_default=False) - - # Changing field 'Question.last_activity_by' - db.alter_column(u'question', 'last_activity_by_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm['forum.User'])) - - - def backwards(self, orm): - - # Adding model 'LikedComment' - db.create_table('forum_likedcomment', ( - ('comment', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Comment'])), - ('canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['LikedComment']) - - # Adding model 'Comment' - db.create_table(u'comment', ( - ('comment', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='comments', null=True, to=orm['forum.Node'])), - ('deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='deleted_comments', null=True, to=orm['forum.User'], blank=True)), - ('score', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='comments', to=orm['forum.User'])), - ('deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['Comment']) - - # Deleting field 'Node.abs_parent' - db.delete_column('forum_node', 'abs_parent_id') - - # Changing field 'Question.last_activity_by' - db.alter_column(u'question', 'last_activity_by_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'question_accepting'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Answer']"}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 1, 11, 40, 975000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 18, 1, 11, 41, 269000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0020_create_absolute_parents.py.svn-base b/forum/migrations/.svn/text-base/0020_create_absolute_parents.py.svn-base deleted file mode 100644 index 0e7a5019eec6a0b92454ed5a84b2f9cf7e7f594b..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0020_create_absolute_parents.py.svn-base +++ /dev/null @@ -1,300 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - def get_abs_par(n): - if n.parent: - return get_abs_par(n.parent) - else: - return n - - n_count = orm.Node.objects.count() - print "\nConverting %d nodes:" % n_count - progress = ProgressBar(n_count) - - for n in orm.Node.objects.all(): - if n.parent: - n.abs_parent = get_abs_par(n) - else: - n.abs_parent = None - n.save() - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'question_accepting'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Answer']"}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 1, 20, 29, 905000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 18, 1, 20, 29, 974000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0021_create_new_pg_fts_triggers.py.svn-base b/forum/migrations/.svn/text-base/0021_create_new_pg_fts_triggers.py.svn-base deleted file mode 100644 index 6343f23a7c14300f6071d21d30aa8dffce707f49..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0021_create_new_pg_fts_triggers.py.svn-base +++ /dev/null @@ -1,303 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models -from django.conf import settings - -class Migration(SchemaMigration): - - def forwards(self, orm): - if db.backend_name == "postgres" and not "pgfulltext" in settings.DISABLED_MODULES: - try: - import forum_modules.pgfulltext.management - except Exception, e: - pass - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('content_type', 'object_id', 'user', 'badge'),)", 'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'question_accepting'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Answer']"}), - 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'favourite_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True'}), - 'subscribers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscriptions'", 'through': "'QuestionSubscription'", 'to': "orm['forum.User']"}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 17, 2, 50, 12, 337000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 18, 2, 50, 12, 421000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py.svn-base b/forum/migrations/.svn/text-base/0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py.svn-base deleted file mode 100644 index e060971590feddcee8d4f28c152e77116d491253..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0022_auto__add_actionrepute__add_action__add_favoritenode__del_field_node_v.py.svn-base +++ /dev/null @@ -1,463 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - print "# Adding model 'ActionRepute'" - db.create_table('forum_actionrepute', ( - ('action', self.gf('django.db.models.fields.related.ForeignKey')(related_name='reputes', to=orm['forum.Action'])), - ('by_canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('value', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['ActionRepute']) - - print "# Adding model 'Action'" - db.create_table('forum_action', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'], null=True)), - ('extra', self.gf('django.db.models.fields.CharField')(max_length=255)), - ('canceled_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='canceled_actions', null=True, to=orm['forum.User'])), - ('canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('action_date', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='actions', to=orm['forum.User'])), - ('action_type', self.gf('django.db.models.fields.CharField')(max_length=16)), - ('canceled_at', self.gf('django.db.models.fields.DateTimeField')(null=True)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('ip', self.gf('django.db.models.fields.CharField')(max_length=16, null=True)), - )) - db.send_create_signal('forum', ['Action']) - - print "# Deleting field 'Node.vote_up_count'" - db.delete_column('forum_node', 'vote_up_count') - - print "# Deleting field 'Node.comment_count'" - db.delete_column('forum_node', 'comment_count') - - print "# Deleting field 'Node.offensive_flag_count'" - db.delete_column('forum_node', 'offensive_flag_count') - - print "# Deleting field 'Node.vote_down_count'" - db.delete_column('forum_node', 'vote_down_count') - - print "# Adding field 'Node.wiki'" - db.add_column('forum_node', 'wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - print "# Adding field 'Node.marked'" - db.add_column('forum_node', 'marked', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - print "# Adding field 'Node.extra_count'" - db.add_column('forum_node', 'extra_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - print "# Adding field 'Node.last_activity_by'" - db.add_column('forum_node', 'last_activity_by', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'], null=True), keep_default=False) - - print "# Adding field 'Node.extra_ref'" - db.add_column('forum_node', 'extra_ref', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'], null=True), keep_default=False) - - print "# Adding field 'Node.last_activity_at'" - db.add_column('forum_node', 'last_activity_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Changing field 'Answer.node_ptr' - #db.alter_column(u'answer', 'node_ptr_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'], null=True, primary_key=True)) - - print "# Changing field 'QuestionSubscription.question'" - db.alter_column('forum_questionsubscription', 'question_id', self.gf('django.db.models.fields.IntegerField')()) - - # Removing unique constraint on 'Award', fields ['badge', 'object_id', 'content_type', 'user'] - #db.delete_unique(u'award', ['badge_id', 'object_id', 'content_type_id', 'user_id']) - - print "# Changing field 'User.gold'" - db.alter_column('forum_user', 'gold', self.gf('django.db.models.fields.PositiveIntegerField')()) - - print "# Changing field 'User.silver'" - db.alter_column('forum_user', 'silver', self.gf('django.db.models.fields.PositiveIntegerField')()) - - print "# Changing field 'User.bronze'" - db.alter_column('forum_user', 'bronze', self.gf('django.db.models.fields.PositiveIntegerField')()) - - print "# Deleting field 'Question.answer_count'" - db.delete_column(u'question', 'answer_count') - - print "# Deleting field 'Question.favourite_count'" - db.delete_column(u'question', 'favourite_count') - - # Changing field 'Question.node_ptr' - #db.alter_column(u'question', 'node_ptr_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'], null=True, primary_key=True)) - - - def backwards(self, orm): - - # Deleting model 'ActionRepute' - db.delete_table('forum_actionrepute') - - # Deleting model 'Action' - db.delete_table('forum_action') - - # Deleting model 'FavoriteNode' - db.delete_table('forum_favoritenode') - - # Adding field 'Node.vote_up_count' - db.add_column('forum_node', 'vote_up_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Adding field 'Node.comment_count' - db.add_column('forum_node', 'comment_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0), keep_default=False) - - # Adding field 'Node.offensive_flag_count' - db.add_column('forum_node', 'offensive_flag_count', self.gf('django.db.models.fields.SmallIntegerField')(default=0), keep_default=False) - - # Adding field 'Node.vote_down_count' - db.add_column('forum_node', 'vote_down_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Deleting field 'Node.wiki' - db.delete_column('forum_node', 'wiki') - - # Deleting field 'Node.marked' - db.delete_column('forum_node', 'marked') - - # Deleting field 'Node.extra_count' - db.delete_column('forum_node', 'extra_count') - - # Deleting field 'Node.last_activity_by' - db.delete_column('forum_node', 'last_activity_by_id') - - # Deleting field 'Node.extra_ref' - db.delete_column('forum_node', 'extra_ref_id') - - # Deleting field 'Node.last_activity_at' - db.delete_column('forum_node', 'last_activity_at') - - # Changing field 'Answer.node_ptr' - db.alter_column(u'answer', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, primary_key=True)) - - # Adding unique constraint on 'Award', fields ['badge', 'object_id', 'content_type', 'user'] - db.create_unique(u'award', ['badge_id', 'object_id', 'content_type_id', 'user_id']) - - # Changing field 'User.gold' - db.alter_column('forum_user', 'gold', self.gf('django.db.models.fields.SmallIntegerField')()) - - # Changing field 'User.silver' - db.alter_column('forum_user', 'silver', self.gf('django.db.models.fields.SmallIntegerField')()) - - # Changing field 'User.bronze' - db.alter_column('forum_user', 'bronze', self.gf('django.db.models.fields.SmallIntegerField')()) - - # Adding field 'Question.answer_count' - db.add_column(u'question', 'answer_count', self.gf('django.db.models.fields.PositiveIntegerField')(default=0), keep_default=False) - - # Adding field 'Question.favourite_count' - db.add_column(u'question', 'favourite_count', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False) - - # Changing field 'Question.node_ptr' - db.alter_column(u'question', 'node_ptr_id', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True)) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'favourites'", 'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'question_accepting'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Answer']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True', 'primary_key': 'True'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 27, 11, 37, 29, 356000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 28, 11, 37, 29, 624000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0023_flaten_node_inheritance_create_actions.py.svn-base b/forum/migrations/.svn/text-base/0023_flaten_node_inheritance_create_actions.py.svn-base deleted file mode 100644 index b06d9809f8e0e256136eec4add8124455008b1b5..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0023_flaten_node_inheritance_create_actions.py.svn-base +++ /dev/null @@ -1,685 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -GAIN_BY_UPVOTED = 1 -GAIN_BY_ANSWER_ACCEPTED = 2 -GAIN_BY_ACCEPTING_ANSWER = 3 -GAIN_BY_DOWNVOTE_CANCELED = 4 -GAIN_BY_CANCELING_DOWNVOTE = 5 -LOST_BY_CANCELLING_ACCEPTED_ANSWER = -1 -LOST_BY_ACCEPTED_ANSWER_CANCELED = -2 -LOST_BY_DOWNVOTED = -3 -LOST_BY_FLAGGED = -4 -LOST_BY_DOWNVOTING = -5 -LOST_BY_FLAGGED_3_TIMES = -6 -LOST_BY_FLAGGED_5_TIMES = -7 -LOST_BY_UPVOTE_CANCELED = -8 - -class Migration(DataMigration): - - def forwards(self, orm): - rephist = dict([(t, []) for t in range(-8, 6) if t != 0]) - - r_count = orm.Repute.objects.count() - print "\nCalculating rep gain/losses history through %d records:" % r_count - progress = ProgressBar(r_count) - - for r in orm.Repute.objects.all(): - l = rephist.get(r.reputation_type, None) - if l is None: continue - - if (len(l) == 0) or (l[-1][1] != r.value): - l.append((r.reputed_at, r.value)) - - progress.update() - - print "\n...done\n" - - - def repval_at(reptype, repdate, default): - l = rephist.get(reptype, None) - - if l is None: return 0 - if len(l) == 0: return default - - for r in l: - if r[0] <= repdate: - return r[1] or default - - - q_count = orm.Question.objects.count() - print "\nConverting %d questions:" % q_count - progress = ProgressBar(q_count) - - for q in orm.Question.objects.all(): - n = q.node_ptr - n.last_activity_at = q.last_activity_at - n.last_activity_by = q.last_activity_by - - if q.accepted_answer: - n.extra_ref = q.accepted_answer.node_ptr - - n.extra_count = q.view_count - - n.marked = q.closed - n.wiki = q.wiki - - n.save() - - ask = orm.Action( - user = n.author, - action_date = n.added_at, - node = n, - action_type = "ask", - extra = '' - ) - - ask.save() - - if n.deleted: - action = orm.Action( - user = n.deleted_by, - node = n, - action_type = "delete", - action_date = n.deleted_at or datetime.datetime.now(), - extra = '' - ) - - action.save() - - - if n.marked: - action = orm.Action( - user = q.closed_by, - node = n, - action_type = "close", - extra = q.close_reason, - action_date = q.closed_at or datetime.datetime.now(), - ) - - action.save() - - if n.wiki: - action = orm.Action( - user = n.author, - node = n, - action_type = "wikify", - action_date = q.wikified_at or datetime.datetime.now(), - extra = '' - ) - - action.save() - - progress.update() - - print "\n...done\n" - - a_count = orm.Answer.objects.count() - print "\nConverting %d answers:" % a_count - progress = ProgressBar(a_count) - - for a in orm.Answer.objects.all(): - n = a.node_ptr - - n.marked = a.accepted - n.wiki = a.wiki - - n.save() - - ans = orm.Action( - user = n.author, - action_date = n.added_at, - node = n, - action_type = "answer", - extra = '' - ) - - ans.save() - - if n.deleted: - action = orm.Action( - user = n.deleted_by, - node = n, - action_type = "delete", - action_date = n.deleted_at or datetime.datetime.now(), - extra = '' - ) - - action.save() - - if a.accepted: - action = orm.Action( - user = a.accepted_by, - node = n, - action_type = "acceptanswer", - action_date = a.accepted_at or datetime.datetime.now(), - extra = '' - ) - - action.save() - - if not a.wiki or a.wikified_at > action.action_date: - if action.user == n.author: - rep = orm.ActionRepute( - action = action, - user = action.user, - value = repval_at(GAIN_BY_ACCEPTING_ANSWER, action.action_date, 2) - ) - rep.save() - - if n.author != n.parent.author: - rep = orm.ActionRepute( - action = action, - user = n.author, - value = repval_at(GAIN_BY_ANSWER_ACCEPTED, action.action_date, 15) - ) - rep.save() - - if n.wiki: - action = orm.Action( - user = n.author, - node = n, - action_type = "wikify", - action_date = a.wikified_at or datetime.datetime.now(), - extra = '' - ) - - action.save() - - progress.update() - - print "\n...done\n" - - v_count = orm.Vote.objects.count() - print "\nConverting %d votes:" % v_count - progress = ProgressBar(v_count) - - for v in orm.Vote.objects.exclude(canceled=True): - a = orm.Action( - action_type = (v.vote == 1) and ((v.node.node_type == "comment") and "voteupcomment" or "voteup") or "votedown", - user = v.user, - node = v.node, - action_date = v.voted_at, - canceled = v.canceled, - extra = '' - ) - - a.save() - - def impl(node): - if node.node_type == "question": - return orm.Question.objects.get(node_ptr=node) - else: - return orm.Answer.objects.get(node_ptr=node) - - if a.node.node_type in ("question", "answer") and (not a.node.wiki or impl(a.node).wikified_at > a.action_date): - reptype, default = (v.vote == 1) and (GAIN_BY_UPVOTED, 10) or (LOST_BY_DOWNVOTED, 2) - rep = orm.ActionRepute( - action = a, - user = a.node.author, - value = repval_at(reptype, a.action_date, default) or default - ) - rep.save() - - if v.vote == -1: - rep = orm.ActionRepute( - action = a, - user = a.node.author, - value = repval_at(LOST_BY_DOWNVOTING, a.action_date, 1) or default - ) - rep.save() - - progress.update() - - print "\n...done\n" - - f_count = orm.FlaggedItem.objects.count() - print "\nConverting %d flags:" % f_count - progress = ProgressBar(f_count) - - for f in orm.FlaggedItem.objects.all(): - a = orm.Action( - action_type = "flag", - user = f.user, - node = f.node, - action_date = f.flagged_at, - extra = f.reason or '' - ) - - a.save() - - rep = orm.ActionRepute( - action = a, - user = a.node.author, - value = repval_at(LOST_BY_FLAGGED, a.action_date, 2) or 2 - ) - rep.save() - - progress.update() - - print "\n...done\n" - - n_count = orm.Node.objects.all().count() - print "\nChecking flag count of %d nodes:" % n_count - progress = ProgressBar(n_count) - - for n in orm.Node.objects.all(): - flags = list(orm.Action.objects.filter(action_type="flag", node=n, canceled=False).order_by('-action_date')) - - if len(flags) >= 3: - a = flags[2] - rep = orm.ActionRepute( - action = a, - user = n.author, - value = repval_at(LOST_BY_FLAGGED_3_TIMES, a.action_date, 30) - ) - rep.save() - - - if len(flags) >= 5: - a = flags[4] - rep = orm.ActionRepute( - action = a, - user = n.author, - value = repval_at(LOST_BY_FLAGGED_5_TIMES, a.action_date, 100) - ) - rep.save() - - progress.update() - - print "\n...done\n" - - c_count = orm.Node.objects.filter(node_type="comment").count() - print "\nCreating %d comment actions:" % c_count - progress = ProgressBar(c_count) - - for c in orm.Node.objects.filter(node_type="comment").all(): - a = orm.Action( - action_type = "comment", - user = c.author, - node = c, - action_date = c.added_at, - extra = '' - ) - - a.save() - - if c.deleted: - action = orm.Action( - user = c.deleted_by, - node = c, - action_type = "delete", - action_date = c.deleted_at or datetime.datetime.now(), - extra = '' - ) - - action.save() - - progress.update() - - print "\n...done\n" - - - r_count = orm.NodeRevision.objects.exclude(revision=1).count() - print "\nCreating %d edit actions:" % r_count - progress = ProgressBar(r_count) - - for r in orm.NodeRevision.objects.exclude(revision=1): - a = orm.Action( - action_type = "revise", - user = r.author, - node = r.node, - action_date = r.revised_at, - extra = r.revision - ) - - a.save() - progress.update() - - print "\n...done\n" - - u_count = orm.User.objects.all().count() - print "\nCreating %d user join actions and reputation recalculation:" % u_count - progress = ProgressBar(u_count) - - for u in orm.User.objects.all(): - a = orm.Action( - user = u, - action_date = u.date_joined, - action_type = "userjoins", - ) - - a.save() - - rep = orm.ActionRepute( - action = a, - user = u, - value = 1 - ) - rep.save() - - new_rep = orm.ActionRepute.objects.filter(user=u).aggregate(reputation=models.Sum('value'))['reputation'] - - if new_rep < 0: - new_rep = 1 - - u.reputation = new_rep - u.save() - - progress.update() - - print "\n...done\n" - - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.anonymousnode': { - 'Meta': {'object_name': 'AnonymousNode', '_ormbases': ['forum.Node']}, - 'convertible_to': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'node_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['forum.Node']", 'unique': 'True', 'primary_key': 'True'}), - 'validation_hash': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_content'", 'to': "orm['forum.Node']"}) - }, - 'forum.answer': { - 'Meta': {'object_name': 'Answer', 'db_table': "u'answer'"}, - 'accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'accepted_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'node_ptr': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True', 'primary_key': 'True'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.favoritequestion': { - 'Meta': {'unique_together': "(('question', 'user'),)", 'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'favourites'", 'to': "orm['forum.Question']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['forum.User']"}) - }, - 'forum.flaggeditem': { - 'Meta': {'object_name': 'FlaggedItem', 'db_table': "u'flagged_item'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flaggeditems'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_nodes'", 'null': 'True', 'to': "orm['forum.User']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.question': { - 'Meta': {'object_name': 'Question', 'db_table': "u'question'"}, - 'accepted_answer': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'question_accepting'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Answer']"}), - 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'closed_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'favorite_questions'", 'through': "'FavoriteQuestion'", 'to': "orm['forum.User']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'last_active_in_questions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'node_ptr': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True', 'primary_key': 'True'}), - 'view_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 27, 11, 40, 32, 68000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.repute': { - 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Question']"}), - 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'user_previous_rep': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 28, 11, 40, 32, 153000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'object_name': 'Vote', 'db_table': "u'vote'"}, - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py.svn-base b/forum/migrations/.svn/text-base/0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py.svn-base deleted file mode 100644 index 660a4d18f3688dcdbd96ae83402658827fdfd928..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0024_auto__del_repute__del_vote__del_answer__del_flaggeditem__del_anonymous.py.svn-base +++ /dev/null @@ -1,377 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting model 'Repute' - db.delete_table(u'repute') - - # Deleting model 'Vote' - db.delete_table(u'vote') - - # Deleting model 'Answer' - db.delete_table(u'answer') - - # Deleting model 'FlaggedItem' - db.delete_table(u'flagged_item') - - # Deleting model 'AnonymousNode' - db.delete_table('forum_anonymousnode') - - # Deleting model 'FavoriteQuestion' - db.delete_table(u'favorite_question') - - # Deleting model 'Question' - db.delete_table(u'question') - - # Deleting field 'Node.deleted_at' - db.delete_column('forum_node', 'deleted_at') - - # Deleting field 'Node.last_edited_by' - db.delete_column('forum_node', 'last_edited_by_id') - - # Deleting field 'Node.deleted' - db.delete_column('forum_node', 'deleted') - - # Deleting field 'Node.deleted_by' - db.delete_column('forum_node', 'deleted_by_id') - - # Deleting field 'Node.last_edited_at' - db.delete_column('forum_node', 'last_edited_at') - - - def backwards(self, orm): - - # Adding model 'Repute' - db.create_table(u'repute', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='reputes', null=True, to=orm['forum.Node'])), - ('reputed_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('question', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Question'])), - ('value', self.gf('django.db.models.fields.SmallIntegerField')(default=0)), - ('canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('reputation_type', self.gf('django.db.models.fields.SmallIntegerField')()), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='reputes', to=orm['forum.User'])), - ('user_previous_rep', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['Repute']) - - # Adding model 'Vote' - db.create_table(u'vote', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='votes', null=True, to=orm['forum.Node'])), - ('vote', self.gf('django.db.models.fields.SmallIntegerField')()), - ('canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='votes', to=orm['forum.User'])), - ('voted_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['Vote']) - - # Adding model 'Answer' - db.create_table(u'answer', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('accepted_by', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'], null=True)), - ('accepted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('wikified_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('node_ptr', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'], null=True, primary_key=True)), - ('accepted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - )) - db.send_create_signal('forum', ['Answer']) - - # Adding model 'FlaggedItem' - db.create_table(u'flagged_item', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='flaggeditems', null=True, to=orm['forum.Node'])), - ('flagged_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('canceled', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('reason', self.gf('django.db.models.fields.CharField')(max_length=300, null=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='flaggeditems', to=orm['forum.User'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - )) - db.send_create_signal('forum', ['FlaggedItem']) - - # Adding model 'AnonymousNode' - db.create_table('forum_anonymousnode', ( - ('convertible_to', self.gf('django.db.models.fields.CharField')(default='node', max_length=16)), - ('validation_hash', self.gf('django.db.models.fields.related.ForeignKey')(related_name='anonymous_content', to=orm['forum.Node'])), - ('node_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['forum.Node'], unique=True, primary_key=True)), - )) - db.send_create_signal('forum', ['AnonymousNode']) - - # Adding model 'FavoriteQuestion' - db.create_table(u'favorite_question', ( - ('question', self.gf('django.db.models.fields.related.ForeignKey')(related_name='favourites', to=orm['forum.Question'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('added_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='user_favorite_questions', to=orm['forum.User'])), - )) - db.send_create_signal('forum', ['FavoriteQuestion']) - - # Adding model 'Question' - db.create_table(u'question', ( - ('wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('last_activity_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='last_active_in_questions', null=True, to=orm['forum.User'])), - ('close_reason', self.gf('django.db.models.fields.SmallIntegerField')(null=True, blank=True)), - ('last_activity_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('view_count', self.gf('django.db.models.fields.IntegerField')(default=0)), - ('node_ptr', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'], null=True, primary_key=True)), - ('accepted_answer', self.gf('django.db.models.fields.related.OneToOneField')(related_name='question_accepting', unique=True, null=True, to=orm['forum.Answer'])), - ('closed', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('wikified_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('closed_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('closed_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='closed_questions', null=True, to=orm['forum.User'], blank=True)), - )) - db.send_create_signal('forum', ['Question']) - - # Adding field 'Node.deleted_at' - db.add_column('forum_node', 'deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - # Adding field 'Node.last_edited_by' - db.add_column('forum_node', 'last_edited_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='last_edited_nodes', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Adding field 'Node.deleted' - db.add_column('forum_node', 'deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Node.deleted_by' - db.add_column('forum_node', 'deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='deleted_nodes', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Adding field 'Node.last_edited_at' - db.add_column('forum_node', 'last_edited_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 28, 23, 43, 52, 301000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 29, 23, 43, 52, 512000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py.svn-base b/forum/migrations/.svn/text-base/0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py.svn-base deleted file mode 100644 index cbe5c5700136af4c86462dee21fcc63ce089742f..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0025_auto__add_field_node_extra_action__add_field_node_deleted__add_field_n.py.svn-base +++ /dev/null @@ -1,267 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding field 'Node.extra_action' - db.add_column('forum_node', 'extra_action', self.gf('django.db.models.fields.related.ForeignKey')(related_name='extra_node', null=True, to=orm['forum.Action']), keep_default=False) - - # Adding field 'Node.deleted' - db.add_column('forum_node', 'deleted', self.gf('django.db.models.fields.related.ForeignKey')(related_name='deleted_node', unique=True, null=True, to=orm['forum.Action']), keep_default=False) - - # Adding field 'Node.last_edited' - db.add_column('forum_node', 'last_edited', self.gf('django.db.models.fields.related.ForeignKey')(related_name='edited_node', unique=True, null=True, to=orm['forum.Action']), keep_default=False) - - - def backwards(self, orm): - - # Deleting field 'Node.extra_action' - db.delete_column('forum_node', 'extra_action_id') - - # Deleting field 'Node.deleted' - db.delete_column('forum_node', 'deleted_id') - - # Deleting field 'Node.last_edited' - db.delete_column('forum_node', 'last_edited_id') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 28, 23, 49, 37, 322000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 29, 23, 49, 37, 506000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0026_reset_deleted_and_lastedited_flags.py.svn-base b/forum/migrations/.svn/text-base/0026_reset_deleted_and_lastedited_flags.py.svn-base deleted file mode 100644 index e794e9c1a2e073a57e95b5aa12c619376fcca4c1..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0026_reset_deleted_and_lastedited_flags.py.svn-base +++ /dev/null @@ -1,278 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - n_count = orm.Node.objects.all().count() - print "\nReseting %d nodes:" % n_count - progress = ProgressBar(n_count) - - for n in orm.Node.objects.all(): - try: - d = orm.Action.objects.get(node=n, action_type="delete", canceled=False) - n.deleted_id = d.id - except Exception, e: - n.deleted = None - - if orm.Action.objects.filter(node=n, action_type="revise").count() > 0: - n.last_edited_id = orm.Action.objects.filter(node=n, action_type="revise").order_by('-action_date')[0].id - else: - n.last_edited = None - - - if n.node_type == "answer" and n.marked: - n.extra_action_id = orm.Action.objects.get(node=n, action_type="acceptanswer", canceled=False).id - - if n.node_type == "question" and n.marked: - n.extra_action_id = orm.Action.objects.get(node=n, action_type="close", canceled=False).id - - n.save() - - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.activity': { - 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, - 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 28, 23, 55, 36, 647000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 29, 23, 55, 36, 708000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0027_auto__del_activity.py.svn-base b/forum/migrations/.svn/text-base/0027_auto__del_activity.py.svn-base deleted file mode 100644 index d4fbf28d4395c03992972490a9375a248dc15c61..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0027_auto__del_activity.py.svn-base +++ /dev/null @@ -1,254 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting model 'Activity' - db.delete_table(u'activity') - - - def backwards(self, orm): - - # Adding model 'Activity' - db.create_table(u'activity', ( - ('is_auditted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True)), - ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')()), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])), - ('active_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('activity_type', self.gf('django.db.models.fields.SmallIntegerField')()), - )) - db.send_create_signal('forum', ['Activity']) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 29, 1, 30, 30, 35000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 30, 1, 30, 30, 211000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py.svn-base b/forum/migrations/.svn/text-base/0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py.svn-base deleted file mode 100644 index ebde4686da5de504c6d867130e489ca971527ad5..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0028_auto__add_field_action_canceled_ip__add_field_actionrepute_date.py.svn-base +++ /dev/null @@ -1,253 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding field 'Action.canceled_ip' - db.add_column('forum_action', 'canceled_ip', self.gf('django.db.models.fields.CharField')(default='', max_length=16), keep_default=False) - - # Adding field 'ActionRepute.date' - db.add_column('forum_actionrepute', 'date', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now), keep_default=False) - - - def backwards(self, orm): - - # Deleting field 'Action.canceled_ip' - db.delete_column('forum_action', 'canceled_ip') - - # Deleting field 'ActionRepute.date' - db.delete_column('forum_actionrepute', 'date') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 29, 21, 20, 24, 880000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 30, 21, 20, 35, 361000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0029_repute_dates.py.svn-base b/forum/migrations/.svn/text-base/0029_repute_dates.py.svn-base deleted file mode 100644 index 241b094208c2cf385d05e075b243ac825b091015..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0029_repute_dates.py.svn-base +++ /dev/null @@ -1,259 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - r_count = orm.ActionRepute.objects.count() - print "\nAdding dates to %d repute actions:" % r_count - progress = ProgressBar(r_count) - - for r in orm.ActionRepute.objects.all(): - a = r.action - - if r.by_canceled: - r.date = a.canceled_at - else: - r.date = a.action_date - - r.save() - - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 29, 21, 21, 16, 237000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 30, 21, 21, 16, 298000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py.svn-base b/forum/migrations/.svn/text-base/0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py.svn-base deleted file mode 100644 index 1738875c20305e0f5afca6f0c5600e4f8e718845..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0030_auto__chg_field_action_extra__chg_field_keyvalue_value.py.svn-base +++ /dev/null @@ -1,253 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Changing field 'Action.extra' - db.alter_column('forum_action', 'extra', self.gf('forum.models.utils.PickledObjectField')(null=True)) - - # Changing field 'KeyValue.value' - db.alter_column('forum_keyvalue', 'value', self.gf('forum.models.utils.PickledObjectField')(null=True)) - - - def backwards(self, orm): - - # Changing field 'Action.extra' - db.alter_column('forum_action', 'extra', self.gf('django.db.models.fields.CharField')(max_length=255)) - - # Changing field 'KeyValue.value' - db.alter_column('forum_keyvalue', 'value', self.gf('forum.models.utils.PickledObjectField')()) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 4, 30, 23, 58, 8, 677000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 1, 23, 58, 8, 841000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0031_alter_pickle_storage.py.svn-base b/forum/migrations/.svn/text-base/0031_alter_pickle_storage.py.svn-base deleted file mode 100644 index c515747357f86b4c0d67393fd54e6c90a76cbf7c..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0031_alter_pickle_storage.py.svn-base +++ /dev/null @@ -1,274 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar -from forum.models.utils import dbsafe_encode - -try: - from cPickle import loads, dumps -except ImportError: - from pickle import loads, dumps - -class Migration(DataMigration): - - def forwards(self, orm): - k_count = orm.KeyValue.objects.count() - print "\nConverting %d keyvalue objects:" % k_count - progress = ProgressBar(k_count) - - for kv in orm.KeyValue.objects.all(): - try: - o = loads(kv.value.encode('utf-8')) - except: - o = kv.value - - kv.value = dbsafe_encode(o, compress_object=True) - kv.save() - progress.update() - - print "\n...done\n" - - a_count = orm.Action.objects.count() - print "\nConverting %d actions extra fields:" % a_count - progress = ProgressBar(a_count) - - for a in orm.Action.objects.all(): - a.extra = dbsafe_encode(a.extra, compress_object=True) - a.save() - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 1, 0, 0, 32, 37000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'hide_ignored_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 2, 0, 0, 32, 86000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py.svn-base b/forum/migrations/.svn/text-base/0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py.svn-base deleted file mode 100644 index f30ba36e7b776466ec9173a5dc2d6d2a7a018091..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0032_auto__del_field_user_hide_ignored_questions__del_field_user_questions_.py.svn-base +++ /dev/null @@ -1,263 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting field 'User.hide_ignored_questions' - db.delete_column('forum_user', 'hide_ignored_questions') - - # Deleting field 'User.questions_per_page' - db.delete_column('forum_user', 'questions_per_page') - - # Deleting field 'User.email_key' - db.delete_column('forum_user', 'email_key') - - # Adding field 'Node.in_moderation' - db.add_column('forum_node', 'in_moderation', self.gf('django.db.models.fields.related.ForeignKey')(related_name='moderated_node', unique=True, null=True, to=orm['forum.Action']), keep_default=False) - - - def backwards(self, orm): - - # Adding field 'User.hide_ignored_questions' - db.add_column('forum_user', 'hide_ignored_questions', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'User.questions_per_page' - db.add_column('forum_user', 'questions_per_page', self.gf('django.db.models.fields.SmallIntegerField')(default=10), keep_default=False) - - # Adding field 'User.email_key' - db.add_column('forum_user', 'email_key', self.gf('django.db.models.fields.CharField')(max_length=32, null=True), keep_default=False) - - # Deleting field 'Node.in_moderation' - db.delete_column('forum_node', 'in_moderation_id') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'unique_together': "(('name', 'type'),)", 'object_name': 'Badge', 'db_table': "u'badge'"}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'in_moderation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'moderated_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 2, 4, 54, 13, 72000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag', 'db_table': "u'tag'"}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 3, 4, 54, 13, 256000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py.svn-base b/forum/migrations/.svn/text-base/0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py.svn-base deleted file mode 100644 index 9d6980a16486c393c9d6c8a7e7018bf483fbcb01..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0033_auto__add_flag__add_vote__add_field_badge_cls__del_unique_badge_type_n.py.svn-base +++ /dev/null @@ -1,333 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - db.rename_table('award', 'forum_award') - db.rename_table('badge', 'forum_badge') - db.rename_table('tag', 'forum_tag') - - # Adding model 'Flag' - db.create_table('forum_flag', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'])), - ('action', self.gf('django.db.models.fields.related.ForeignKey')(related_name='flag', unique=True, to=orm['forum.Action'])), - ('reason', self.gf('django.db.models.fields.CharField')(max_length=300)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - ('flagged_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - )) - #db.send_create_signal('forum', ['Flag']) - - # Adding model 'Vote' - db.create_table('forum_vote', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.Node'])), - ('action', self.gf('django.db.models.fields.related.ForeignKey')(related_name='vote', unique=True, to=orm['forum.Action'])), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('value', self.gf('django.db.models.fields.SmallIntegerField')()), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['forum.User'])), - ('voted_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - )) - #db.send_create_signal('forum', ['Vote']) - - # Adding field 'Badge.cls' - db.add_column('forum_badge', 'cls', self.gf('django.db.models.fields.CharField')(max_length=50, null=True), keep_default=False) - - # Removing unique constraint on 'Badge', fields ['type', 'name'] - db.delete_unique(u'forum_badge', ['type', 'name']) - - # Deleting field 'Award.notified' - db.delete_column(u'forum_award', 'notified') - - # Adding field 'Award.node' - db.add_column('forum_award', 'node', self.gf('django.db.models.fields.related.ForeignKey')(default=1, to=orm['forum.Node'], null=True), keep_default=False) - - # Adding field 'Award.trigger' - db.add_column('forum_award', 'trigger', self.gf('django.db.models.fields.related.ForeignKey')(related_name='awards', null=True, to=orm['forum.Action']), keep_default=False) - - # Adding field 'Award.action' - db.add_column('forum_award', 'action', self.gf('django.db.models.fields.related.ForeignKey')(default=1, related_name='award', to=orm['forum.Action']), keep_default=False) - - # Adding unique constraint on 'Award', fields ['node', 'badge', 'user'] - #db.create_unique('forum_award', ['node_id', 'badge_id', 'user_id']) - - - def backwards(self, orm): - - # Deleting model 'Flag' - db.delete_table('forum_flag') - - # Deleting model 'Vote' - db.delete_table('forum_vote') - - # Deleting field 'Badge.cls' - db.delete_column('forum_badge', 'cls') - - # Adding unique constraint on 'Badge', fields ['type', 'name'] - db.create_unique(u'badge', ['type', 'name']) - - # Adding field 'Award.notified' - db.add_column(u'award', 'notified', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Deleting field 'Award.node' - db.delete_column('forum_award', 'node_id') - - # Deleting field 'Award.trigger' - db.delete_column('forum_award', 'trigger_id') - - # Deleting field 'Award.action' - db.delete_column('forum_award', 'action_id') - - # Removing unique constraint on 'Award', fields ['node', 'badge', 'user'] - db.delete_unique('forum_award', ['node_id', 'badge_id', 'user_id']) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award'", 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'in_moderation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'moderated_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 3, 11, 41, 55, 831000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 4, 11, 41, 59, 140000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0034_new_badge_and_award.py.svn-base b/forum/migrations/.svn/text-base/0034_new_badge_and_award.py.svn-base deleted file mode 100644 index 705212984c8e6dac42d6b3e6317feab7e8e58dd0..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0034_new_badge_and_award.py.svn-base +++ /dev/null @@ -1,344 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar -from forum.models.utils import dbsafe_decode - -class Migration(DataMigration): - - def forwards(self, orm): - b_count = orm.Badge.objects.count() - print "\nConverting %d badges:" % b_count - progress = ProgressBar(b_count) - - for b in orm.Badge.objects.all(): - b.cls = "".join([s[0].upper() + s[1:] for s in b.slug.split('-')]) - b.save() - - progress.update() - - print "\n...done\n" - - ctypes = dict([(ct.name, ct.id) for ct in orm['contenttypes.ContentType'].objects.all()]) - - a_count = orm.Award.objects.count() - print "\nConverting %d awards:" % a_count - progress = ProgressBar(a_count) - - for a in orm.Award.objects.all(): - if a.content_type.id == ctypes['user']: - a.node = None - else: - try: - a.node = orm.Node.objects.get(id=a.object_id) - except: - a.delete() - continue - - action = orm.Action( - user = a.user, - node = a.node, - action_type = "award", - action_date = a.awarded_at, - ) - - action.save() - - a.action = action - a.save() - - progress.update() - - print "\n...done\n" - - - a_count = orm.Action.objects.filter(action_type__in=("voteup", "votedown", "voteupcomment")).count() - print "\nConverting %d votes:" % a_count - progress = ProgressBar(a_count) - - for a in orm.Action.objects.filter(action_type__in=("voteup", "votedown", "voteupcomment"), canceled=False): - v = orm.Vote( - user = a.user, - node = a.node, - value = (a.action_type in ("voteup", "voteupcomment")) and 1 or -1, - action = a, - voted_at = a.action_date - ) - - v.save() - - progress.update() - - print "\n...done\n" - - a_count = orm.Action.objects.filter(action_type__in=("voteup", "votedown", "voteupcomment")).count() - print "\nConverting %d votes:" % a_count - progress = ProgressBar(a_count) - - for a in orm.Action.objects.filter(action_type="flag", canceled=False): - f = orm.Flag( - user = a.user, - node = a.node, - reason = a.extra, - action = a, - flagged_at = a.action_date - ) - - f.save() - - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award'", 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Badge']"}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'slug': ('django.db.models.fields.SlugField', [], {'db_index': 'True', 'max_length': '50', 'blank': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'in_moderation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'moderated_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 3, 11, 43, 54, 540000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 4, 11, 43, 54, 592000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py.svn-base b/forum/migrations/.svn/text-base/0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py.svn-base deleted file mode 100644 index 4d80c712cb960c3fe466b95bd74f842756af7174..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0035_auto__del_field_award_object_id__del_field_award_content_type__add_uni.py.svn-base +++ /dev/null @@ -1,296 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting field 'Award.object_id' - db.delete_column('forum_award', 'object_id') - - # Deleting field 'Award.content_type' - db.delete_column('forum_award', 'content_type_id') - - # Adding unique constraint on 'Award', fields ['action'] - db.create_unique('forum_award', ['action_id']) - - # Deleting field 'Badge.multiple' - db.delete_column('forum_badge', 'multiple') - - # Deleting field 'Badge.name' - db.delete_column('forum_badge', 'name') - - # Deleting field 'Badge.slug' - db.delete_column('forum_badge', 'slug') - - # Deleting field 'Badge.description' - db.delete_column('forum_badge', 'description') - - - def backwards(self, orm): - - # Adding field 'Award.object_id' - db.add_column('forum_award', 'object_id', self.gf('django.db.models.fields.PositiveIntegerField')(default=1), keep_default=False) - - # Adding field 'Award.content_type' - db.add_column('forum_award', 'content_type', self.gf('django.db.models.fields.related.ForeignKey')(default=1, to=orm['contenttypes.ContentType']), keep_default=False) - - # Removing unique constraint on 'Award', fields ['action'] - db.delete_unique('forum_award', ['action_id']) - - # Adding field 'Badge.multiple' - db.add_column('forum_badge', 'multiple', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Badge.name' - db.add_column('forum_badge', 'name', self.gf('django.db.models.fields.CharField')(default=1, max_length=50), keep_default=False) - - # Adding field 'Badge.slug' - db.add_column('forum_badge', 'slug', self.gf('django.db.models.fields.SlugField')(blank=True, default=1, max_length=50, db_index=True), keep_default=False) - - # Adding field 'Badge.description' - db.add_column('forum_badge', 'description', self.gf('django.db.models.fields.CharField')(default=1, max_length=300), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'in_moderation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'moderated_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 3, 11, 46, 22, 80000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 4, 11, 46, 28, 428000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py.svn-base b/forum/migrations/.svn/text-base/0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py.svn-base deleted file mode 100644 index 903dc92a287495ed34e1832feccbdfd8fa9c5664..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0036_auto__add_nodestate__chg_field_award_action__add_field_node_state_stri.py.svn-base +++ /dev/null @@ -1,298 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding model 'NodeState' - db.create_table('forum_nodestate', ( - ('node', self.gf('django.db.models.fields.related.ForeignKey')(related_name='state', to=orm['forum.Node'])), - ('state_type', self.gf('django.db.models.fields.CharField')(max_length=16)), - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('action', self.gf('django.db.models.fields.related.ForeignKey')(related_name='node_state', unique=True, to=orm['forum.Action'])), - )) - db.send_create_signal('forum', ['NodeState']) - - # Changing field 'Award.action' - db.alter_column('forum_award', 'action_id', self.gf('django.db.models.fields.related.OneToOneField')(unique=True, to=orm['forum.Action'])) - - # Adding field 'Node.state_string' - db.add_column('forum_node', 'state_string', self.gf('django.db.models.fields.TextField')(default=''), keep_default=False) - - # Changing field 'Flag.action' - db.alter_column('forum_flag', 'action_id', self.gf('django.db.models.fields.related.OneToOneField')(unique=True, to=orm['forum.Action'])) - - # Changing field 'Vote.action' - db.alter_column('forum_vote', 'action_id', self.gf('django.db.models.fields.related.OneToOneField')(unique=True, to=orm['forum.Action'])) - - - def backwards(self, orm): - - # Deleting model 'NodeState' - db.delete_table('forum_nodestate') - - # Changing field 'Award.action' - db.alter_column('forum_award', 'action_id', self.gf('django.db.models.fields.related.ForeignKey')(unique=True, to=orm['forum.Action'])) - - # Deleting field 'Node.state_string' - db.delete_column('forum_node', 'state_string') - - # Changing field 'Flag.action' - db.alter_column('forum_flag', 'action_id', self.gf('django.db.models.fields.related.ForeignKey')(unique=True, to=orm['forum.Action'])) - - # Changing field 'Vote.action' - db.alter_column('forum_vote', 'action_id', self.gf('django.db.models.fields.related.ForeignKey')(unique=True, to=orm['forum.Action'])) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'in_moderation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'moderated_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'state'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 24, 12, 24, 54, 587000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 25, 12, 24, 54, 760000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0037_fill_node_state.py.svn-base b/forum/migrations/.svn/text-base/0037_fill_node_state.py.svn-base deleted file mode 100644 index 1143c46af236385967b428a37765d1fb58cf1a91..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0037_fill_node_state.py.svn-base +++ /dev/null @@ -1,317 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - n_count = orm.Node.objects.count() - print "\nConverting %s node states:" % n_count - progress = ProgressBar(n_count) - - for n in orm.Node.objects.all(): - ss = "" - - if n.deleted: - s = orm.NodeState( - node = n, - action = n.deleted, - state_type = "deleted" - ) - s.save() - ss += "(deleted)" - - if n.wiki: - try: - action = orm.Action.objects.get(node=n, action_type="wikify") - s = orm.NodeState( - node = n, - action = action, - state_type = "wiki" - ) - s.save() - ss += "(wiki)" - except: - pass - - if n.node_type == "question" and n.extra_action: - s = orm.NodeState( - node = n, - action = n.extra_action, - state_type = "closed" - ) - s.save() - ss += "(closed)" - - if n.node_type == "answer" and n.extra_action: - s = orm.NodeState( - node = n, - action = n.extra_action, - state_type = "accepted" - ) - s.save() - ss += "(accepted)" - - if ss: - n.state_string = ss - n.save() - - progress.update() - - print "\n...done\n" - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'deleted': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'deleted_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'extra_node'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'in_moderation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'moderated_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'state'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 24, 12, 26, 33, 742000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 25, 12, 26, 33, 797000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py.svn-base b/forum/migrations/.svn/text-base/0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py.svn-base deleted file mode 100644 index 0b80f8cc828503b04cdd48ca71d7e59a32de1107..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0038_auto__del_field_node_wiki__del_field_node_deleted__del_field_node_extr.py.svn-base +++ /dev/null @@ -1,282 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting field 'Node.wiki' - db.delete_column('forum_node', 'wiki') - - # Deleting field 'Node.deleted' - db.delete_column('forum_node', 'deleted_id') - - # Deleting field 'Node.extra_action' - db.delete_column('forum_node', 'extra_action_id') - - # Deleting field 'Node.in_moderation' - db.delete_column('forum_node', 'in_moderation_id') - - - def backwards(self, orm): - - # Adding field 'Node.wiki' - db.add_column('forum_node', 'wiki', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Node.deleted' - db.add_column('forum_node', 'deleted', self.gf('django.db.models.fields.related.ForeignKey')(related_name='deleted_node', unique=True, null=True, to=orm['forum.Action']), keep_default=False) - - # Adding field 'Node.extra_action' - db.add_column('forum_node', 'extra_action', self.gf('django.db.models.fields.related.ForeignKey')(related_name='extra_node', null=True, to=orm['forum.Action']), keep_default=False) - - # Adding field 'Node.in_moderation' - db.add_column('forum_node', 'in_moderation', self.gf('django.db.models.fields.related.ForeignKey')(related_name='moderated_node', unique=True, null=True, to=orm['forum.Action']), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 24, 19, 29, 24, 232000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 25, 19, 29, 24, 443000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py.svn-base b/forum/migrations/.svn/text-base/0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py.svn-base deleted file mode 100644 index 1e8cf3a7c3dee61403a9939262bb84fff8c3bf48..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0039_auto__del_field_tag_deleted__del_field_tag_deleted_by__del_field_tag_d.py.svn-base +++ /dev/null @@ -1,273 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting field 'Tag.deleted' - db.delete_column('forum_tag', 'deleted') - - # Deleting field 'Tag.deleted_by' - db.delete_column('forum_tag', 'deleted_by_id') - - # Deleting field 'Tag.deleted_at' - db.delete_column('forum_tag', 'deleted_at') - - - def backwards(self, orm): - - # Adding field 'Tag.deleted' - db.add_column('forum_tag', 'deleted', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'Tag.deleted_by' - db.add_column('forum_tag', 'deleted_by', self.gf('django.db.models.fields.related.ForeignKey')(related_name='deleted_tags', null=True, to=orm['forum.User'], blank=True), keep_default=False) - - # Adding field 'Tag.deleted_at' - db.add_column('forum_tag', 'deleted_at', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 25, 0, 18, 31, 631000)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 5, 26, 0, 18, 31, 914000)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0040_auto__chg_field_nodestate_action__add_field_node_extra.py.svn-base b/forum/migrations/.svn/text-base/0040_auto__chg_field_nodestate_action__add_field_node_extra.py.svn-base deleted file mode 100644 index 0b28278af70ae7e719360b6d5bf82e1c1d194671..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0040_auto__chg_field_nodestate_action__add_field_node_extra.py.svn-base +++ /dev/null @@ -1,260 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - # Adding field 'Node.extra' - db.add_column('forum_node', 'extra', self.gf('forum.models.utils.PickledObjectField')(null=True), keep_default=False) - - - def backwards(self, orm): - # Deleting field 'Node.extra' - db.delete_column('forum_node', 'extra') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 6, 4, 12, 12, 32, 595305)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 6, 5, 12, 12, 32, 734979)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0041_action_ip_fixes.py.svn-base b/forum/migrations/.svn/text-base/0041_action_ip_fixes.py.svn-base deleted file mode 100644 index 9c8a24fec9d0a41c061bab3a08620fc019c9a840..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0041_action_ip_fixes.py.svn-base +++ /dev/null @@ -1,300 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -class Migration(DataMigration): - - def forwards(self, orm): - a_count = orm.Action.objects.filter(action_type="bonusrep").count() - print "\nConverting %s bonus actions:" % a_count - progress = ProgressBar(a_count) - - for a in orm.Action.objects.filter(action_type="bonusrep"): - a.user = orm.User.objects.get(id=a.extra['awarding_user']) - a.save() - - progress.update() - - print "\n...done\n" - - - s_count = orm.Action.objects.filter(action_type="suspend").count() - print "\nConverting %s suspend actions:" % a_count - progress = ProgressBar(s_count) - - for a in orm.Action.objects.filter(action_type="suspend"): - suspended = a.user - - a.user = orm.User.objects.get(id=a.extra['suspender']) - a.save() - - rep = orm.ActionRepute(user=suspended, action=a, value=0, date=a.action_date) - rep.save() - - progress.update() - - print "\n...done\n" - - a_count = orm.Action.objects.filter(action_type="award").count() - print "\nConverting %s award actions:" % a_count - progress = ProgressBar(a_count) - - for a in orm.Action.objects.filter(action_type="award"): - a.ip = '' - a.save() - - progress.update() - - print "\n...done\n" - - - - def backwards(self, orm): - "Write your backwards methods here." - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 6, 13, 16, 42, 20, 908594)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 6, 14, 16, 42, 20, 944052)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0042_auto__add_userproperty.py.svn-base b/forum/migrations/.svn/text-base/0042_auto__add_userproperty.py.svn-base deleted file mode 100644 index ecbd7c935e1d613dae061818b2a3eafab43e603a..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0042_auto__add_userproperty.py.svn-base +++ /dev/null @@ -1,275 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding model 'UserProperty' - db.create_table('forum_userproperty', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='properties', to=orm['forum.User'])), - ('key', self.gf('django.db.models.fields.CharField')(max_length=16)), - ('value', self.gf('forum.models.utils.PickledObjectField')(null=True)), - )) - db.send_create_signal('forum', ['UserProperty']) - - - def backwards(self, orm): - - # Deleting model 'UserProperty' - db.delete_table('forum_userproperty') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 6, 30, 19, 11, 19, 580720)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 7, 1, 19, 11, 19, 671272)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py.svn-base b/forum/migrations/.svn/text-base/0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py.svn-base deleted file mode 100644 index dc25ef06abd585bb89935acce9c739a413fe3b8d..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0043_auto__add_field_subscriptionsettings_send_digest__add_field_action_rea.py.svn-base +++ /dev/null @@ -1,277 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Adding field 'SubscriptionSettings.send_digest' - db.add_column('forum_subscriptionsettings', 'send_digest', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True), keep_default=False) - - # Adding field 'Action.real_user' - db.add_column('forum_action', 'real_user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='proxied_actions', null=True, to=orm['forum.User']), keep_default=False) - - - def backwards(self, orm): - - # Deleting field 'SubscriptionSettings.send_digest' - db.delete_column('forum_subscriptionsettings', 'send_digest') - - # Deleting field 'Action.real_user' - db.delete_column('forum_action', 'real_user_id') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 7, 1, 13, 6, 46, 789996)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 7, 2, 13, 6, 46, 883626)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0044_markdown_cache_migration.py.svn-base b/forum/migrations/.svn/text-base/0044_markdown_cache_migration.py.svn-base deleted file mode 100644 index ac317423f073e0cec8dcd9873e83c5d729097724..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0044_markdown_cache_migration.py.svn-base +++ /dev/null @@ -1,271 +0,0 @@ -# encoding: utf-8 -import os, sys -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.migrations import ProgressBar - -import markdown -from django.utils.safestring import mark_safe -from django.utils.html import strip_tags -from forum.utils.html import sanitize_html - -class Migration(DataMigration): - - def forwards(self, orm): - sys.path.append(os.path.join(os.path.dirname(__file__),'../markdownext')) - - count = orm.Node.objects.count() - progress = ProgressBar(count) - - for node in orm.Node.objects.all(): - rev = node.active_revision - - if not rev: - try: - rev = node.revisions.order_by('-revision')[0] - except: - continue - node.body = sanitize_html(markdown.markdown(rev.body, ['urlize'])) - node.save() - progress.update() - - def backwards(self, orm): - "Write your backwards methods here." - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 12, 22, 17, 54, 20, 862306)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 12, 23, 17, 54, 20, 937539)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py.svn-base b/forum/migrations/.svn/text-base/0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py.svn-base deleted file mode 100644 index 898d5c09b00e5036670531346f654d57d8e5fcc4..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0045_auto__add_openidassociation__add_openidnonce__add_field_tag_created_at.py.svn-base +++ /dev/null @@ -1,270 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - # Adding field 'Tag.created_at' - db.add_column('forum_tag', 'created_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now, null=True, blank=True), keep_default=False) - - - def backwards(self, orm): - # Deleting field 'Tag.created_at' - db.delete_column('forum_tag', 'created_at') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 3, 3, 18, 19, 21, 244056)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag'}, - 'created_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'null': 'True', 'blank': 'True'}), - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 3, 4, 18, 19, 21, 460663)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0046_set_tag_dates.py.svn-base b/forum/migrations/.svn/text-base/0046_set_tag_dates.py.svn-base deleted file mode 100644 index 78081a72c87ab0ba46f84dfcfd026721a463a105..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0046_set_tag_dates.py.svn-base +++ /dev/null @@ -1,279 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models -from forum.models import Tag, Question -from urllib import unquote - -class Migration(DataMigration): - - def forwards(self, orm): - for tag in Tag.objects.all(): - try: - question = Question.objects.filter(tags__name=unquote(tag.name)).order_by('pk')[0] - date = question.added_at - tag.created_at = date - tag.save() - print str(date) - except: - pass - - - def backwards(self, orm): - "Write your backwards methods here." - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'through': "'Award'", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 3, 3, 19, 8, 39, 301998)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag'}, - 'created_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'null': 'True', 'blank': 'True'}), - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'through': "'MarkedTag'", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'through': "'QuestionSubscription'", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 3, 4, 19, 8, 39, 353678)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] - diff --git a/forum/migrations/.svn/text-base/0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py.svn-base b/forum/migrations/.svn/text-base/0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py.svn-base deleted file mode 100644 index f3afb6c6c141696439c1d0b84d315570461ed0e2..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0047_auto__del_field_subscriptionsettings_questions_asked__del_field_subscr.py.svn-base +++ /dev/null @@ -1,263 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Deleting field 'SubscriptionSettings.questions_asked' - db.delete_column('forum_subscriptionsettings', 'questions_asked') - - # Deleting field 'SubscriptionSettings.questions_commented' - db.delete_column('forum_subscriptionsettings', 'questions_commented') - - # Deleting field 'SubscriptionSettings.questions_answered' - db.delete_column('forum_subscriptionsettings', 'questions_answered') - - - def backwards(self, orm): - - # Adding field 'SubscriptionSettings.questions_asked' - db.add_column('forum_subscriptionsettings', 'questions_asked', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True), keep_default=False) - - # Adding field 'SubscriptionSettings.questions_commented' - db.add_column('forum_subscriptionsettings', 'questions_commented', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False) - - # Adding field 'SubscriptionSettings.questions_answered' - db.add_column('forum_subscriptionsettings', 'questions_answered', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True), keep_default=False) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 1, 18, 13, 33, 28, 446588)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 1, 19, 13, 33, 28, 641768)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0048_zero_count_tags_fix.py.svn-base b/forum/migrations/.svn/text-base/0048_zero_count_tags_fix.py.svn-base deleted file mode 100644 index a56b320c22d2e42b9d10aefe59057af6021aaffc..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0048_zero_count_tags_fix.py.svn-base +++ /dev/null @@ -1,268 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models - -class Migration(DataMigration): - def forwards(self, orm): - for tag in orm.Tag.objects.filter(used_count__lt=1): - # What we do is a check if there are some questions matching this tag. If there are -- the count is not 0. - questions = orm.Node.objects.filter(tags=tag) - tag.used_count = len(questions) - tag.save() - - - def backwards(self, orm): - "Write your backwards methods here." - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 3, 18, 13, 35, 55, 900573)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag'}, - 'created_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'null': 'True', 'blank': 'True'}), - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 3, 19, 13, 35, 55, 942792)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0049_auto__chg_field_user_reputation.py.svn-base b/forum/migrations/.svn/text-base/0049_auto__chg_field_user_reputation.py.svn-base deleted file mode 100644 index 487cb32f6a600ae891e11cb9edca08830922472d..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0049_auto__chg_field_user_reputation.py.svn-base +++ /dev/null @@ -1,269 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Changing field 'User.reputation' - db.alter_column('forum_user', 'reputation', self.gf('django.db.models.fields.IntegerField')()) - - - def backwards(self, orm): - - # Changing field 'User.reputation' - db.alter_column('forum_user', 'reputation', self.gf('django.db.models.fields.PositiveIntegerField')()) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 5, 17, 8, 18, 42, 203698)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag'}, - 'created_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'null': 'True', 'blank': 'True'}), - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 5, 18, 8, 18, 42, 405710)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py.svn-base b/forum/migrations/.svn/text-base/0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py.svn-base deleted file mode 100644 index 1b726e5a42b7328cb4c079f3b458446238578eb5..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0050_auto__chg_field_action_canceled_ip__chg_field_action_ip.py.svn-base +++ /dev/null @@ -1,283 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Changing field 'Action.canceled_ip' - db.alter_column('forum_action', 'canceled_ip', self.gf('django.db.models.fields.CharField')(max_length=39)) - - # Changing field 'Action.ip' - db.alter_column('forum_action', 'ip', self.gf('django.db.models.fields.CharField')(max_length=39)) - - - def backwards(self, orm): - - # Changing field 'Action.canceled_ip' - db.alter_column('forum_action', 'canceled_ip', self.gf('django.db.models.fields.CharField')(max_length=16)) - - # Changing field 'Action.ip' - db.alter_column('forum_action', 'ip', self.gf('django.db.models.fields.CharField')(max_length=16)) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '39'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '39'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.mysqlftsindex': { - 'Meta': {'object_name': 'MysqlFtsIndex', 'managed': 'False'}, - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'ftsindex'", 'unique': 'True', 'to': "orm['forum.Node']"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 6, 23, 19, 36, 33, 270629)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag'}, - 'created_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'null': 'True', 'blank': 'True'}), - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 6, 24, 19, 36, 33, 476216)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/0051_auto__chg_field_action_action_type.py.svn-base b/forum/migrations/.svn/text-base/0051_auto__chg_field_action_action_type.py.svn-base deleted file mode 100644 index 1c83b6a5e10bccc29bdcb2e3296fa56d23f7deee..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/0051_auto__chg_field_action_action_type.py.svn-base +++ /dev/null @@ -1,277 +0,0 @@ -# encoding: utf-8 -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - -class Migration(SchemaMigration): - - def forwards(self, orm): - - # Changing field 'Action.action_type' - db.alter_column('forum_action', 'action_type', self.gf('django.db.models.fields.CharField')(max_length=32)) - - - def backwards(self, orm): - - # Changing field 'Action.action_type' - db.alter_column('forum_action', 'action_type', self.gf('django.db.models.fields.CharField')(max_length=16)) - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '32'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '39'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '39'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.mysqlftsindex': { - 'Meta': {'object_name': 'MysqlFtsIndex', 'managed': 'False'}, - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'ftsindex'", 'unique': 'True', 'to': "orm['forum.Node']"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 7, 2, 9, 57, 53, 818588)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag'}, - 'created_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'null': 'True', 'blank': 'True'}), - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2011, 7, 3, 9, 57, 54, 45564)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] diff --git a/forum/migrations/.svn/text-base/__init__.py.svn-base b/forum/migrations/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 99b09c177aa3061a349be187daa5a4c0aa59e6fd..0000000000000000000000000000000000000000 --- a/forum/migrations/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,16 +0,0 @@ -import sys - -class ProgressBar(object): - def __init__(self, full): - self.full = full - self.count = 0 - - self.print_bar(0) - - def print_bar(self, progress): - sys.stdout.write("[%s%s] %d%%\r" % ('=' * progress, ' ' * (100 - progress), progress)) - sys.stdout.flush() - - def update(self): - self.count += 1 - self.print_bar(int((float(self.count) / float(self.full)) * 100)) \ No newline at end of file diff --git a/forum/models/.svn/all-wcprops b/forum/models/.svn/all-wcprops deleted file mode 100644 index ea73824f43f73041b040c36b39f3818443b06c0a..0000000000000000000000000000000000000000 --- a/forum/models/.svn/all-wcprops +++ /dev/null @@ -1,77 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 46 -/svnroot/!svn/ver/1272/osqa/trunk/forum/models -END -comment.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1201/osqa/trunk/forum/models/comment.py -END -node.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1249/osqa/trunk/forum/models/node.py -END -meta.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/meta.py -END -question.py -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/1272/osqa/trunk/forum/models/question.py -END -base.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1258/osqa/trunk/forum/models/base.py -END -tag.py -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1249/osqa/trunk/forum/models/tag.py -END -page.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/page.py -END -action.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1262/osqa/trunk/forum/models/action.py -END -user.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1245/osqa/trunk/forum/models/user.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/__init__.py -END -answer.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/answer.py -END -utils.py -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/utils.py -END diff --git a/forum/models/.svn/dir-prop-base b/forum/models/.svn/dir-prop-base deleted file mode 100644 index 288ff3ca75d17d39fe753f5a8d106114aff50db3..0000000000000000000000000000000000000000 --- a/forum/models/.svn/dir-prop-base +++ /dev/null @@ -1,6 +0,0 @@ -K 13 -svn:mergeinfo -V 100 -/osqa/branches/cacheimp/forum/models:874-939 -/osqa/branches/notification-config/forum/models:693-844 -END diff --git a/forum/models/.svn/entries b/forum/models/.svn/entries deleted file mode 100644 index c66f0a35f1c6a77ab917d1f2e05829883e1b9adb..0000000000000000000000000000000000000000 --- a/forum/models/.svn/entries +++ /dev/null @@ -1,439 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/models -http://svn.osqa.net/svnroot - - - -2012-06-15T18:17:36.689322Z -1272 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -node.py -file - - - - -2012-06-22T20:34:38.690425Z -b1be6b0f36ca0e8b7ab5d941e325507a -2012-04-10T21:23:11.705657Z -1249 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -16520 - -meta.py -file - - - - -2012-06-22T20:34:38.698421Z -8ff371ab57fcc14f1fbeb91e95dc48f2 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2598 - -question.py -file - - - - -2012-06-22T20:34:38.698421Z -a882aff1c8a2befce69418b691a43c47 -2012-06-15T18:17:36.689322Z -1272 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2599 - -base.py -file - - - - -2012-06-22T20:34:38.674433Z -e3642b5b6044bb550c43627aa3dba9e9 -2012-04-26T22:41:00.500537Z -1258 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -11471 - -tests -dir - -tag.py -file - - - - -2012-06-22T20:34:38.674433Z -9f8232996e1b96f839eda03df8060eff -2012-04-10T21:23:11.705657Z -1249 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2427 - -page.py -file - - - - -2012-06-22T20:34:38.674433Z -ae1b69518fe298d3aaf97aa69b937c9d -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1937 - -action.py -file - - - - -2012-06-22T20:34:38.674433Z -9a6e3dc23a33e5c7452cec2fdc281ac2 -2012-05-09T21:05:35.263939Z -1262 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -9330 - -user.py -file - - - - -2012-06-22T20:34:38.678431Z -603c1a314a504eff3d04f80a6c2acf24 -2012-04-07T14:47:53.728388Z -1245 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22399 - -__init__.py -file - - - - -2012-06-22T20:34:38.678431Z -9eb1fd7ce7a535af07f2c0721ed215b1 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1298 - -answer.py -file - - - - -2012-06-22T20:34:38.682429Z -ac56261c2a6922211f30121a79affda3 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -497 - -utils.py -file - - - - -2012-06-22T20:34:38.690425Z -b2cc5c3910a8f7969b26472599dcff0c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4026 - -comment.py -file - - - - -2012-06-22T20:34:38.690425Z -7d26ab1e74afd64232d0a8786431216b -2011-11-14T20:41:03.498989Z -1201 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1572 - diff --git a/forum/models/.svn/prop-base/__init__.py.svn-base b/forum/models/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/action.py.svn-base b/forum/models/.svn/prop-base/action.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/action.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/answer.py.svn-base b/forum/models/.svn/prop-base/answer.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/answer.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/base.py.svn-base b/forum/models/.svn/prop-base/base.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/base.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/comment.py.svn-base b/forum/models/.svn/prop-base/comment.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/comment.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/meta.py.svn-base b/forum/models/.svn/prop-base/meta.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/meta.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/node.py.svn-base b/forum/models/.svn/prop-base/node.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/node.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/page.py.svn-base b/forum/models/.svn/prop-base/page.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/question.py.svn-base b/forum/models/.svn/prop-base/question.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/question.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/tag.py.svn-base b/forum/models/.svn/prop-base/tag.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/tag.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/prop-base/user.py.svn-base b/forum/models/.svn/prop-base/user.py.svn-base deleted file mode 100644 index cb15ea33e68d1d69bde5aac89d3afcb3551fce69..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/user.py.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -K 13 -svn:mergeinfo -V 116 -/osqa/branches/cacheimp/forum/models/user.py:874-939 -/osqa/branches/notification-config/forum/models/user.py:693-846 -END diff --git a/forum/models/.svn/prop-base/utils.py.svn-base b/forum/models/.svn/prop-base/utils.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/.svn/prop-base/utils.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/.svn/text-base/__init__.py.svn-base b/forum/models/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 2164e366f60957b786afbc8ee5b4c0c8672647d8..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,39 +0,0 @@ -import forum.utils.djangofix -from question import Question ,QuestionRevision, QuestionSubscription -from answer import Answer, AnswerRevision -from tag import Tag, MarkedTag -from user import User, ValidationHash, AuthKeyUserAssociation, SubscriptionSettings -from node import Node, NodeRevision, NodeState, NodeMetaClass -from comment import Comment -from action import Action, ActionRepute -from meta import Vote, Flag, Badge, Award -from utils import KeyValue -from page import Page - -try: - from south.modelsinspector import add_introspection_rules - add_introspection_rules([], [r"^forum\.models\.\w+\.\w+"]) -except: - pass - -from base import * - -__all__ = [ - 'Node', 'NodeRevision', 'NodeState', - 'Question', 'QuestionSubscription', 'QuestionRevision', - 'Answer', 'AnswerRevision', - 'Tag', 'Comment', 'MarkedTag', 'Badge', 'Award', - 'ValidationHash', 'AuthKeyUserAssociation', 'SubscriptionSettings', 'KeyValue', 'User', - 'Action', 'ActionRepute', 'Vote', 'Flag', 'Page' - ] - - -from forum.modules import get_modules_script_classes - -for k, v in get_modules_script_classes('models', models.Model).items(): - if not k in __all__: - __all__.append(k) - exec "%s = v" % k - -NodeMetaClass.setup_relations() -BaseMetaClass.setup_denormalizes() diff --git a/forum/models/.svn/text-base/action.py.svn-base b/forum/models/.svn/text-base/action.py.svn-base deleted file mode 100644 index 7e887452dcd0451909cc618f834179ade80fd2a4..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/action.py.svn-base +++ /dev/null @@ -1,322 +0,0 @@ -from django.utils.translation import ugettext as _ -from django.utils.encoding import smart_unicode - -from utils import PickledObjectField -from threading import Thread -from forum.utils import html -from base import * -import re - -class ActionQuerySet(CachedQuerySet): - def obj_from_datadict(self, datadict): - cls = ActionProxyMetaClass.types.get(datadict['action_type'], None) - if cls: - obj = cls() - obj.__dict__.update(datadict) - return obj - else: - return super(ActionQuerySet, self).obj_from_datadict(datadict) - - def get(self, *args, **kwargs): - action = super(ActionQuerySet, self).get(*args, **kwargs).leaf - - if not isinstance(action, self.model): - raise self.model.DoesNotExist() - - return action - -class ActionManager(CachedManager): - use_for_related_fields = True - - def get_query_set(self): - qs = ActionQuerySet(self.model) - - if self.model is not Action: - return qs.filter(action_type=self.model.get_type()) - else: - return qs - - def get_for_types(self, types, *args, **kwargs): - kwargs['action_type__in'] = [t.get_type() for t in types] - return self.get(*args, **kwargs) - - -class Action(BaseModel): - user = models.ForeignKey('User', related_name="actions") - real_user = models.ForeignKey('User', related_name="proxied_actions", null=True) - ip = models.CharField(max_length=39) - node = models.ForeignKey('Node', null=True, related_name="actions") - action_type = models.CharField(max_length=32) - action_date = models.DateTimeField(default=datetime.datetime.now) - - extra = PickledObjectField() - - canceled = models.BooleanField(default=False) - canceled_by = models.ForeignKey('User', null=True, related_name="canceled_actions") - canceled_at = models.DateTimeField(null=True) - canceled_ip = models.CharField(max_length=39) - - hooks = {} - - objects = ActionManager() - - @property - def at(self): - return self.action_date - - @property - def by(self): - return self.user - - def repute_users(self): - pass - - def process_data(self, **data): - pass - - def process_action(self): - pass - - def cancel_action(self): - pass - - @property - def verb(self): - return "" - - def describe(self, viewer=None): - return self.__class__.__name__ - - def get_absolute_url(self): - if self.node: - return self.node.get_absolute_url() - else: - return self.user.get_profile_url() - - def repute(self, user, value): - repute = ActionRepute(action=self, user=user, value=value) - repute.save() - return repute - - def cancel_reputes(self): - for repute in self.reputes.all(): - cancel = ActionRepute(action=self, user=repute.user, value=(-repute.value), by_canceled=True) - cancel.save() - - @property - def leaf(self): - leaf_cls = ActionProxyMetaClass.types.get(self.action_type, None) - - if leaf_cls is None: - return self - - leaf = leaf_cls() - d = self._as_dict() - leaf.__dict__.update(self._as_dict()) - l = leaf._as_dict() - return leaf - - @classmethod - def get_type(cls): - return re.sub(r'action$', '', cls.__name__.lower()) - - def save(self, data=None, threaded=True, *args, **kwargs): - isnew = False - - if not self.id: - self.action_type = self.__class__.get_type() - isnew = True - - if data: - self.process_data(**data) - - super(Action, self).save(*args, **kwargs) - - if isnew: - if (self.node is None) or (not self.node.nis.wiki): - self.repute_users() - self.process_action() - self.trigger_hooks(threaded, True) - - return self - - def delete(self, *args, **kwargs): - self.cancel_action() - super(Action, self).delete(*args, **kwargs) - - def cancel(self, user=None, ip=None): - if not self.canceled: - self.canceled = True - self.canceled_at = datetime.datetime.now() - self.canceled_by = (user is None) and self.user or user - if ip: - self.canceled_ip = ip - self.save() - self.cancel_reputes() - self.cancel_action() - #self.trigger_hooks(False) - - @classmethod - def get_current(cls, **kwargs): - kwargs['canceled'] = False - - try: - return cls.objects.get(**kwargs) - except cls.MultipleObjectsReturned: - logging.error("Got multiple values for action %s with args %s", cls.__name__, - ", ".join(["%s='%s'" % i for i in kwargs.items()])) - raise - except cls.DoesNotExist: - return None - - @classmethod - def hook(cls, fn): - if not Action.hooks.get(cls, None): - Action.hooks[cls] = [] - - Action.hooks[cls].append(fn) - - def trigger_hooks(self, threaded, new=True): - if threaded: - thread = Thread(target=trigger_hooks, args=[self, Action.hooks, new]) - thread.setDaemon(True) - thread.start() - else: - trigger_hooks(self, Action.hooks, new) - - class Meta: - app_label = 'forum' - -def trigger_hooks(action, hooks, new): - for cls, hooklist in hooks.items(): - if isinstance(action, cls): - for hook in hooklist: - try: - hook(action=action, new=new) - except Exception, e: - import traceback - logging.error("Error in %s hook: %s" % (cls.__name__, str(e))) - logging.error(traceback.format_exc()) - -class ActionProxyMetaClass(BaseMetaClass): - types = {} - - def __new__(cls, *args, **kwargs): - new_cls = super(ActionProxyMetaClass, cls).__new__(cls, *args, **kwargs) - cls.types[new_cls.get_type()] = new_cls - - class Meta: - proxy = True - - new_cls.Meta = Meta - return new_cls - -class ActionProxy(Action): - __metaclass__ = ActionProxyMetaClass - - def friendly_username(self, viewer, user): - return (viewer == user) and _('You') or smart_unicode(user.username) - - def friendly_ownername(self, owner, user): - return (owner == user) and _('your') or smart_unicode(user.username) - - def viewer_or_user_verb(self, viewer, user, viewer_verb, user_verb): - return (viewer == user) and viewer_verb or user_verb - - def hyperlink(self, url, title, **attrs): - return html.hyperlink(url, title, **attrs) - - def describe_node(self, viewer, node): - node_link = self.hyperlink(node.get_absolute_url(), node.headline) - - if node.parent: - node_desc = _("on %(link)s") % {'link': node_link} - else: - node_desc = node_link - - return _("%(user)s %(node_name)s %(node_desc)s") % { - 'user': self.hyperlink(node.author.get_profile_url(), self.friendly_ownername(viewer, node.author)), - 'node_name': node.friendly_name, - 'node_desc': node_desc, - } - - def affected_links(self, viewer): - return ", ".join([self.hyperlink(u.get_profile_url(), self.friendly_username(viewer, u)) for u in set([r.user for r in self.reputes.all()])]) - - class Meta: - proxy = True - -class DummyActionProxyMetaClass(type): - def __new__(cls, *args, **kwargs): - new_cls = super(DummyActionProxyMetaClass, cls).__new__(cls, *args, **kwargs) - ActionProxyMetaClass.types[new_cls.get_type()] = new_cls - return new_cls - -class DummyActionProxy(object): - __metaclass__ = DummyActionProxyMetaClass - - hooks = [] - - def __init__(self, ip=None): - self.ip = ip - - def process_data(self, **data): - pass - - def process_action(self): - pass - - def save(self, data=None): - self.process_action() - - if data: - self.process_data(**data) - - for hook in self.__class__.hooks: - hook(self, True) - - @classmethod - def get_type(cls): - return re.sub(r'action$', '', cls.__name__.lower()) - - @classmethod - def hook(cls, fn): - cls.hooks.append(fn) - - -class ActionRepute(models.Model): - action = models.ForeignKey(Action, related_name='reputes') - date = models.DateTimeField(default=datetime.datetime.now) - user = models.ForeignKey('User', related_name='reputes') - value = models.IntegerField(default=0) - by_canceled = models.BooleanField(default=False) - - @property - def positive(self): - if self.value > 0: return self.value - return 0 - - @property - def negative(self): - if self.value < 0: return self.value - return 0 - - def _add_to_rep(self, value): - if int(self.user.reputation + value) < 1 and not settings.ALLOW_NEGATIVE_REPUTATION: - return 0 - else: - return models.F('reputation') + value - - def save(self, *args, **kwargs): - super(ActionRepute, self).save(*args, **kwargs) - self.user.reputation = self._add_to_rep(self.value) - self.user.save() - - def delete(self): - self.user.reputation = self._add_to_rep(-self.value) - self.user.save() - super(ActionRepute, self).delete() - - class Meta: - app_label = 'forum' - diff --git a/forum/models/.svn/text-base/answer.py.svn-base b/forum/models/.svn/text-base/answer.py.svn-base deleted file mode 100644 index 04735a4cc537c3bf81aacac7318749fb4d71e2c7..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/answer.py.svn-base +++ /dev/null @@ -1,24 +0,0 @@ -from base import * -from django.utils.translation import ugettext as _ - -class Answer(Node): - friendly_name = _("answer") - - class Meta(Node.Meta): - proxy = True - - @property - def accepted(self): - return self.nis.accepted - - @property - def headline(self): - return self.question.headline - - def get_absolute_url(self): - return '%s/%s' % (self.question.get_absolute_url(), self.id) - - -class AnswerRevision(NodeRevision): - class Meta: - proxy = True \ No newline at end of file diff --git a/forum/models/.svn/text-base/base.py.svn-base b/forum/models/.svn/text-base/base.py.svn-base deleted file mode 100644 index 47f71e0c4c6e857db7bc5e9def1d82d2f06de3b0..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/base.py.svn-base +++ /dev/null @@ -1,357 +0,0 @@ -import datetime -import re -try: - from hashlib import md5 -except: - from md5 import new as md5 -from urllib import quote_plus, urlencode -from django.db import models, IntegrityError, connection, transaction -from django.utils.http import urlquote as django_urlquote -from django.utils.html import strip_tags -from django.conf import settings as django_settings -from django.core.urlresolvers import reverse -from django.contrib.contenttypes import generic -from django.contrib.contenttypes.models import ContentType -from django.core.cache import cache -from django.template.defaultfilters import slugify -from django.db.models.signals import post_delete, post_save, pre_save, pre_delete -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe -from django.utils.encoding import force_unicode -from django.contrib.sitemaps import ping_google -import django.dispatch -from forum import settings -import logging - - -if not hasattr(cache, 'get_many'): - #put django 1.2 code here - pass - -class LazyQueryList(object): - def __init__(self, model, items): - self.items = items - self.model = model - - def __getitem__(self, k): - return self.model.objects.get(id=self.items[k][0]) - - def __iter__(self): - for id in self.items: - yield self.model.objects.get(id=id[0]) - - def __len__(self): - return len(self.items) - -class ToFetch(unicode): - pass - -class CachedQuerySet(models.query.QuerySet): - - def lazy(self): - if not len(self.query.aggregates): - values_list = ['id'] - - if len(self.query.extra): - extra_keys = self.query.extra.keys() - values_list += extra_keys - - return LazyQueryList(self.model, list(self.values_list(*values_list))) - else: - return self - - def obj_from_datadict(self, datadict): - obj = self.model() - obj.__dict__.update(datadict) - - if hasattr(obj, '_state'): - obj._state.db = 'default' - - return obj - - def _base_clone(self): - return self._clone(klass=models.query.QuerySet) - - def get(self, *args, **kwargs): - key = self.model.infer_cache_key(kwargs) - - if key is not None: - obj = cache.get(key) - - if obj is None: - obj = self._base_clone().get(*args, **kwargs) - obj.cache() - else: - obj = self.obj_from_datadict(obj) - - obj.reset_original_state() - - return obj - - return self._base_clone().get(*args, **kwargs) - - def _fetch_from_query_cache(self, key): - invalidation_key = self.model._get_cache_query_invalidation_key() - cached_result = cache.get_many([invalidation_key, key]) - - if not invalidation_key in cached_result: - self.model._set_query_cache_invalidation_timestamp() - return None - - if (key in cached_result) and(cached_result[invalidation_key] < cached_result[key][0]): - return cached_result[key][1] - - return None - - def count(self): - cache_key = self.model._generate_cache_key("CNT:%s" % self._get_query_hash()) - result = self._fetch_from_query_cache(cache_key) - - if result is not None: - return result - - result = super(CachedQuerySet, self).count() - cache.set(cache_key, (datetime.datetime.now(), result), 60 * 60) - return result - - def iterator(self): - cache_key = self.model._generate_cache_key("QUERY:%s" % self._get_query_hash()) - on_cache_query_attr = self.model.value_to_list_on_cache_query() - - to_return = None - to_cache = {} - - with_aggregates = len(self.query.aggregates) > 0 - key_list = self._fetch_from_query_cache(cache_key) - - if key_list is None: - if not with_aggregates: - values_list = [on_cache_query_attr] - - if len(self.query.extra): - values_list += self.query.extra.keys() - - key_list = [v[0] for v in self.values_list(*values_list)] - to_cache[cache_key] = (datetime.datetime.now(), key_list) - else: - to_return = list(super(CachedQuerySet, self).iterator()) - to_cache[cache_key] = (datetime.datetime.now(), [ - (row.__dict__[on_cache_query_attr], dict([(k, row.__dict__[k]) for k in self.query.aggregates.keys()])) - for row in to_return]) - elif with_aggregates: - tmp = key_list - key_list = [k[0] for k in tmp] - with_aggregates = [k[1] for k in tmp] - del tmp - - if (not to_return) and key_list: - row_keys = [self.model.infer_cache_key({on_cache_query_attr: attr}) for attr in key_list] - cached = cache.get_many(row_keys) - - to_return = [ - (ck in cached) and self.obj_from_datadict(cached[ck]) or ToFetch(force_unicode(key_list[i])) for i, ck in enumerate(row_keys) - ] - - if len(cached) != len(row_keys): - to_fetch = [unicode(tr) for tr in to_return if isinstance(tr, ToFetch)] - - fetched = dict([(force_unicode(r.__dict__[on_cache_query_attr]), r) for r in - models.query.QuerySet(self.model).filter(**{"%s__in" % on_cache_query_attr: to_fetch})]) - - to_return = [(isinstance(tr, ToFetch) and fetched[unicode(tr)] or tr) for tr in to_return] - to_cache.update(dict([(self.model.infer_cache_key({on_cache_query_attr: attr}), r._as_dict()) for attr, r in fetched.items()])) - - if with_aggregates: - for i, r in enumerate(to_return): - r.__dict__.update(with_aggregates[i]) - - - if len(to_cache): - cache.set_many(to_cache, 60 * 60) - - if to_return: - for row in to_return: - if hasattr(row, 'leaf'): - row = row.leaf - - row.reset_original_state() - yield row - - def _get_query_hash(self): - return md5(unicode(self.query).encode("utf-8")).hexdigest() - - - -class CachedManager(models.Manager): - use_for_related_fields = True - - def get_query_set(self): - return CachedQuerySet(self.model) - - def get_or_create(self, *args, **kwargs): - try: - return self.get(*args, **kwargs) - except: - return super(CachedManager, self).get_or_create(*args, **kwargs) - - -class DenormalizedField(object): - def __init__(self, manager, *args, **kwargs): - self.manager = manager - self.filter = (args, kwargs) - - def setup_class(self, cls, name): - dict_name = '_%s_dencache_' % name - - def getter(inst): - val = inst.__dict__.get(dict_name, None) - - if val is None: - val = getattr(inst, self.manager).filter(*self.filter[0], **self.filter[1]).count() - inst.__dict__[dict_name] = val - inst.cache() - - return val - - def reset_cache(inst): - inst.__dict__.pop(dict_name, None) - inst.uncache() - - cls.add_to_class(name, property(getter)) - cls.add_to_class("reset_%s_cache" % name, reset_cache) - - -class BaseMetaClass(models.Model.__metaclass__): - to_denormalize = [] - - def __new__(cls, *args, **kwargs): - new_cls = super(BaseMetaClass, cls).__new__(cls, *args, **kwargs) - - BaseMetaClass.to_denormalize.extend( - [(new_cls, name, field) for name, field in new_cls.__dict__.items() if isinstance(field, DenormalizedField)] - ) - - return new_cls - - @classmethod - def setup_denormalizes(cls): - for new_cls, name, field in BaseMetaClass.to_denormalize: - field.setup_class(new_cls, name) - - -class BaseModel(models.Model): - __metaclass__ = BaseMetaClass - - objects = CachedManager() - - class Meta: - abstract = True - app_label = 'forum' - - def __init__(self, *args, **kwargs): - super(BaseModel, self).__init__(*args, **kwargs) - self.reset_original_state(kwargs.keys()) - - def reset_original_state(self, reset_fields=None): - self._original_state = self._as_dict() - - if reset_fields: - self._original_state.update(dict([(f, None) for f in reset_fields])) - - def get_dirty_fields(self): - return [f.name for f in self._meta.fields if self._original_state[f.attname] != self.__dict__[f.attname]] - - def _as_dict(self): - return dict([(name, getattr(self, name)) for name in - ([f.attname for f in self._meta.fields] + [k for k in self.__dict__.keys() if k.endswith('_dencache_')]) - ]) - - def _get_update_kwargs(self): - return dict([ - (f.name, getattr(self, f.name)) for f in self._meta.fields if self._original_state[f.attname] != self.__dict__[f.attname] - ]) - - def save(self, full_save=False, *args, **kwargs): - put_back = [k for k, v in self.__dict__.items() if isinstance(v, models.expressions.ExpressionNode)] - - if hasattr(self, '_state'): - self._state.db = 'default' - - if self.id and not full_save: - self.__class__.objects.filter(id=self.id).update(**self._get_update_kwargs()) - else: - super(BaseModel, self).save() - - if put_back: - try: - self.__dict__.update( - self.__class__.objects.filter(id=self.id).values(*put_back)[0] - ) - except: - logging.error("Unable to read %s from %s" % (", ".join(put_back), self.__class__.__name__)) - self.uncache() - - self.reset_original_state() - self._set_query_cache_invalidation_timestamp() - self.cache() - - @classmethod - def _get_cache_query_invalidation_key(cls): - return cls._generate_cache_key("INV_TS") - - @classmethod - def _set_query_cache_invalidation_timestamp(cls): - cache.set(cls._get_cache_query_invalidation_key(), datetime.datetime.now(), 60 * 60 * 24) - - for base in filter(lambda c: issubclass(c, BaseModel) and (not c is BaseModel), cls.__bases__): - base._set_query_cache_invalidation_timestamp() - - @classmethod - def _generate_cache_key(cls, key, group=None): - if group is None: - group = cls.__name__ - - return '%s:%s:%s' % (settings.APP_URL, group, key) - - def cache_key(self): - return self._generate_cache_key(self.id) - - @classmethod - def value_to_list_on_cache_query(cls): - return 'id' - - @classmethod - def infer_cache_key(cls, querydict): - try: - pk = [v for (k,v) in querydict.items() if k in ('pk', 'pk__exact', 'id', 'id__exact' - ) or k.endswith('_ptr__pk') or k.endswith('_ptr__id')][0] - - cache_key = cls._generate_cache_key(pk) - - if len(cache_key) > django_settings.CACHE_MAX_KEY_LENGTH: - cache_key = cache_key[:django_settings.CACHE_MAX_KEY_LENGTH] - - return cache_key - except: - return None - - def cache(self): - cache.set(self.cache_key(), self._as_dict(), 60 * 60) - - def uncache(self): - cache.delete(self.cache_key()) - - def delete(self): - self.uncache() - self._set_query_cache_invalidation_timestamp() - super(BaseModel, self).delete() - - -from user import User -from node import Node, NodeRevision, NodeManager -from action import Action - - - - - diff --git a/forum/models/.svn/text-base/comment.py.svn-base b/forum/models/.svn/text-base/comment.py.svn-base deleted file mode 100644 index afa674f403381c658980d3420f2f2f53673e1180..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/comment.py.svn-base +++ /dev/null @@ -1,61 +0,0 @@ -from base import * -from django.utils.translation import ugettext as _ -import re - -class Comment(Node): - friendly_name = _("comment") - - class Meta(Node.Meta): - ordering = ('-added_at',) - proxy = True - - def _update_parent_comment_count(self, diff): - parent = self.parent - parent.comment_count = parent.comment_count + diff - parent.save() - - @property - def comment(self): - return self._comment() - - def _comment(self): - if settings.FORM_ALLOW_MARKDOWN_IN_COMMENTS: - return self.as_markdown('limitedsyntax') - else: - return self.body - - @property - def headline(self): - return self.absolute_parent.headline - - @property - def content_object(self): - return self.parent.leaf - - def save(self, *args, **kwargs): - super(Comment,self).save(*args, **kwargs) - - if not self.id: - self.parent.reset_comment_count_cache() - - def mark_deleted(self, user): - if super(Comment, self).mark_deleted(user): - self.parent.reset_comment_count_cache() - - def unmark_deleted(self): - if super(Comment, self).unmark_deleted(): - self.parent.reset_comment_count_cache() - - def is_reply_to(self, user): - inreply = re.search('@\w+', self.body) - if inreply is not None: - return user.username.startswith(inreply.group(0)) - - return False - - def get_absolute_url(self): - return self.abs_parent.get_absolute_url() + "#%d" % self.id - - def __unicode__(self): - return self.body - diff --git a/forum/models/.svn/text-base/meta.py.svn-base b/forum/models/.svn/text-base/meta.py.svn-base deleted file mode 100644 index 2b790d8e574b5b7f7bbdbf51944b4bdd12e79387..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/meta.py.svn-base +++ /dev/null @@ -1,82 +0,0 @@ -from django.utils.translation import ugettext as _ -from base import * - -class Vote(models.Model): - user = models.ForeignKey(User, related_name="votes") - node = models.ForeignKey(Node, related_name="votes") - value = models.SmallIntegerField() - action = models.OneToOneField(Action, related_name="vote") - voted_at = models.DateTimeField(default=datetime.datetime.now) - - class Meta: - app_label = 'forum' - unique_together = ('user', 'node') - - -class Flag(models.Model): - user = models.ForeignKey(User, related_name="flags") - node = models.ForeignKey(Node, related_name="flags") - reason = models.CharField(max_length=300) - action = models.OneToOneField(Action, related_name="flag") - flagged_at = models.DateTimeField(default=datetime.datetime.now) - - class Meta: - app_label = 'forum' - unique_together = ('user', 'node') - - -class Badge(BaseModel): - GOLD = 1 - SILVER = 2 - BRONZE = 3 - - type = models.SmallIntegerField() - cls = models.CharField(max_length=50, null=True) - awarded_count = models.PositiveIntegerField(default=0) - - awarded_to = models.ManyToManyField(User, through='Award', related_name='badges') - - def get_handler(self): - from forum.badges import BadgesMeta - return BadgesMeta.by_id.get(self.id, None) - - @property - def name(self): - cls = self.get_handler() - return cls and cls.name or _("Unknown") - - @property - def description(self): - cls = self.get_handler() - return cls and cls.description or _("No description available") - - @models.permalink - def get_absolute_url(self): - return ('badge', [], {'id': self.id, 'slug': slugify(self.name)}) - - def save(self, *args, **kwargs): - if isinstance(self.awarded_count, models.expressions.ExpressionNode): - super(Badge, self).save(*args, **kwargs) - self.awarded_count = self.__class__.objects.filter(id=self.id).values_list('awarded_count', flat=True)[0] - else: - super(Badge, self).save(*args, **kwargs) - - - class Meta: - app_label = 'forum' - - -class Award(models.Model): - user = models.ForeignKey(User) - badge = models.ForeignKey('Badge', related_name="awards") - node = models.ForeignKey(Node, null=True) - - awarded_at = models.DateTimeField(default=datetime.datetime.now) - - trigger = models.ForeignKey(Action, related_name="awards", null=True) - action = models.OneToOneField(Action, related_name="award") - - - class Meta: - unique_together = ('user', 'badge', 'node') - app_label = 'forum' \ No newline at end of file diff --git a/forum/models/.svn/text-base/node.py.svn-base b/forum/models/.svn/text-base/node.py.svn-base deleted file mode 100644 index 5b6cdb512a0554edac61d303594e15a11f65f494..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/node.py.svn-base +++ /dev/null @@ -1,541 +0,0 @@ -# -*- coding: utf-8 -*- - -from base import * -import re -from tag import Tag - -import markdown -from django.utils.encoding import smart_unicode -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe -from django.utils.html import strip_tags -from forum.utils.html import sanitize_html -from forum.utils.userlinking import auto_user_link -from forum.settings import SUMMARY_LENGTH -from utils import PickledObjectField - -class NodeContent(models.Model): - title = models.CharField(max_length=300) - tagnames = models.CharField(max_length=125) - author = models.ForeignKey(User, related_name='%(class)ss') - body = models.TextField() - - @property - def user(self): - return self.author - - @property - def html(self): - return self.body - - def rendered(self, content): - return auto_user_link(self, self._as_markdown(content, *['auto_linker'])) - - @classmethod - def _as_markdown(cls, content, *extensions): - try: - return mark_safe(sanitize_html(markdown.markdown(content, extensions=extensions))) - except Exception, e: - import traceback - logging.error("Caught exception %s in markdown parser rendering %s %s:\s %s" % ( - str(e), cls.__name__, str(e), traceback.format_exc())) - return '' - - def as_markdown(self, *extensions): - return self._as_markdown(smart_unicode(self.body), *extensions) - - @property - def headline(self): - title = self.title - - # Replaces multiple spaces with single ones. - title = re.sub(' +',' ', title) - - return title - - def tagname_list(self): - if self.tagnames: - return [name.strip() for name in self.tagnames.split() if name] - else: - return [] - - def tagname_meta_generator(self): - return u','.join([tag for tag in self.tagname_list()]) - - class Meta: - abstract = True - app_label = 'forum' - -class NodeMetaClass(BaseMetaClass): - types = {} - - def __new__(cls, *args, **kwargs): - new_cls = super(NodeMetaClass, cls).__new__(cls, *args, **kwargs) - - if not new_cls._meta.abstract and new_cls.__name__ is not 'Node': - NodeMetaClass.types[new_cls.get_type()] = new_cls - - return new_cls - - @classmethod - def setup_relations(cls): - for node_cls in NodeMetaClass.types.values(): - NodeMetaClass.setup_relation(node_cls) - - @classmethod - def setup_relation(cls, node_cls): - name = node_cls.__name__.lower() - - def children(self): - return node_cls.objects.filter(parent=self) - - def parent(self): - if (self.parent is not None) and self.parent.node_type == name: - return self.parent.leaf - - return None - - Node.add_to_class(name + 's', property(children)) - Node.add_to_class(name, property(parent)) - - -class NodeQuerySet(CachedQuerySet): - def obj_from_datadict(self, datadict): - cls = NodeMetaClass.types.get(datadict.get("node_type", ""), None) - if cls: - obj = cls() - obj.__dict__.update(datadict) - return obj - else: - return super(NodeQuerySet, self).obj_from_datadict(datadict) - - def get(self, *args, **kwargs): - node = super(NodeQuerySet, self).get(*args, **kwargs).leaf - - if not isinstance(node, self.model): - raise self.model.DoesNotExist() - - return node - - def any_state(self, *args): - filter = None - - for s in args: - s_filter = models.Q(state_string__contains="(%s)" % s) - filter = filter and (filter | s_filter) or s_filter - - if filter: - return self.filter(filter) - else: - return self - - def all_states(self, *args): - filter = None - - for s in args: - s_filter = models.Q(state_string__contains="(%s)" % s) - filter = filter and (filter & s_filter) or s_filter - - if filter: - return self.filter(filter) - else: - return self - - def filter_state(self, **kwargs): - apply_bool = lambda q, b: b and q or ~q - return self.filter(*[apply_bool(models.Q(state_string__contains="(%s)" % s), b) for s, b in kwargs.items()]) - - def children_count(self, child_type): - return NodeMetaClass.types[child_type].objects.filter_state(deleted=False).filter(parent__in=self).count() - - -class NodeManager(CachedManager): - use_for_related_fields = True - - def get_query_set(self): - qs = NodeQuerySet(self.model) - - # If the node is an answer, question or comment we filter the Node model by type - if self.model is not Node: - qs = qs.filter(node_type=self.model.get_type()) - - return qs - - def get_for_types(self, types, *args, **kwargs): - kwargs['node_type__in'] = [t.get_type() for t in types] - return self.get(*args, **kwargs) - - def filter_state(self, **kwargs): - return self.all().filter_state(**kwargs) - - -class NodeStateDict(object): - def __init__(self, node): - self.__dict__['_node'] = node - - def __getattr__(self, name): - if self.__dict__.get(name, None): - return self.__dict__[name] - - try: - node = self.__dict__['_node'] - action = NodeState.objects.get(node=node, state_type=name).action - self.__dict__[name] = action - return action - except: - return None - - def __setattr__(self, name, value): - current = self.__getattr__(name) - - if value: - if current: - current.action = value - current.save() - else: - node = self.__dict__['_node'] - state = NodeState(node=node, action=value, state_type=name) - state.save() - self.__dict__[name] = value - - if not "(%s)" % name in node.state_string: - node.state_string = "%s(%s)" % (node.state_string, name) - node.save() - else: - if current: - node = self.__dict__['_node'] - node.state_string = "".join("(%s)" % s for s in re.findall('\w+', node.state_string) if s != name) - node.save() - current.node_state.delete() - del self.__dict__[name] - - -class NodeStateQuery(object): - def __init__(self, node): - self.__dict__['_node'] = node - - def __getattr__(self, name): - node = self.__dict__['_node'] - return "(%s)" % name in node.state_string - - -class Node(BaseModel, NodeContent): - __metaclass__ = NodeMetaClass - - node_type = models.CharField(max_length=16, default='node') - parent = models.ForeignKey('Node', related_name='children', null=True) - abs_parent = models.ForeignKey('Node', related_name='all_children', null=True) - - added_at = models.DateTimeField(default=datetime.datetime.now) - score = models.IntegerField(default=0) - - state_string = models.TextField(default='') - last_edited = models.ForeignKey('Action', null=True, unique=True, related_name="edited_node") - - last_activity_by = models.ForeignKey(User, null=True) - last_activity_at = models.DateTimeField(null=True, blank=True) - - tags = models.ManyToManyField('Tag', related_name='%(class)ss') - active_revision = models.OneToOneField('NodeRevision', related_name='active', null=True) - - extra = PickledObjectField() - extra_ref = models.ForeignKey('Node', null=True) - extra_count = models.IntegerField(default=0) - - marked = models.BooleanField(default=False) - - comment_count = DenormalizedField("children", node_type="comment", canceled=False) - flag_count = DenormalizedField("actions", action_type="flag", canceled=False) - - friendly_name = _("post") - - objects = NodeManager() - - def __unicode__(self): - return self.headline - - @classmethod - def _generate_cache_key(cls, key, group="node"): - return super(Node, cls)._generate_cache_key(key, group) - - @classmethod - def get_type(cls): - return cls.__name__.lower() - - @property - def leaf(self): - leaf_cls = NodeMetaClass.types.get(self.node_type, None) - - if leaf_cls is None: - return self - - leaf = leaf_cls() - leaf.__dict__ = self.__dict__ - return leaf - - @property - def nstate(self): - state = self.__dict__.get('_nstate', None) - - if state is None: - state = NodeStateDict(self) - self._nstate = state - - return state - - @property - def nis(self): - nis = self.__dict__.get('_nis', None) - - if nis is None: - nis = NodeStateQuery(self) - self._nis = nis - - return nis - - @property - def last_activity(self): - try: - return self.actions.order_by('-action_date')[0].action_date - except: - return self.last_seen - - @property - def state_list(self): - return [s.state_type for s in self.states.all()] - - @property - def deleted(self): - return self.nis.deleted - - @property - def absolute_parent(self): - if not self.abs_parent_id: - return self - - return self.abs_parent - - @property - def summary(self): - content = strip_tags(self.html) - - # Remove multiple spaces. - content = re.sub(' +',' ', content) - - # Replace line breaks with a space, we don't need them at all. - content = content.replace("\n", ' ') - - # Truncate and all an ellipsis if length greater than summary length. - content = (content[:SUMMARY_LENGTH] + '...') if len(content) > SUMMARY_LENGTH else content - - return content - - # Can be used to block subscription notifications for a specific node from a module - def _is_notifiable(self): - return True - - @property - def is_notifiable(self): - return self._is_notifiable() - - @models.permalink - def get_revisions_url(self): - return ('revisions', (), {'id': self.id}) - - def update_last_activity(self, user, save=False, time=None): - if not time: - time = datetime.datetime.now() - - self.last_activity_by = user - self.last_activity_at = time - - if self.parent: - self.parent.update_last_activity(user, save=True, time=time) - - if save: - self.save() - - def _create_revision(self, user, number, **kwargs): - revision = NodeRevision(author=user, revision=number, node=self, **kwargs) - revision.save() - return revision - - def create_revision(self, user, **kwargs): - number = self.revisions.aggregate(last=models.Max('revision'))['last'] + 1 - revision = self._create_revision(user, number, **kwargs) - self.activate_revision(user, revision) - return revision - - def activate_revision(self, user, revision): - self.title = revision.title - self.tagnames = revision.tagnames - - self.body = self.rendered(revision.body) - - self.active_revision = revision - - # Try getting the previous revision - try: - prev_revision = NodeRevision.objects.get(node=self, revision=revision.revision-1) - - update_activity = True - - # Do not update the activity if only the tags are changed - if prev_revision.title == revision.title and prev_revision.body == revision.body \ - and prev_revision.tagnames != revision.tagnames and not settings.UPDATE_LATEST_ACTIVITY_ON_TAG_EDIT: - update_activity = False - except NodeRevision.DoesNotExist: - update_activity = True - finally: - if update_activity: - self.update_last_activity(user) - - self.save() - - def get_active_users(self, active_users = None): - if not active_users: - active_users = set() - - active_users.add(self.author) - - for node in self.children.all(): - if not node.nis.deleted: - node.get_active_users(active_users) - - return active_users - - def get_last_edited(self): - if not self.last_edited: - try: - le = self.actions.exclude(action_type__in=('voteup', 'votedown', 'flag'), canceled=True).order_by('-action_date')[0] - self.last_edited = le - self.save() - except: - pass - - return self.last_edited - - - def _list_changes_in_tags(self): - dirty = self.get_dirty_fields() - - if not 'tagnames' in dirty: - return None - else: - if self._original_state['tagnames']: - old_tags = set(self._original_state['tagnames'].split()) - else: - old_tags = set() - new_tags = set(self.tagnames.split()) - - return dict( - current=list(new_tags), - added=list(new_tags - old_tags), - removed=list(old_tags - new_tags) - ) - - def _last_active_user(self): - return self.last_edited and self.last_edited.by or self.author - - def _process_changes_in_tags(self): - tag_changes = self._list_changes_in_tags() - - if tag_changes is not None: - for name in tag_changes['added']: - try: - tag = Tag.objects.get(name=name) - except Tag.DoesNotExist: - tag = Tag.objects.create(name=name, created_by=self._last_active_user()) - - if not self.nis.deleted: - tag.add_to_usage_count(1) - tag.save() - - if not self.nis.deleted: - for name in tag_changes['removed']: - try: - tag = Tag.objects.get(name=name) - tag.add_to_usage_count(-1) - tag.save() - except: - pass - - return True - - return False - - def mark_deleted(self, action): - self.nstate.deleted = action - self.save() - - if action: - for tag in self.tags.all(): - tag.add_to_usage_count(-1) - tag.save() - else: - for tag in Tag.objects.filter(name__in=self.tagname_list()): - tag.add_to_usage_count(1) - tag.save() - - def delete(self, *args, **kwargs): - for tag in self.tags.all(): - tag.add_to_usage_count(-1) - tag.save() - - self.active_revision = None - self.save() - - for n in self.children.all(): - n.delete() - - for a in self.actions.all(): - a.cancel() - - super(Node, self).delete(*args, **kwargs) - - def save(self, *args, **kwargs): - if not self.id: - self.node_type = self.get_type() - super(BaseModel, self).save(*args, **kwargs) - self.active_revision = self._create_revision(self.author, 1, title=self.title, tagnames=self.tagnames, - body=self.body) - self.activate_revision(self.author, self.active_revision) - self.update_last_activity(self.author, time=self.added_at) - - if self.parent_id and not self.abs_parent_id: - self.abs_parent = self.parent.absolute_parent - - tags_changed = self._process_changes_in_tags() - - super(Node, self).save(*args, **kwargs) - if tags_changed: - if self.tagnames.strip(): - self.tags = list(Tag.objects.filter(name__in=self.tagname_list())) - else: - self.tags = [] - - class Meta: - app_label = 'forum' - - -class NodeRevision(BaseModel, NodeContent): - node = models.ForeignKey(Node, related_name='revisions') - summary = models.CharField(max_length=300) - revision = models.PositiveIntegerField() - revised_at = models.DateTimeField(default=datetime.datetime.now) - - class Meta: - unique_together = ('node', 'revision') - app_label = 'forum' - - -class NodeState(models.Model): - node = models.ForeignKey(Node, related_name='states') - state_type = models.CharField(max_length=16) - action = models.OneToOneField('Action', related_name="node_state") - - class Meta: - unique_together = ('node', 'state_type') - app_label = 'forum' - - diff --git a/forum/models/.svn/text-base/page.py.svn-base b/forum/models/.svn/text-base/page.py.svn-base deleted file mode 100644 index dcb9dfd417143c2722469b5d52587f41e5a7e433..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/page.py.svn-base +++ /dev/null @@ -1,73 +0,0 @@ -from base import * -from django.utils.translation import ugettext as _ - -def silent_permalink(func): - """ - Decorator that calls urlresolvers.reverse() to return a URL using - parameters returned by the decorated function "func". - - "func" should be a function that returns a tuple in one of the - following formats: - (viewname, viewargs) - (viewname, viewargs, viewkwargs) - """ - from django.core.urlresolvers import reverse - def inner(*args, **kwargs): - bits = func(*args, **kwargs) - try: - return reverse(bits[0], None, *bits[1:3]) - except: - return "javascript:alert('Configure this page URL in the urls.py file');" - return inner - -class Page(Node): - friendly_name = _("page") - - @property - def published(self): - return self.marked - - @property - def html(self): - return self._as_markdown(self.body) - - def save(self, *args, **kwargs): - old_options = self._original_state.get('extra', None) - - super(Page, self).save(*args, **kwargs) - - registry = settings.STATIC_PAGE_REGISTRY - - if old_options: - registry.pop(old_options.get('path', ''), None) - - registry[self.extra['path']] = self.id - - - settings.STATIC_PAGE_REGISTRY.set_value(registry) - - @property - def headline(self): - if self.published: - return self.title - else: - return _("[Unpublished] %s") % self.title - - @silent_permalink - def get_absolute_url(self): - return ('static_page', (), {'path': self.extra['path']}) - - def activate_revision(self, user, revision, extensions=['urlize']): - self.title = revision.title - self.tagnames = revision.tagnames - self.body = revision.body - - self.active_revision = revision - self.update_last_activity(user) - - self.save() - - class Meta(Node.Meta): - proxy = True - - diff --git a/forum/models/.svn/text-base/question.py.svn-base b/forum/models/.svn/text-base/question.py.svn-base deleted file mode 100644 index 5a7786de19092a3abed5a0d018a7f4c3053f198e..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/question.py.svn-base +++ /dev/null @@ -1,82 +0,0 @@ -from base import * -from tag import Tag -from django.utils.translation import ugettext as _ - -class QuestionManager(NodeManager): - def search(self, keywords, **kwargs): - return False, self.filter(models.Q(title__icontains=keywords) | models.Q(body__icontains=keywords)) - -class Question(Node): - class Meta(Node.Meta): - proxy = True - - answer_count = DenormalizedField("children", ~models.Q(state_string__contains="(deleted)"), node_type="answer") - accepted_count = DenormalizedField("children", ~models.Q(state_string__contains="(deleted)"), node_type="answer", marked=True) - favorite_count = DenormalizedField("actions", action_type="favorite", canceled=False) - - friendly_name = _("question") - objects = QuestionManager() - - @property - def closed(self): - return self.nis.closed - - @property - def view_count(self): - return self.extra_count - - @property - def headline(self): - return self._headline() - - def _headline(self): - if self.nis.deleted: - return _('[deleted] ') + self.title - - if self.nis.closed: - return _('[closed] ') + self.title - - return self.title - - @property - def accepted_answers(self): - return self.answers.filter(~models.Q(state_string__contains="(deleted)"), marked=True) - - @models.permalink - def get_absolute_url(self): - return ('question', (), {'id': self.id, 'slug': django_urlquote(slugify(self.title))}) - - def meta_description(self): - return self.summary - - def get_revision_url(self): - return reverse('question_revisions', args=[self.id]) - - def get_related_questions(self, count=10): - cache_key = '%s.related_questions:%d:%d' % (settings.APP_URL, count, self.id) - related_list = cache.get(cache_key) - - if related_list is None: - related_list = Question.objects.filter_state(deleted=False).values('id').filter(tags__id__in=[t.id for t in self.tags.all()] - ).exclude(id=self.id).annotate(frequency=models.Count('id')).order_by('-frequency')[:count] - cache.set(cache_key, related_list, 60 * 60) - - return [Question.objects.get(id=r['id']) for r in related_list] - - - - -class QuestionSubscription(models.Model): - user = models.ForeignKey(User) - question = models.ForeignKey(Node) - auto_subscription = models.BooleanField(default=True) - last_view = models.DateTimeField(default=datetime.datetime.now()) - - class Meta: - app_label = 'forum' - - -class QuestionRevision(NodeRevision): - class Meta: - proxy = True - diff --git a/forum/models/.svn/text-base/tag.py.svn-base b/forum/models/.svn/text-base/tag.py.svn-base deleted file mode 100644 index 73b1e30a2a92f3dcee60b85671cfdb91f7c1e3ac..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/tag.py.svn-base +++ /dev/null @@ -1,75 +0,0 @@ -import datetime -from base import * - -from django.conf import settings as django_settings -from django.core.cache.backends.base import BaseCache -from django.utils.translation import ugettext as _ -from django.utils.encoding import smart_unicode, force_unicode - -from forum import modules - -class ActiveTagManager(CachedManager): - use_for_related_fields = True - - def get_query_set(self): - return super(ActiveTagManager, self).get_query_set().exclude(used_count__lt=1) - -class Tag(BaseModel): - name = models.CharField(max_length=255, unique=True) - created_by = models.ForeignKey(User, related_name='created_tags') - created_at = models.DateTimeField(default=datetime.datetime.now, blank=True, null=True) - marked_by = models.ManyToManyField(User, related_name="marked_tags", through="MarkedTag") - # Denormalised data - used_count = models.PositiveIntegerField(default=0) - - active = ActiveTagManager() - - class Meta: - ordering = ('-used_count', 'name') - app_label = 'forum' - - def __unicode__(self): - return force_unicode(self.name) - - def add_to_usage_count(self, value): - if self.used_count + value < 0: - self.used_count = 0 - else: - self.used_count = models.F('used_count') + value - - def cache_key(self): - return self._generate_cache_key(Tag.safe_cache_name(self.name)) - - @classmethod - def safe_cache_name(cls, name): - return "".join([str(ord(c)) for c in name]) - - @classmethod - def infer_cache_key(cls, querydict): - if 'name' in querydict: - cache_key = cls._generate_cache_key(cls.safe_cache_name(querydict['name'])) - - if len(cache_key) > django_settings.CACHE_MAX_KEY_LENGTH: - cache_key = cache_key[:django_settings.CACHE_MAX_KEY_LENGTH] - - return cache_key - - return None - - @classmethod - def value_to_list_on_cache_query(cls): - return 'name' - - @models.permalink - def get_absolute_url(self): - return ('tag_questions', (), {'tag': self.name}) - -class MarkedTag(models.Model): - TAG_MARK_REASONS = (('good', _('interesting')), ('bad', _('ignored'))) - tag = models.ForeignKey(Tag, related_name='user_selections') - user = models.ForeignKey(User, related_name='tag_selections') - reason = models.CharField(max_length=16, choices=TAG_MARK_REASONS) - - class Meta: - app_label = 'forum' - diff --git a/forum/models/.svn/text-base/user.py.svn-base b/forum/models/.svn/text-base/user.py.svn-base deleted file mode 100644 index cf47c6653e78b2eaae6f68b5e8ae5039b5c5b8a4..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/user.py.svn-base +++ /dev/null @@ -1,639 +0,0 @@ -from base import * -from utils import PickledObjectField -from django.conf import settings as django_settings -from django.core.exceptions import ObjectDoesNotExist, MultipleObjectsReturned -from django.contrib.contenttypes.models import ContentType -from django.contrib.auth.models import User as DjangoUser, AnonymousUser as DjangoAnonymousUser -from django.db.models import Q, Manager - -from django.utils.encoding import smart_unicode - -from forum.settings import TRUNCATE_LONG_USERNAMES, TRUNCATE_USERNAMES_LONGER_THAN - -import string -from random import Random - -from django.utils.translation import ugettext as _ -import logging - -class AnonymousUser(DjangoAnonymousUser): - reputation = 0 - - def get_visible_answers(self, question): - return question.answers.filter_state(deleted=False) - - def can_view_deleted_post(self, post): - return False - - def can_vote_up(self): - return False - - def can_vote_down(self): - return False - - def can_vote_count_today(self): - return 0 - - def can_flag_offensive(self, post=None): - return False - - def can_view_offensive_flags(self, post=None): - return False - - def can_comment(self, post): - return False - - def can_like_comment(self, comment): - return False - - def can_edit_comment(self, comment): - return False - - def can_delete_comment(self, comment): - return False - - def can_convert_to_comment(self, answer): - return False - - def can_convert_to_question(self, answer): - return False - - def can_convert_comment_to_answer(self, comment): - return False - - def can_accept_answer(self, answer): - return False - - def can_create_tags(self): - return False - - def can_edit_post(self, post): - return False - - def can_wikify(self, post): - return False - - def can_cancel_wiki(self, post): - return False - - def can_retag_questions(self): - return False - - def can_close_question(self, question): - return False - - def can_reopen_question(self, question): - return False - - def can_delete_post(self, post): - return False - - def can_upload_files(self): - return False - - def is_a_super_user_or_staff(self): - return False - -def true_if_is_super_or_staff(fn): - def decorated(self, *args, **kwargs): - return self.is_superuser or self.is_staff or fn(self, *args, **kwargs) - - return decorated - -def false_if_validation_required_to(item): - def decorator(fn): - def decorated(self, *args, **kwargs): - if item in settings.REQUIRE_EMAIL_VALIDATION_TO and not self.email_isvalid: - return False - else: - return fn(self, *args, **kwargs) - return decorated - return decorator - -class UserManager(CachedManager): - def get(self, *args, **kwargs): - if not len(args) and len(kwargs) == 1 and 'username' in kwargs: - matching_users = self.filter(username=kwargs['username']) - - if len(matching_users) == 1: - return matching_users[0] - elif len(matching_users) > 1: - for user in matching_users: - if user.username == kwargs['username']: - return user - return matching_users[0] - return super(UserManager, self).get(*args, **kwargs) - -class User(BaseModel, DjangoUser): - is_approved = models.BooleanField(default=False) - email_isvalid = models.BooleanField(default=False) - - reputation = models.IntegerField(default=0) - gold = models.PositiveIntegerField(default=0) - silver = models.PositiveIntegerField(default=0) - bronze = models.PositiveIntegerField(default=0) - - last_seen = models.DateTimeField(default=datetime.datetime.now) - real_name = models.CharField(max_length=100, blank=True) - website = models.URLField(max_length=200, blank=True) - location = models.CharField(max_length=100, blank=True) - date_of_birth = models.DateField(null=True, blank=True) - about = models.TextField(blank=True) - - subscriptions = models.ManyToManyField('Node', related_name='subscribers', through='QuestionSubscription') - - vote_up_count = DenormalizedField("actions", canceled=False, action_type="voteup") - vote_down_count = DenormalizedField("actions", canceled=False, action_type="votedown") - - objects = UserManager() - - def __unicode__(self): - return smart_unicode(self.username) - - @property - def prop(self): - prop = self.__dict__.get('_prop', None) - - if prop is None: - prop = UserPropertyDict(self) - self._prop = prop - - return prop - - @property - def is_siteowner(self): - #todo: temporary thing, for now lets just assume that the site owner will always be the first user of the application - return self.id == 1 - - - def _decorated_name(self): - username = smart_unicode(self.username) - - if len(username) > TRUNCATE_USERNAMES_LONGER_THAN and TRUNCATE_LONG_USERNAMES: - username = '%s...' % username[:TRUNCATE_USERNAMES_LONGER_THAN-3] - - if settings.SHOW_STATUS_DIAMONDS: - if self.is_superuser: - return u"%s \u2666\u2666" % username - - if self.is_staff: - return u"%s \u2666" % username - - return username - - @property - def decorated_name(self): - return self._decorated_name() - - @property - def last_activity(self): - try: - return self.actions.order_by('-action_date')[0].action_date - except: - return self.last_seen - - @property - def gravatar(self): - return md5(self.email.lower()).hexdigest() - - def save(self, *args, **kwargs): - # If the community doesn't allow negative reputation, set it to 0 - if not settings.ALLOW_NEGATIVE_REPUTATION and self.reputation < 0: - self.reputation = 0 - - new = not bool(self.id) - - super(User, self).save(*args, **kwargs) - - if new: - sub_settings = SubscriptionSettings(user=self) - sub_settings.save() - - def get_messages(self): - messages = [] - for m in self.message_set.all(): - messages.append(m.message) - return messages - - def delete_messages(self): - self.message_set.all().delete() - - @models.permalink - def get_profile_url(self): - keyword_arguments = { - 'slug': slugify(smart_unicode(self.username)) - } - if settings.INCLUDE_ID_IN_USER_URLS: - keyword_arguments.update({ - 'id': self.id, - }) - return ('user_profile', (), keyword_arguments) - - def get_absolute_url(self): - return self.get_profile_url() - - @models.permalink - def get_asked_url(self): - return ('user_questions', (), {'mode': _('asked-by'), 'user': self.id, 'slug': slugify(smart_unicode(self.username))}) - - @models.permalink - def get_user_subscriptions_url(self): - keyword_arguments = { - 'slug': slugify(smart_unicode(self.username)) - } - if settings.INCLUDE_ID_IN_USER_URLS: - keyword_arguments.update({ - 'id': self.id, - }) - return ('user_subscriptions', (), keyword_arguments) - - @models.permalink - def get_answered_url(self): - return ('user_questions', (), {'mode': _('answered-by'), 'user': self.id, 'slug': slugify(self.username)}) - - def get_subscribed_url(self): - try: - # Try to retrieve the Subscribed User URL. - url = reverse('user_questions', - kwargs={'mode': _('subscribed-by'), 'user': self.id, 'slug': slugify(smart_unicode(self.username))}) - return url - except Exception, e: - # If some Exception has been raised, don't forget to log it. - logging.error("Error retrieving a subscribed user URL: %s" % e) - - def get_profile_link(self): - profile_link = u'<a href="%s">%s</a>' % (self.get_profile_url(), self.username) - return mark_safe(profile_link) - - def get_visible_answers(self, question): - return question.answers.filter_state(deleted=False) - - def get_vote_count_today(self): - today = datetime.date.today() - return self.actions.filter(canceled=False, action_type__in=("voteup", "votedown"), - action_date__gte=(today - datetime.timedelta(days=1))).count() - - def get_reputation_by_upvoted_today(self): - today = datetime.datetime.now() - sum = self.reputes.filter(reputed_at__range=(today - datetime.timedelta(days=1), today)).aggregate( - models.Sum('value')) - #todo: redo this, maybe transform in the daily cap - #if sum.get('value__sum', None) is not None: return sum['value__sum'] - return 0 - - def get_flagged_items_count_today(self): - today = datetime.date.today() - return self.actions.filter(canceled=False, action_type="flag", - action_date__gte=(today - datetime.timedelta(days=1))).count() - - def can_vote_count_today(self): - votes_today = settings.MAX_VOTES_PER_DAY - - if settings.USER_REPUTATION_TO_MAX_VOTES: - votes_today = votes_today + int(self.reputation) - - return votes_today - - def can_use_canned_comments(self): - # The canned comments feature is available only for admins and moderators, - # and only if the "Use canned comments" setting is activated in the administration. - if (self.is_superuser or self.is_staff) and settings.USE_CANNED_COMMENTS: - return True - else: - return False - - @true_if_is_super_or_staff - def can_view_deleted_post(self, post): - return post.author == self - - @true_if_is_super_or_staff - def can_vote_up(self): - return self.reputation >= int(settings.REP_TO_VOTE_UP) - - @true_if_is_super_or_staff - def can_vote_down(self): - return self.reputation >= int(settings.REP_TO_VOTE_DOWN) - - @false_if_validation_required_to('flag') - def can_flag_offensive(self, post=None): - if post is not None and post.author == self: - return False - return self.is_superuser or self.is_staff or self.reputation >= int(settings.REP_TO_FLAG) - - @true_if_is_super_or_staff - def can_view_offensive_flags(self, post=None): - if post is not None and post.author == self: - return True - return self.reputation >= int(settings.REP_TO_VIEW_FLAGS) - - @true_if_is_super_or_staff - @false_if_validation_required_to('comment') - def can_comment(self, post): - return self == post.author or self.reputation >= int(settings.REP_TO_COMMENT - ) or (post.__class__.__name__ == "Answer" and self == post.question.author) - - @true_if_is_super_or_staff - def can_like_comment(self, comment): - return self != comment.author and (self.reputation >= int(settings.REP_TO_LIKE_COMMENT)) - - @true_if_is_super_or_staff - def can_edit_comment(self, comment): - return (comment.author == self and comment.added_at >= datetime.datetime.now() - datetime.timedelta(minutes=60) - ) or self.is_superuser - - @true_if_is_super_or_staff - def can_delete_comment(self, comment): - return self == comment.author or self.reputation >= int(settings.REP_TO_DELETE_COMMENTS) - - def can_convert_comment_to_answer(self, comment): - # We need to know what is the comment parent node type. - comment_parent_type = comment.parent.node_type - - # If the parent is not a question or an answer this comment cannot be converted to an answer. - if comment_parent_type != "question" and comment_parent_type != "answer": - return False - - return (comment.parent.node_type in ('question', 'answer')) and (self.is_superuser or self.is_staff or ( - self == comment.author) or (self.reputation >= int(settings.REP_TO_CONVERT_COMMENTS_TO_ANSWERS))) - - def can_convert_to_comment(self, answer): - return (not answer.marked) and (self.is_superuser or self.is_staff or answer.author == self or self.reputation >= int - (settings.REP_TO_CONVERT_TO_COMMENT)) - - def can_convert_to_question(self, node): - return (not node.marked) and (self.is_superuser or self.is_staff or node.author == self or self.reputation >= int - (settings.REP_TO_CONVERT_TO_QUESTION)) - - @true_if_is_super_or_staff - def can_accept_answer(self, answer): - return self == answer.question.author and (settings.USERS_CAN_ACCEPT_OWN or answer.author != answer.question.author) - - @true_if_is_super_or_staff - def can_create_tags(self): - return self.reputation >= int(settings.REP_TO_CREATE_TAGS) - - @true_if_is_super_or_staff - def can_edit_post(self, post): - return self == post.author or self.reputation >= int(settings.REP_TO_EDIT_OTHERS - ) or (post.nis.wiki and self.reputation >= int( - settings.REP_TO_EDIT_WIKI)) - - @true_if_is_super_or_staff - def can_wikify(self, post): - return self == post.author or self.reputation >= int(settings.REP_TO_WIKIFY) - - @true_if_is_super_or_staff - def can_cancel_wiki(self, post): - return self == post.author - - @true_if_is_super_or_staff - def can_retag_questions(self): - return self.reputation >= int(settings.REP_TO_RETAG) - - @true_if_is_super_or_staff - def can_close_question(self, question): - return (self == question.author and self.reputation >= int(settings.REP_TO_CLOSE_OWN) - ) or self.reputation >= int(settings.REP_TO_CLOSE_OTHERS) - - @true_if_is_super_or_staff - def can_reopen_question(self, question): - # Check whether the setting to Unify close and reopen permissions has been activated - if bool(settings.UNIFY_PERMISSIONS_TO_CLOSE_AND_REOPEN): - # If we unify close to reopen check whether the user has permissions to close. - # If he has -- he can reopen his question too. - can_reopen = ( - self == question.author and self.reputation >= int(settings.REP_TO_CLOSE_OWN) - ) or self.reputation >= int(settings.REP_TO_CLOSE_OTHERS) - else: - # Check whether the user is the author and has the required permissions to reopen - can_reopen = self == question.author and self.reputation >= int(settings.REP_TO_REOPEN_OWN) - return can_reopen - - @true_if_is_super_or_staff - def can_delete_post(self, post): - if post.node_type == "comment": - return self.can_delete_comment(post) - - return (self == post.author and (post.__class__.__name__ == "Answer" or - not post.answers.exclude(author__id=self.id).count())) - - @true_if_is_super_or_staff - def can_upload_files(self): - return self.reputation >= int(settings.REP_TO_UPLOAD) - - @true_if_is_super_or_staff - def is_a_super_user_or_staff(self): - return False - - def email_valid_and_can_ask(self): - return 'ask' not in settings.REQUIRE_EMAIL_VALIDATION_TO or self.email_isvalid - - def email_valid_and_can_answer(self): - return 'answer' not in settings.REQUIRE_EMAIL_VALIDATION_TO or self.email_isvalid - - def check_password(self, old_passwd): - self.__dict__.update(self.__class__.objects.filter(id=self.id).values('password')[0]) - return DjangoUser.check_password(self, old_passwd) - - @property - def suspension(self): - if self.__dict__.get('_suspension_dencache_', False) != None: - try: - self.__dict__['_suspension_dencache_'] = self.reputes.get(action__action_type="suspend", action__canceled=False).action - except ObjectDoesNotExist: - self.__dict__['_suspension_dencache_'] = None - except MultipleObjectsReturned: - logging.error("Multiple suspension actions found for user %s (%s)" % (self.username, self.id)) - self.__dict__['_suspension_dencache_'] = self.reputes.filter(action__action_type="suspend", action__canceled=False - ).order_by('-action__action_date')[0].action - - return self.__dict__['_suspension_dencache_'] - - def _pop_suspension_cache(self): - self.__dict__.pop('_suspension_dencache_', None) - - def is_suspended(self): - if not self.is_active: - suspension = self.suspension - - if suspension and suspension.extra.get('bantype', None) == 'forxdays' and ( - datetime.datetime.now() > suspension.action_date + datetime.timedelta( - days=int(suspension.extra.get('forxdays', 365)))): - suspension.cancel() - else: - return True - - return False - - class Meta: - app_label = 'forum' - -class UserProperty(BaseModel): - user = models.ForeignKey(User, related_name='properties') - key = models.CharField(max_length=16) - value = PickledObjectField() - - class Meta: - app_label = 'forum' - unique_together = ('user', 'key') - - def cache_key(self): - return self._generate_cache_key("%s:%s" % (self.user.id, self.key)) - - @classmethod - def infer_cache_key(cls, querydict): - if 'user' in querydict and 'key' in querydict: - cache_key = cls._generate_cache_key("%s:%s" % (querydict['user'].id, querydict['key'])) - if len(cache_key) > django_settings.CACHE_MAX_KEY_LENGTH: - cache_key = cache_key[:django_settings.CACHE_MAX_KEY_LENGTH] - return cache_key - - return None - -class UserPropertyDict(object): - def __init__(self, user): - self.__dict__['_user'] = user - - def __get_property(self, name): - if self.__dict__.get('__%s__' % name, None): - return self.__dict__['__%s__' % name] - try: - user = self.__dict__['_user'] - prop = UserProperty.objects.get(user=user, key=name) - self.__dict__['__%s__' % name] = prop - self.__dict__[name] = prop.value - return prop - except: - return None - - - def __getattr__(self, name): - if self.__dict__.get(name, None): - return self.__dict__[name] - - prop = self.__get_property(name) - - if prop: - return prop.value - else: - return None - - def __setattr__(self, name, value): - current = self.__get_property(name) - - if value is not None: - if current: - current.value = value - self.__dict__[name] = value - current.save(full_save=True) - else: - user = self.__dict__['_user'] - prop = UserProperty(user=user, value=value, key=name) - prop.save() - self.__dict__[name] = value - self.__dict__['__%s__' % name] = prop - else: - if current: - current.delete() - del self.__dict__[name] - del self.__dict__['__%s__' % name] - - -class SubscriptionSettings(models.Model): - user = models.OneToOneField(User, related_name='subscription_settings', editable=False) - - enable_notifications = models.BooleanField(default=True) - - #notify if - member_joins = models.CharField(max_length=1, default='n') - new_question = models.CharField(max_length=1, default='n') - new_question_watched_tags = models.CharField(max_length=1, default='i') - subscribed_questions = models.CharField(max_length=1, default='i') - - #auto_subscribe_to - all_questions = models.BooleanField(default=False) - all_questions_watched_tags = models.BooleanField(default=False) - questions_viewed = models.BooleanField(default=False) - - #notify activity on subscribed - notify_answers = models.BooleanField(default=True) - notify_reply_to_comments = models.BooleanField(default=True) - notify_comments_own_post = models.BooleanField(default=True) - notify_comments = models.BooleanField(default=False) - notify_accepted = models.BooleanField(default=False) - - send_digest = models.BooleanField(default=True) - - class Meta: - app_label = 'forum' - -from forum.utils.time import one_day_from_now - -class ValidationHashManager(models.Manager): - def _generate_md5_hash(self, user, type, hash_data, seed): - return md5("%s%s%s%s" % (seed, "".join(map(str, hash_data)), user.id, type)).hexdigest() - - def create_new(self, user, type, hash_data=[], expiration=None): - seed = ''.join(Random().sample(string.letters+string.digits, 12)) - hash = self._generate_md5_hash(user, type, hash_data, seed) - - obj = ValidationHash(hash_code=hash, seed=seed, user=user, type=type) - - if expiration is not None: - obj.expiration = expiration - - try: - obj.save() - except: - return None - - return obj - - def validate(self, hash, user, type, hash_data=[]): - try: - obj = self.get(hash_code=hash) - except: - return False - - if obj.type != type: - return False - - if obj.user != user: - return False - - valid = (obj.hash_code == self._generate_md5_hash(obj.user, type, hash_data, obj.seed)) - - if valid: - if obj.expiration < datetime.datetime.now(): - obj.delete() - return False - else: - obj.delete() - return True - - return False - -class ValidationHash(models.Model): - hash_code = models.CharField(max_length=255, unique=True) - seed = models.CharField(max_length=12) - expiration = models.DateTimeField(default=one_day_from_now) - type = models.CharField(max_length=12) - user = models.ForeignKey(User) - - objects = ValidationHashManager() - - class Meta: - unique_together = ('user', 'type') - app_label = 'forum' - - def __str__(self): - return self.hash_code - -class AuthKeyUserAssociation(models.Model): - key = models.CharField(max_length=255, null=False, unique=True) - provider = models.CharField(max_length=64) - user = models.ForeignKey(User, related_name="auth_keys") - added_at = models.DateTimeField(default=datetime.datetime.now) - - class Meta: - app_label = 'forum' diff --git a/forum/models/.svn/text-base/utils.py.svn-base b/forum/models/.svn/text-base/utils.py.svn-base deleted file mode 100644 index 1fbda58e4f2d3cd3b20edc8bffc6d31e4f0d7937..0000000000000000000000000000000000000000 --- a/forum/models/.svn/text-base/utils.py.svn-base +++ /dev/null @@ -1,128 +0,0 @@ -from django.db import models -from django.core.cache import cache -from django.conf import settings -from django.utils.encoding import force_unicode - -try: - from cPickle import loads, dumps -except ImportError: - from pickle import loads, dumps - -from copy import deepcopy -from base64 import b64encode, b64decode -from zlib import compress, decompress -import re - -from base import BaseModel - -MAX_MARKABLE_STRING_LENGTH = 100 - -class PickledObject(unicode): - pass - -def dbsafe_encode(value, compress_object=True): - if not compress_object: - value = b64encode(dumps(deepcopy(value))) - else: - value = b64encode(compress(dumps(deepcopy(value)))) - return PickledObject(value) - -def dbsafe_decode(value, compress_object=True): - if not compress_object: - value = loads(b64decode(value)) - else: - value = loads(decompress(b64decode(value))) - return value - -class PickledObjectField(models.Field): - __metaclass__ = models.SubfieldBase - - marker_re = re.compile(r'^T\[(?P<type>\w+)\](?P<value>.*)$', re.DOTALL) - markable_types = dict((t.__name__, t) for t in (str, int, unicode)) - - def __init__(self, *args, **kwargs): - self.compress = kwargs.pop('compress', True) - self.protocol = kwargs.pop('protocol', 2) - kwargs.setdefault('null', True) - kwargs.setdefault('editable', False) - super(PickledObjectField, self).__init__(*args, **kwargs) - - def generate_type_marked_value(self, value): - return PickledObject(u"T[%s]%s" % (type(value).__name__, value)) - - def read_marked_value(self, value): - m = self.marker_re.match(value) - - if m: - marker = m.group('type') - value = m.group('value') - if marker in self.markable_types: - value = self.markable_types[marker](value) - - return value - - def get_default(self): - if self.has_default(): - if callable(self.default): - return self.default() - return self.default - - return super(PickledObjectField, self).get_default() - - def to_python(self, value): - if value is not None: - try: - if value.startswith("T["): - value = self.read_marked_value(value) - else: - value = dbsafe_decode(value, self.compress) - except: - if isinstance(value, PickledObject): - raise - return value - - def get_db_prep_value(self, value): - if value is not None and not isinstance(value, PickledObject): - if type(value).__name__ in self.markable_types and not (isinstance(value, basestring) and len(value - ) > MAX_MARKABLE_STRING_LENGTH): - value = unicode(self.generate_type_marked_value(value)) - else: - value = unicode(dbsafe_encode(value, self.compress)) - return value - - def value_to_string(self, obj): - value = self._get_val_from_obj(obj) - return self.get_db_prep_value(value) - - def get_internal_type(self): - return 'TextField' - - def get_db_prep_lookup(self, lookup_type, value): - if lookup_type not in ['exact', 'in', 'isnull']: - raise TypeError('Lookup type %s is not supported.' % lookup_type) - return super(PickledObjectField, self).get_db_prep_lookup(lookup_type, value) - - -class KeyValue(BaseModel): - key = models.CharField(max_length=255, unique=True) - value = PickledObjectField() - - class Meta: - app_label = 'forum' - - def cache_key(self): - return self._generate_cache_key(self.key) - - @classmethod - def infer_cache_key(cls, querydict): - try: - key = [v for (k, v) in querydict.items() if k in ('key', 'key__exact')][0] - - return cls._generate_cache_key(key) - except: - return None - - @classmethod - def value_to_list_on_cache_query(cls): - return 'key' - diff --git a/forum/models/tests/.svn/all-wcprops b/forum/models/tests/.svn/all-wcprops deleted file mode 100644 index 7597e1833c08d2c25ab5f7b59114ddd166f1d50d..0000000000000000000000000000000000000000 --- a/forum/models/tests/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 52 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/tests -END -test_user.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/tests/test_user.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 64 -/svnroot/!svn/ver/1077/osqa/trunk/forum/models/tests/__init__.py -END diff --git a/forum/models/tests/.svn/entries b/forum/models/tests/.svn/entries deleted file mode 100644 index f2f72c1d549311852cdb499da6dbe867365ddc5e..0000000000000000000000000000000000000000 --- a/forum/models/tests/.svn/entries +++ /dev/null @@ -1,99 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/models/tests -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -fixtures -dir - -test_user.py -file - - - - -2012-06-22T20:34:38.630455Z -1c4056a25861c80ea7db97451ec0ca48 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2053 - -__init__.py -file - - - - -2012-06-22T20:34:38.630455Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - diff --git a/forum/models/tests/.svn/prop-base/__init__.py.svn-base b/forum/models/tests/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/tests/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/tests/.svn/prop-base/test_user.py.svn-base b/forum/models/tests/.svn/prop-base/test_user.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/models/tests/.svn/prop-base/test_user.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/models/tests/.svn/text-base/__init__.py.svn-base b/forum/models/tests/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum/models/tests/.svn/text-base/test_user.py.svn-base b/forum/models/tests/.svn/text-base/test_user.py.svn-base deleted file mode 100644 index 0d9a93eb26487b7ae780cfdaabd70fd2493e94e8..0000000000000000000000000000000000000000 --- a/forum/models/tests/.svn/text-base/test_user.py.svn-base +++ /dev/null @@ -1,96 +0,0 @@ -from django.test import TestCase -from forum.models.user import * - -class UserTest(TestCase): - fixtures = ['users.xml'] - - def setUp(self): - self.client.login(username='super', password='secret') - - - - def tearDown(self): - self.client.logout() - - def test_gravatar(self): - - self.assert_(True) - - def test_save(self): - self.assert_(True) - - def test_get_absolute_url(self): - self.assert_(True) - - def test_get_messages(self): - self.assert_(True) - - def test_delete_messages(self): - self.assert_(True) - - def test_get_profile_url(self): - self.assert_(True) - - def test_get_profile_link(self): - self.assert_(True) - - def test_get_visible_answers(self): - self.assert_(True) - - def test_get_vote_count_today(self): - self.assert_(True) - - def test_get_reputation_by_upvoted_today(self): - self.assert_(True) - - def test_get_flagged_items_count_today(self): - self.assert_(True) - - def test_can_view_deleted_post(self): - self.assert_(True) - - def test_can_vote_up(self): - self.assert_(True) - - def test_can_vote_down(self): - self.assert_(True) - - def test_can_flag_offensive(self): - self.assert_(True) - - def test_can_view_offensive_flags(self): - self.assert_(True) - - def test_can_comment(self): - self.assert_(True) - - def test_can_like_comment(self): - self.assert_(True) - - def test_can_edit_comment(self): - self.assert_(True) - - def test_can_delete_comment(self): - self.assert_(True) - - def test_can_accept_answer(self): - self.assert_(True) - - def test_can_edit_post(self): - self.assert_(True) - - def test_can_retag_questions(self): - self.assert_(True) - - def test_can_close_question(self): - self.assert_(True) - - def test_can_reopen_question(self): - self.assert_(True) - - def test_can_delete_post(self): - self.assert_(True) - - def test_can_upload_files(self): - self.assert_(True) - diff --git a/forum/models/tests/fixtures/.svn/all-wcprops b/forum/models/tests/fixtures/.svn/all-wcprops deleted file mode 100644 index 836e41c567e4ad54e31252366527c94ba0306f8e..0000000000000000000000000000000000000000 --- a/forum/models/tests/fixtures/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 60 -/svnroot/!svn/ver/333/osqa/trunk/forum/models/tests/fixtures -END -users -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/333/osqa/trunk/forum/models/tests/fixtures/users -END diff --git a/forum/models/tests/fixtures/.svn/entries b/forum/models/tests/fixtures/.svn/entries deleted file mode 100644 index 1531a6846d8e3a99635dce8ab01d6891941a6b98..0000000000000000000000000000000000000000 --- a/forum/models/tests/fixtures/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/models/tests/fixtures -http://svn.osqa.net/svnroot - - - -2010-05-26T17:39:49.498483Z -333 -qw3rty - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -users -file - - - - -2012-06-22T20:34:38.626457Z -0a5b9a18403705adc2a9ffa1f37e6f9f -2010-05-26T17:39:49.498483Z -333 -qw3rty - - - - - - - - - - - - - - - - - - - - - -2098 - diff --git a/forum/models/tests/fixtures/.svn/text-base/users.svn-base b/forum/models/tests/fixtures/.svn/text-base/users.svn-base deleted file mode 100644 index 7f8a95a122814067e0438a9ac9da3d6f8f9e4c3c..0000000000000000000000000000000000000000 --- a/forum/models/tests/fixtures/.svn/text-base/users.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<django-objects version="1.0"> - <object pk="100" model="forum.models.user"> - <field type="CharField" name="username">super</field> - <field type="CharField" name="first_name">Super</field> - <field type="CharField" name="last_name">User</field> - <field type="CharField" name="email">super@example.com</field> - <field type="CharField" name="password">sha1$995a3$6011485ea3834267d719b4c801409b8b1ddd0158</field> - <field type="BooleanField" name="is_staff">True</field> - <field type="BooleanField" name="is_active">True</field> - <field type="BooleanField" name="is_superuser">True</field> - <field type="DateTimeField" name="last_login">2007-05-30 13:20:10</field> - <field type="DateTimeField" name="date_joined">2007-05-30 13:20:10</field> - <field to="auth.group" name="groups" rel="ManyToManyRel"></field> - <field to="auth.permission" name="user_permissions" rel="ManyToManyRel"></field> - - <field type="BooleanField" name="is_approved">True</field> - <field type="BooleanField" name="email_isvalid">True</field> - <field type="PositiveIntegerField" name="reputation">10</field> - <field type="PositiveIntegerField" name="gold">1</field> - <field type="PositiveIntegerField" name="silver">1</field> - <field type="PositiveIntegerField" name="bronze">1</field> - <field type="DateTimeField" name="last_seen">2007-05-30 13:20:10</field> - <field type="CharField" name="real_name">Super User</field> - <field type="URLField" name="website">www.superuser.com</field> - <field type="CharField" name="location">Raleigh</field> - <field type="DateField" name="date_of_birth">2007-05-30 13:20:10</field> - <field type="TextField" name="about">I am a super user</field> - <field type="ManyToManyField" name="subscriptions"></field> - <field type="DenormalizedField" name="vote_up_count">1</field> - <field type="DenormalizedField" name="vote_down_count">1</field> - </object> -</django-objects> \ No newline at end of file diff --git a/forum/modules/.svn/all-wcprops b/forum/modules/.svn/all-wcprops deleted file mode 100644 index 92721ea367306826968a36ee5c7a28d3a9b05cbe..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 47 -/svnroot/!svn/ver/1077/osqa/trunk/forum/modules -END -decorators.py -K 25 -svn:wc:ra_dav:version-url -V 61 -/svnroot/!svn/ver/1077/osqa/trunk/forum/modules/decorators.py -END -ui_objects.py -K 25 -svn:wc:ra_dav:version-url -V 60 -/svnroot/!svn/ver/924/osqa/trunk/forum/modules/ui_objects.py -END -ui.py -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1046/osqa/trunk/forum/modules/ui.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1077/osqa/trunk/forum/modules/__init__.py -END -template_loader.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/840/osqa/trunk/forum/modules/template_loader.py -END diff --git a/forum/modules/.svn/entries b/forum/modules/.svn/entries deleted file mode 100644 index 39d99ed2125644e71c7863e892c764f889c90727..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/entries +++ /dev/null @@ -1,198 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/modules -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -decorators.py -file - - - - -2012-06-22T20:34:44.227662Z -3481bfef77c99c2f16de5624033f1b13 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4954 - -ui_objects.py -file - - - - -2012-06-22T20:34:44.227662Z -72a82384b38307b1ed8ea966f23e2e99 -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -7508 - -ui.py -file - - - - -2012-06-22T20:34:44.223664Z -d84dbbb48b53c8fedeba613f38072e87 -2011-05-23T12:45:12.475242Z -1046 -jordan - - - - - - - - - - - - - - - - - - - - - -1241 - -__init__.py -file - - - - -2012-06-22T20:34:44.227662Z -f2d218f46d6eca69c23ca744466d7c8c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2096 - -template_loader.py -file - - - - -2012-06-22T20:34:44.227662Z -bceb1e19ccf920f11301e2ef2d658555 -2011-03-15T02:12:27.978921Z -840 -hernani - - - - - - - - - - - - - - - - - - - - - -1544 - diff --git a/forum/modules/.svn/prop-base/__init__.py.svn-base b/forum/modules/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/modules/.svn/prop-base/decorators.py.svn-base b/forum/modules/.svn/prop-base/decorators.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/prop-base/decorators.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/modules/.svn/text-base/__init__.py.svn-base b/forum/modules/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index f1ad7d96bb167a936ea87756b8dfb695a7384cf4..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,81 +0,0 @@ -import types -import logging - -from django.conf import settings - -def get_modules_folder(): - return get_modules_folder.value - -def get_modules_script(script_name): - all = [] - - for m in settings.MODULE_LIST: - if hasattr(m, script_name): - all.append(getattr(m, script_name)) - continue - - try: - all.append(__import__('%s.%s' % (m.__name__, script_name), globals(), locals(), [m.__name__])) - except ImportError, e: - #print repr(type(e)) + m.__name__ + ":" + str(e) - pass - except: - import traceback - msg = "Error importing %s from module %s: \n %s" % ( - script_name, m, traceback.format_exc() - ) - logging.error(msg) - - return all - -def get_modules_script_implementations(script_name, impl_class): - scripts = get_modules_script(script_name) - all_impls = {} - - for script in scripts: - all_impls.update(dict([ - (n, i) for (n, i) in [(n, getattr(script, n)) for n in dir(script)] - if isinstance(i, impl_class) - ])) - - return all_impls - -def get_modules_script_classes(script_name, base_class): - scripts = get_modules_script(script_name) - all_classes = {} - - for script in scripts: - all_classes.update(dict([ - (n, c) for (n, c) in [(n, getattr(script, n)) for n in dir(script)] - if isinstance(c, (type, types.ClassType)) and issubclass(c, base_class) - ])) - - return all_classes - -def get_all_handlers(name): - handler_files = get_modules_script('handlers') - - return [ - h for h in [ - getattr(f, name) for f in handler_files - if hasattr(f, name) - ] - - if callable(h) - ] - -def call_all_handlers(name, *args, **kwargs): - all = get_all_handlers(name) - - ret = [] - - for handler in all: - ret.append(handler(*args, **kwargs)) - - return ret - -def get_handler(name, default): - all = get_all_handlers(name) - return len(all) and all[0] or default - -from decorators import decorate, ReturnImediatelyException diff --git a/forum/modules/.svn/text-base/decorators.py.svn-base b/forum/modules/.svn/text-base/decorators.py.svn-base deleted file mode 100644 index 05af3a6014119b72e8741ed8c07515a760ecedcc..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/text-base/decorators.py.svn-base +++ /dev/null @@ -1,164 +0,0 @@ -import inspect - -class DecoratableObject(object): - MODE_OVERRIDE = 0 - MODE_PARAMS = 1 - MODE_RESULT = 2 - - def __init__(self, fn, is_method=False): - self._callable = fn - self.is_method = is_method - - self._params_decoration = None - self._result_decoration = None - - def _decorate(self, fn, mode, **kwargs): - if mode == self.MODE_OVERRIDE: - self._decorate_full(fn, **kwargs) - elif mode == self.MODE_PARAMS: - self._decorate_params(fn) - elif mode == self.MODE_RESULT: - self._decorate_result(fn, **kwargs) - - def _decorate_full(self, fn, needs_origin=True): - origin = self._callable - - if needs_origin: - if self.is_method: - self._callable = lambda inst, *args, **kwargs: fn(inst, origin, *args, **kwargs) - else: - self._callable = lambda *args, **kwargs: fn(origin, *args, **kwargs) - else: - self._callable = fn - - def _decorate_params(self, fn): - if not self._params_decoration: - self._params_decoration = [] - - self._params_decoration.append(fn) - - def _decorate_result(self, fn, needs_params=False): - if not self._result_decoration: - self._result_decoration = [] - - fn._needs_params = needs_params - self._result_decoration.append(fn) - - def __call__(self, *args, **kwargs): - if self._params_decoration: - for dec in self._params_decoration: - try: - args, kwargs = dec(*args, **kwargs) - except ReturnImediatelyException, e: - return e.ret - - res = self._callable(*args, **kwargs) - - if self._result_decoration: - for dec in self._result_decoration: - if dec._needs_params: - res = dec(res, *args, **kwargs) - else: - res = dec(res) - - return res - -class ReturnImediatelyException(Exception): - def __init__(self, ret): - super(Exception, self).__init__() - self.ret = ret - -def _check_decoratable(origin, install=True): - if not hasattr(origin, '_decoratable_obj'): - if inspect.ismethod(origin) and not hasattr(origin, '_decoratable_obj'): - decoratable = DecoratableObject(origin) - - def decoratable_method(self, *args, **kwargs): - return decoratable(self, *args, **kwargs) - - decoratable_method._decoratable_obj = decoratable - - def decoratable_decorate(fn, mode, **kwargs): - decoratable._decorate(fn, mode, **kwargs) - - decoratable_method._decorate = decoratable_decorate - - if install: - setattr(origin.im_class, origin.__name__, decoratable_method) - - return decoratable_method - - elif inspect.isfunction(origin): - decoratable = DecoratableObject(origin) - - def decorated(*args, **kwargs): - return decoratable(*args, **kwargs) - - decorated._decoratable_obj = decoratable - - if install: - setattr(inspect.getmodule(origin), origin.__name__, decorated) - - decorated.__name__ = origin.__name__ - decorated.__module__ = origin.__module__ - - return decorated - - return origin - - -def decorate(origin, needs_origin=True): - origin = _check_decoratable(origin) - - def decorator(fn): - origin._decoratable_obj._decorate(fn, DecoratableObject.MODE_OVERRIDE, needs_origin=needs_origin) - - return decorator - - -def _decorate_params(origin): - origin = _check_decoratable(origin) - - def decorator(fn): - origin._decoratable_obj._decorate(fn, DecoratableObject.MODE_PARAMS) - - return decorator - -decorate.params = _decorate_params - -def _decorate_result(origin, needs_params=False): - origin = _check_decoratable(origin) - - def decorator(fn): - origin._decoratable_obj._decorate(fn, DecoratableObject.MODE_RESULT, needs_params=needs_params) - - return decorator - -decorate.result = _decorate_result - -def _decorate_with(fn): - def decorator(origin): - origin = _check_decoratable(origin) - origin._decoratable_obj._decorate(fn, DecoratableObject.MODE_OVERRIDE, needs_origin=True) - return origin - return decorator - -decorate.withfn = _decorate_with - -def _decorate_result_with(fn, needs_params=False): - def decorator(origin): - origin = _check_decoratable(origin) - origin._decoratable_obj._decorate(fn, DecoratableObject.MODE_RESULT, needs_params=needs_params) - return origin - return decorator - -decorate.result.withfn = _decorate_result_with - -def _decorate_params_with(fn): - def decorator(origin): - origin = _check_decoratable(origin) - origin._decoratable_obj._decorate(fn, DecoratableObject.MODE_PARAMS) - return origin - return decorator - -decorate.params.withfn = _decorate_params_with \ No newline at end of file diff --git a/forum/modules/.svn/text-base/template_loader.py.svn-base b/forum/modules/.svn/text-base/template_loader.py.svn-base deleted file mode 100644 index 510f308b0e5e0e6d67f4606fc592bb3786920978..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/text-base/template_loader.py.svn-base +++ /dev/null @@ -1,44 +0,0 @@ -import os, re - -from forum.skins import load_template_source as skins_template_loader, Template, BaseTemplateLoader -from django.conf import settings - -MODULES_TEMPLATE_PREFIX = 'modules/' -NO_OVERRIDE_TEMPLATE_PREFIX = 'no_override/' -MODULES_TEMPLATE_FOLDER = 'templates' -MODULES_TEMPLATE_OVERRIDES_FOLDER = 'template_overrides' - -TEMPLATE_OVERRIDE_LOOKUP_PATHS = [f for f in [ - os.path.join(os.path.dirname(m.__file__), MODULES_TEMPLATE_OVERRIDES_FOLDER) for m in settings.MODULE_LIST - ] if os.path.exists(f) -] - -class ModulesTemplateLoader(BaseTemplateLoader): - - modules_re = re.compile('^%s(\w+)\/(.*)$' % MODULES_TEMPLATE_PREFIX) - - def load_template_source(self, name, dirs=None): - template = None - - if name.startswith(MODULES_TEMPLATE_PREFIX): - match = self.modules_re.search(name) - file_name = os.path.join(settings.MODULES_FOLDER, match.group(1), MODULES_TEMPLATE_FOLDER, match.group(2)) - - if os.path.exists(file_name): - template = Template(file_name) - - elif name.startswith(NO_OVERRIDE_TEMPLATE_PREFIX): - return skins_template_loader.load_template_source(name[len(NO_OVERRIDE_TEMPLATE_PREFIX):], dirs) - - else: - for override_path in TEMPLATE_OVERRIDE_LOOKUP_PATHS: - file_name = os.path.join(override_path, name) - - if os.path.exists(file_name): - template = Template(file_name) - break - - - return template - -module_templates_loader = ModulesTemplateLoader() diff --git a/forum/modules/.svn/text-base/ui.py.svn-base b/forum/modules/.svn/text-base/ui.py.svn-base deleted file mode 100644 index 26941104d8a35d61198dc202b4dfc0de5ed58cf4..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/text-base/ui.py.svn-base +++ /dev/null @@ -1,61 +0,0 @@ - - -class Registry(list): - def add(self, item): - for i, r in enumerate(self): - if r.weight > item.weight: - self.insert(i, item) - return - - self.append(item) - - def find_by_name(self, name): - for i in self: - if i.name and (i.name == name): - return i - - def remove_by_name(self, name): - for i, r in enumerate(self): - if r.name and (r.name == name): - return self.pop(i) - - -HEAD_CONTENT = 'HEAD_CONTENT' -HEADER_LINKS = 'HEADER_LINKS' -PAGE_TOP_TABS = 'PAGE_TOP_TABS' -FOOTER_LINKS = 'FOOTER_LINKS' -PROFILE_TABS = 'PROFILE_TABS' - -USER_MENU = 'USER_MENU' - - -__CONTAINER = { - HEAD_CONTENT: Registry(), - HEADER_LINKS: Registry(), - PAGE_TOP_TABS: Registry(), - FOOTER_LINKS: Registry(), - PROFILE_TABS: Registry(), - - USER_MENU: Registry(), -} - - -def register(registry, *ui_objects): - if not registry in __CONTAINER: - raise('unknown registry') - - for ui_object in ui_objects: - __CONTAINER[registry].add(ui_object) - -def get_registry_by_name(name): - name = name.upper() - - if not name in __CONTAINER: - raise('unknown registry') - - return __CONTAINER[name] - - - -from ui_objects import * - diff --git a/forum/modules/.svn/text-base/ui_objects.py.svn-base b/forum/modules/.svn/text-base/ui_objects.py.svn-base deleted file mode 100644 index a51044ad527f3a9fe661880258c2060e389812dc..0000000000000000000000000000000000000000 --- a/forum/modules/.svn/text-base/ui_objects.py.svn-base +++ /dev/null @@ -1,210 +0,0 @@ -from django.core.urlresolvers import reverse -from django.template.defaultfilters import slugify -from django import template -from forum.utils import html -from forum.models.user import AnonymousUser -from ui import Registry -from copy import copy - -class Visibility(object): - def __init__(self, level='public', negated=False): - if level not in ['public', 'authenticated', 'staff', 'superuser', 'owner']: - try: - int(level) - self.by_reputation = True - except: - raise "Invalid visibility level for ui object: %s" % level - else: - self.by_reputation = False - - self.level = level - self.negated = negated - - def show_to(self, user): - if self.by_reputation: - res = user.is_authenticated() and (user.reputation >= int(self.level) or user.is_staff or user.is_superuser) - else: - res = self.level == 'public' or (user.is_authenticated() and ( - self.level == 'authenticated' or ( - self.level == 'superuser' and user.is_superuser) or ( - self.level == 'staff' and (user.is_staff or user.is_superuser)) or ( - self.level == 'owner' and user.is_siteowner))) - - if self.negated: - return not res - else: - return res - - def __invert__(self): - return Visibility(self.level, not self.negated) - - -Visibility.PUBLIC = Visibility('public') -Visibility.AUTHENTICATED = Visibility('authenticated') -Visibility.STAFF = Visibility('staff') -Visibility.SUPERUSER = Visibility('superuser') -Visibility.OWNER = Visibility('owner') -Visibility.REPUTED = lambda r: Visibility(r) - - -class Url(object): - def __init__(self, url_pattern): - self.url_pattern = url_pattern - - def __call__(self, u, c): - return reverse(self.url_pattern) - - -class ObjectBase(object): - class Argument(object): - def __init__(self, argument): - self.argument = argument - - def __call__(self, context): - if callable(self.argument): - user = context.get('request', None) and context['request'].user or AnonymousUser() - return self.argument(user, context) - else: - return self.argument - - def __init__(self, visibility=None, weight=500, name=''): - self.visibility = visibility - self.weight = weight - self.name = name - - def _visible_to(self, user): - return (not self.visibility) or (self.visibility and self.visibility.show_to(user)) - - def can_render(self, context): - try: - return self._visible_to(context['request'].user) - except KeyError: - try: - return self._visible_to(context['viewer']) - except KeyError: - return self._visible_to(AnonymousUser()) - - def render(self, context): - return '' - -class LoopBase(ObjectBase): - def update_context(self, context): - pass - - - -class Link(ObjectBase): - def __init__(self, text, url, attrs=None, pre_code='', post_code='', visibility=None, weight=500, name=''): - super(Link, self).__init__(visibility, weight, name) - self.text = self.Argument(text) - self.url = self.Argument(url) - self.attrs = self.Argument(attrs or {}) - self.pre_code = self.Argument(pre_code) - self.post_code = self.Argument(post_code) - - def render(self, context): - return "%s %s %s" % (self.pre_code(context), - html.hyperlink(self.url(context), self.text(context), **self.attrs(context)), - self.post_code(context)) - -class Include(ObjectBase): - def __init__(self, tpl, visibility=None, weight=500, name=''): - super(Include, self).__init__(visibility, weight, name) - self.template = template.loader.get_template(tpl) - - def render(self, context): - if not isinstance(context, template.Context): - context = template.Context(context) - return self.template.render(context) - - -class LoopContext(LoopBase): - def __init__(self, loop_context, visibility=None, weight=500, name=''): - super(LoopContext, self).__init__(visibility, weight, name) - self.loop_context = self.Argument(loop_context) - - def update_context(self, context): - context.update(self.loop_context(context)) - - -class PageTab(LoopBase): - def __init__(self, tab_name, tab_title, url_getter, weight, name=''): - super(PageTab, self).__init__(weight=weight, name=name) - self.tab_name = tab_name - self.tab_title = tab_title - self.url_getter = url_getter - - def update_context(self, context): - context.update(dict( - tab_name=self.tab_name, - tab_title=self.tab_title, - tab_url=self.url_getter() - )) - - -class ProfileTab(LoopBase): - def __init__(self, name, title, description, url_getter, private=False, render_to=None, weight=500): - super(ProfileTab, self).__init__(weight=weight, name=name) - self.name = name - self.title = title - self.description = description - self.url_getter = url_getter - self.private = private - self.render_to = render_to - - def can_render(self, context): - return (not self.render_to or (self.render_to(context['view_user']))) and ( - not self.private or ( - context['view_user'] == context['request'].user or context['request'].user.is_superuser)) - - def update_context(self, context): - context.update(dict( - tab_name=self.name, - tab_title=self.title, - tab_description = self.description, - tab_url=self.url_getter(context['view_user']) - )) - - -class AjaxMenuItem(ObjectBase): - def __init__(self, label, url, a_attrs=None, span_label='', span_attrs=None, visibility=None, weight=500, name=''): - super(AjaxMenuItem, self).__init__(visibility, weight, name) - self.label = self.Argument(label) - self.url = self.Argument(url) - self.a_attrs = self.Argument(a_attrs or {}) - self.span_label = self.Argument(span_label) - self.span_attrs = self.Argument(span_attrs or {}) - - def render(self, context): - return html.buildtag('li', - html.buildtag('span', self.span_label(context), **self.span_attrs(context)) + \ - html.hyperlink(self.url(context), self.label(context), **self.a_attrs(context)), - **{'class': 'item'}) - -class AjaxMenuGroup(ObjectBase, Registry): - def __init__(self, label, items, visibility=None, weight=500, name=''): - super(AjaxMenuGroup, self).__init__(visibility, weight, name) - self.label = label - - for item in items: - self.add(item) - - def can_render(self, context): - if super(AjaxMenuGroup, self).can_render(context): - for item in self: - if item.can_render(context): return True - - return False - - def render(self, context): - return html.buildtag('li', self.label, **{'class': 'separator'}) + "".join([ - item.render(context) for item in self if item.can_render(context) - ]) - -class UserMenuItem(AjaxMenuItem): - def __init__(self, render_to=None, *args, **kwargs): - super(UserMenuItem, self).__init__(*args, **kwargs) - self.render_to = render_to - - def can_render(self, context): - return (not self.render_to or (self.render_to(context['user']))) and super(UserMenuItem, self)._visible_to(context['viewer']) diff --git a/forum/settings/.svn/all-wcprops b/forum/settings/.svn/all-wcprops deleted file mode 100644 index ae24e71428b489cde245d33794852e405cbd56ad..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/all-wcprops +++ /dev/null @@ -1,131 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 48 -/svnroot/!svn/ver/1240/osqa/trunk/forum/settings -END -moderation.py -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1225/osqa/trunk/forum/settings/moderation.py -END -users.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1175/osqa/trunk/forum/settings/users.py -END -form.py -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/430/osqa/trunk/forum/settings/form.py -END -voting.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/667/osqa/trunk/forum/settings/voting.py -END -faq.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/940/osqa/trunk/forum/settings/faq.py -END -sidebar.py -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1078/osqa/trunk/forum/settings/sidebar.py -END -base.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1114/osqa/trunk/forum/settings/base.py -END -about.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/367/osqa/trunk/forum/settings/about.py -END -view.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1240/osqa/trunk/forum/settings/view.py -END -basic.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/349/osqa/trunk/forum/settings/basic.py -END -upload.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/86/osqa/trunk/forum/settings/upload.py -END -sitemaps.py -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/964/osqa/trunk/forum/settings/sitemaps.py -END -repgain.py -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/796/osqa/trunk/forum/settings/repgain.py -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1124/osqa/trunk/forum/settings/urls.py -END -forms.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/796/osqa/trunk/forum/settings/forms.py -END -static.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/617/osqa/trunk/forum/settings/static.py -END -email.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1216/osqa/trunk/forum/settings/email.py -END -minrep.py -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/1104/osqa/trunk/forum/settings/minrep.py -END -extkeys.py -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/187/osqa/trunk/forum/settings/extkeys.py -END -accept.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/641/osqa/trunk/forum/settings/accept.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 60 -/svnroot/!svn/ver/1130/osqa/trunk/forum/settings/__init__.py -END diff --git a/forum/settings/.svn/dir-prop-base b/forum/settings/.svn/dir-prop-base deleted file mode 100644 index 921bfc28a21201a54977d7f0e1058f1db3bb7a57..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/dir-prop-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 245 -/osqa/branches/cacheimp/forum/settings:874-939 -/osqa/branches/carpenter/forum/settings:691-725 -/osqa/branches/hernani/forum/settings:772-832 -/osqa/branches/jambazov/forum/settings:675-831 -/osqa/branches/notification-config/forum/settings:693-851 -END diff --git a/forum/settings/.svn/entries b/forum/settings/.svn/entries deleted file mode 100644 index 4512ee4921847c560d3db96917d511c5e684b6d9..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/entries +++ /dev/null @@ -1,742 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/settings -http://svn.osqa.net/svnroot - - - -2012-04-02T22:43:05.984357Z -1240 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -extkeys.py -file - - - - -2012-06-22T20:34:43.368091Z -6d6094ecd3d42763ec792124c03b2925 -2010-05-10T03:34:09.062880Z -187 -hernani - - - - - - - - - - - - - - - - - - - - - -821 - -accept.py -file - - - - -2012-06-22T20:34:43.372089Z -d68c40963a6e42f8b3bc0327485e37f3 -2010-12-28T03:07:01.928016Z -641 -jordan - - - - - - - - - - - - - - - - - - - - - -1270 - -__init__.py -file - - - - -2012-06-22T20:34:43.372089Z -a7ec8a353114718ef75f27eab9ac114b -2011-07-28T16:20:02.559044Z -1130 -jordan - - - - - - - - - - - - - - - - - - - - - -1780 - -moderation.py -file - - - - -2012-06-22T20:34:43.376087Z -90f7efd1c130f5f863f21d58e463ea7b -2012-01-25T19:29:57.097026Z -1225 -jordan - - - - - - - - - - - - - - - - - - - - - -2614 - -users.py -file - - - - -2012-06-22T20:34:43.372089Z -070baad8945cb8a7fe57052cd10df45c -2011-09-22T16:13:00.177309Z -1175 -jordan - - - - - - - - - - - - - - - - - - - - - -5495 - -form.py -file - - - - -2012-06-22T20:34:43.376087Z -138c3925a74f1b7a1b67410e14efe718 -2010-06-16T12:19:51.789348Z -430 -hernani - - - - - - - - - - - - - - - - - - - - - -3559 - -voting.py -file - - - - -2012-06-22T20:34:43.376087Z -3b73ddb775d1aed43be642eca0513356 -2011-01-04T11:43:52.367678Z -667 -jordan - - - - - - - - - - - - - - - - - - - - - -1743 - -faq.py -file - - - - -2012-06-22T20:34:43.376087Z -b44a6bad60f4e3fe65fb5bae91772b50 -2011-04-07T11:22:50.636104Z -940 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -5023 - -sidebar.py -file - - - - -2012-06-22T20:34:43.384083Z -efd3320c9e2ab38c8f6669ffa971f936 -2011-06-25T11:49:04.870082Z -1078 -jordan - - - - - - - - - - - - - - - - - - - - - -4316 - -base.py -file - - - - -2012-06-22T20:34:43.384083Z -9fea3f3e1120c116226485e648ad78e6 -2011-07-12T22:09:28.598497Z -1114 -jordan - - - - - - - - - - - - - - - - - - - - - -3674 - -about.py -file - - - - -2012-06-22T20:34:43.384083Z -46eee5d40c39351aa296a9fd5fa38143 -2010-06-03T19:53:14.615963Z -367 -matt - - - - - - - - - - - - - - - - - - - - - -1322 - -view.py -file - - - - -2012-06-22T20:34:43.384083Z -5f7e233b1a7f210712f8ff19a85220e4 -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - - - - - - - - -3065 - -basic.py -file - - - - -2012-06-22T20:34:43.384083Z -7cfe1045e06ab8f2553fb85d828aaaa1 -2010-06-01T12:48:36.062827Z -349 -hernani - - - - - - - - - - - - - - - - - - - - - -2216 - -upload.py -file - - - - -2012-06-22T20:34:43.384083Z -10255b5f33e3fef32098715d3ae0dfe7 -2010-04-28T20:29:18.602505Z -86 -qw3rty - - - - - - - - - - - - - - - - - - - - - -917 - -sitemaps.py -file - - - - -2012-06-22T20:34:43.388081Z -e1486043f48d1a0541b0f03cf393f7fe -2011-04-11T14:19:12.802165Z -964 -jordan - - - - - - - - - - - - - - - - - - - - - -730 - -repgain.py -file - - - - -2012-06-22T20:34:43.388081Z -63f409adc9ba29f60a8f4fa6b92e717e -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -2672 - -urls.py -file - - - - -2012-06-22T20:34:43.388081Z -8c166e7de666b3fbd7e0ba2df3db6715 -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - - - - - - - - -868 - -forms.py -file - - - - -2012-06-22T20:34:43.388081Z -74aace403e2a0cb06b6d0fdf64ab08dc -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -5640 - -static.py -file - - - - -2012-06-22T20:34:43.388081Z -af64c3c7582ef9bab48faa44b1fb0d27 -2010-11-10T15:48:20.410108Z -617 -hernani - - - - - - - - - - - - - - - - - - - - - -4331 - -email.py -file - - - - -2012-06-22T20:34:43.388081Z -2b3d48f7e8ed46854c7784dae3d4f4c8 -2011-12-22T11:06:53.742882Z -1216 -jordan - - - - - - - - - - - - - - - - - - - - - -4193 - -minrep.py -file - - - - -2012-06-22T20:34:43.368091Z -06a3892a0df34c844816b3737e188f2b -2011-07-06T08:56:06.381909Z -1104 -jordan - - - - - - - - - - - - - - - - - - - - - -5484 - diff --git a/forum/settings/.svn/prop-base/faq.py.svn-base b/forum/settings/.svn/prop-base/faq.py.svn-base deleted file mode 100644 index 2656a2742298e365918dd4ee25196cfc1a26264d..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/prop-base/faq.py.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 280 -/osqa/branches/cacheimp/forum/settings/faq.py:874-939 -/osqa/branches/carpenter/forum/settings/faq.py:691-725 -/osqa/branches/hernani/forum/settings/faq.py:772-832 -/osqa/branches/jambazov/forum/settings/faq.py:675-831 -/osqa/branches/notification-config/forum/settings/faq.py:693-852 -END diff --git a/forum/settings/.svn/text-base/__init__.py.svn-base b/forum/settings/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 218f1140f609f8f14df6856b4029af8066fa8eee..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,64 +0,0 @@ -import os.path -from base import Setting, SettingSet, BaseSetting - -from django.forms.widgets import Textarea -from django.utils.translation import ugettext_lazy as _ -from django.conf import settings as djsettings -from django.utils.version import get_svn_revision - -from forum.modules import get_modules_script_implementations - -OSQA_VERSION = "Development Build" - -SVN_REVISION = get_svn_revision(djsettings.SITE_SRC_ROOT) - -# We'll have to keep in mind this variable on every release. -if SVN_REVISION == u'SVN-unknown': - SVN_REVISION = u'SVN-1000' - -MAINTAINANCE_MODE = Setting('MAINTAINANCE_MODE', None) - -SETTINGS_PACK = Setting('SETTINGS_PACK', "default") -DJSTYLE_ADMIN_INTERFACE = Setting('DJSTYLE_ADMIN_INTERFACE', True) -NODE_MAN_FILTERS = Setting('NODE_MAN_FILTERS', []) - -APP_URL = djsettings.APP_URL -APP_BASE_URL = djsettings.APP_BASE_URL -FORCE_SCRIPT_NAME = djsettings.FORCE_SCRIPT_NAME -OSQA_SKIN = djsettings.OSQA_DEFAULT_SKIN -LANGUAGE_CODE = djsettings.LANGUAGE_CODE -ADMIN_MEDIA_PREFIX = djsettings.ADMIN_MEDIA_PREFIX -ONLINE_USERS = Setting('ONLINE_USERS', {}) - - -from basic import * -from sidebar import * -from email import * -from extkeys import * -from minrep import * -from repgain import * -from voting import * -from upload import * -from about import * -from faq import * -from form import * -from view import * -from moderation import * -from users import * -from static import * -from urls import * -from accept import * -from sitemaps import * - -__all__ = locals().keys() - -# Be able to import all module settings as well -for k,v in get_modules_script_implementations('settings', BaseSetting).items(): - if not k in __all__: - __all__.append(k) - exec "%s = v" % k - - -BADGES_SET = SettingSet('badges', _('Badges config'), _("Configure badges on your OSQA site."), 500) - - diff --git a/forum/settings/.svn/text-base/about.py.svn-base b/forum/settings/.svn/text-base/about.py.svn-base deleted file mode 100644 index b4f1a64dda44c652ef7a1d20767b69a567b4ca86..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/about.py.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -from base import Setting, SettingSet -from django.forms.widgets import Textarea - -PAGES_SET = SettingSet('about', 'About page', "Define the text in the about page. You can use markdown and some basic html tags.", 2000, True) - -ABOUT_PAGE_TEXT = Setting('ABOUT_PAGE_TEXT', -u""" -**Please customize this text in the administration area** - -Here you can **ask** and **answer** questions, **comment** -and **vote** for the questions of others and their answers. Both questions and answers -**can be revised** and improved. Questions can be **tagged** with -the relevant keywords to simplify future access and organize the accumulated material. - -This <span class="orange">Q&A</span> site is moderated by its members, hopefully - including yourself! -Moderation rights are gradually assigned to the site users based on the accumulated "**karma**" -points. These points are added to the users account when others vote for his/her questions or answers. -These points (very) roughly reflect the level of trust of the community. - -No points are necessary to ask or answer the questions - so please - join us! - -If you would like to find out more about this site - please see the **frequently asked questions** page. -""", PAGES_SET, dict( -label = "About page text", -help_text = """ -The about page. -""", -widget=Textarea(attrs={'rows': '20'}))) \ No newline at end of file diff --git a/forum/settings/.svn/text-base/accept.py.svn-base b/forum/settings/.svn/text-base/accept.py.svn-base deleted file mode 100644 index aa29e0998fbf88e192c0757a190124d2808cf7ca..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/accept.py.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -from base import Setting, SettingSet -from django.forms.widgets import RadioSelect -from django.utils.translation import ugettext_lazy as _ - -ACCEPT_SET = SettingSet('accept', _('Accepting answers'), _("Settings to tweak the behaviour of accepting answers."), 500) - -DISABLE_ACCEPTING_FEATURE = Setting('DISABLE_ACCEPTING_FEATURE', False, ACCEPT_SET, dict( -label = _("Disallow answers to be accepted"), -help_text = _("Disable accepting answers feature. If you re-enable it in the future, currently accepted answers will still be marked as accepted."), -required=False)) - -MAXIMUM_ACCEPTED_ANSWERS = Setting('MAXIMUM_ACCEPTED_ANSWERS', 1, ACCEPT_SET, dict( -label = _("Maximum accepted answers per question"), -help_text = _("How many accepted answers are allowed per question. Use 0 for no limit."))) - -MAXIMUM_ACCEPTED_PER_USER = Setting('MAXIMUM_ACCEPTED_PER_USER', 1, ACCEPT_SET, dict( -label = _("Maximum accepted answers per user/question"), -help_text = _("If more than one accpeted answer is allowed, how many can be accepted per single user per question."))) - -USERS_CAN_ACCEPT_OWN = Setting('USERS_CAN_ACCEPT_OWN', False, ACCEPT_SET, dict( -label = _("Users an accept own answer"), -help_text = _("Are normal users allowed to accept their own answers.."), -required=False)) - - diff --git a/forum/settings/.svn/text-base/base.py.svn-base b/forum/settings/.svn/text-base/base.py.svn-base deleted file mode 100644 index cc706bcd49285082824b96862ed04c4c263263ee..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/base.py.svn-base +++ /dev/null @@ -1,126 +0,0 @@ -import django.dispatch -from django.utils.encoding import force_unicode, smart_unicode -from datetime import datetime, timedelta -import logging - -TMP_MINICACHE_SECONDS = 5 - -class SettingSet(list): - def __init__(self, name, title, description, weight=1000, markdown=False, can_preview=False): - self.name = name - self.title = title - self.description = description - self.weight = weight - self.markdown = markdown - self.can_preview = can_preview - - -class BaseSetting(object): - @classmethod - def add_to_class(cls, name): - def wrapper(self, *args, **kwargs): - return self.value.__getattribute__(name)(*args, **kwargs) - - setattr(cls, name, wrapper) - - def __init__(self, name, default, set=None, field_context=None): - self.name = name - self.default = default - self.field_context = field_context or {} - - self._temp = None - - if set is not None: - self.set = set - - if not set.name in Setting.sets: - Setting.sets[set.name] = set - - Setting.sets[set.name].append(self) - - def __str__(self): - return str(self.value) - - def __unicode__(self): - return smart_unicode(self.value) - - @property - def value(self): - if self._temp: - v, exp = self._temp - if exp + timedelta(seconds=TMP_MINICACHE_SECONDS) > datetime.now(): - return v - - from forum.models import KeyValue - - try: - kv = KeyValue.objects.get(key=self.name) - v = kv.value - self._temp = (v, datetime.now() + timedelta(seconds=TMP_MINICACHE_SECONDS)) - return v - except KeyValue.DoesNotExist: - self._temp = (self.default, datetime.now() + timedelta(seconds=TMP_MINICACHE_SECONDS)) - self.save(self.default) - except Exception, e: - logging.error("Error retrieving setting from database (%s): %s" % (self.name, str(e))) - - return self.default - - def set_value(self, new_value): - new_value = self._parse(new_value) - self._temp = None - self.save(new_value) - - def save(self, value): - from forum.models import KeyValue - - try: - kv = KeyValue.objects.get(key=self.name) - except KeyValue.DoesNotExist: - kv = KeyValue(key=self.name) - except Exception, e: - logging.error("Error saving setting to database (%s): %s" % (self.name, str(e))) - return - - kv.value = value - kv.save() - - def to_default(self): - self.set_value(self.default) - - def _parse(self, value): - if not isinstance(value, self.base_type): - try: - return self.base_type(value) - except: - pass - return value - -class AnyTypeSetting(BaseSetting): - def _parse(self, value): - return value - - -class Setting(object): - emulators = {} - sets = {} - - def __new__(cls, name, default, set=None, field_context=None): - if default is None: - return AnyTypeSetting(name, default, set, field_context) - - deftype = type(default) - - if deftype in Setting.emulators: - emul = Setting.emulators[deftype] - else: - emul = type(deftype.__name__ + cls.__name__, (BaseSetting,), {'base_type': deftype}) - - fns = [n for n, f in [(p, getattr(deftype, p)) for p in dir(deftype) if not p in dir(cls)] if callable(f)] - - for n in fns: - emul.add_to_class(n) - - Setting.emulators[deftype] = emul - - return emul(name, default, set, field_context) diff --git a/forum/settings/.svn/text-base/basic.py.svn-base b/forum/settings/.svn/text-base/basic.py.svn-base deleted file mode 100644 index a4efd6f105eb78af4e459e0b1f11f75c760f8784..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/basic.py.svn-base +++ /dev/null @@ -1,52 +0,0 @@ -import os.path - -from base import Setting, SettingSet -from forms import ImageFormWidget - -from django.utils.translation import ugettext_lazy as _ -from django.forms.widgets import Textarea - -BASIC_SET = SettingSet('basic', _('Basic settings'), _("The basic settings for your application"), 1) - -APP_LOGO = Setting('APP_LOGO', '/upfiles/logo.png', BASIC_SET, dict( -label = _("Application logo"), -help_text = _("Your site main logo."), -widget=ImageFormWidget)) - -APP_FAVICON = Setting('APP_FAVICON', '/m/default/media/images/favicon.ico', BASIC_SET, dict( -label = _("Favicon"), -help_text = _("Your site favicon."), -widget=ImageFormWidget)) - -APP_TITLE = Setting('APP_TITLE', u'OSQA: Open Source Q&A Forum', BASIC_SET, dict( -label = _("Application title"), -help_text = _("The title of your application that will show in the browsers title bar"))) - -APP_SHORT_NAME = Setting(u'APP_SHORT_NAME', 'OSQA', BASIC_SET, dict( -label = _("Application short name"), -help_text = "The short name for your application that will show up in many places.")) - -APP_KEYWORDS = Setting('APP_KEYWORDS', u'OSQA,CNPROG,forum,community', BASIC_SET, dict( -label = _("Application keywords"), -help_text = _("The meta keywords that will be available through the HTML meta tags."))) - -APP_DESCRIPTION = Setting('APP_DESCRIPTION', u'Ask and answer questions.', BASIC_SET, dict( -label = _("Application description"), -help_text = _("The description of your application"), -widget=Textarea)) - -APP_COPYRIGHT = Setting('APP_COPYRIGHT', u'Copyright OSQA, 2010. Some rights reserved under creative commons license.', BASIC_SET, dict( -label = _("Copyright notice"), -help_text = _("The copyright notice visible at the footer of your page."))) - -SUPPORT_URL = Setting('SUPPORT_URL', '', BASIC_SET, dict( -label = _("Support URL"), -help_text = _("The URL provided for users to get support. It can be http: or mailto: or whatever your preferred support scheme is."), -required=False)) - -CONTACT_URL = Setting('CONTACT_URL', '', BASIC_SET, dict( -label = _("Contact URL"), -help_text = _("The URL provided for users to contact you. It can be http: or mailto: or whatever your preferred contact scheme is."), -required=False)) - - diff --git a/forum/settings/.svn/text-base/email.py.svn-base b/forum/settings/.svn/text-base/email.py.svn-base deleted file mode 100644 index 71a7136df5b280daaedee55237043dccf0fcc762..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/email.py.svn-base +++ /dev/null @@ -1,86 +0,0 @@ -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ -from django.forms.widgets import PasswordInput -from django.forms.widgets import RadioSelect -from forms import TestEmailSettingsWidget - -EMAIL_SET = SettingSet('email', _('Email settings'), _("Email server and other email related settings."), 50) - -TEST_EMAIL_SETTINGS = Setting('TEST_EMAIL_SETTINGS', '', EMAIL_SET, dict( -label = _("E-Mail settings test"), -help_text = _("Test the current E-Mail configuration."), -required=False, -widget=TestEmailSettingsWidget)) - -EMAIL_HOST = Setting('EMAIL_HOST', '', EMAIL_SET, dict( -label = _("Email Server"), -help_text = _("The SMTP server through which your application will be sending emails."), -required=False)) - -EMAIL_PORT = Setting('EMAIL_PORT', 25, EMAIL_SET, dict( -label = _("Email Port"), -help_text = _("The port on which your SMTP server is listening to. Usually this is 25, but can be something else."), -required=False)) - -EMAIL_HOST_USER = Setting('EMAIL_HOST_USER', '', EMAIL_SET, dict( -label = _("Email User"), -help_text = _("The username for your SMTP connection."), -required=False)) - -EMAIL_HOST_PASSWORD = Setting('EMAIL_HOST_PASSWORD', '', EMAIL_SET, dict( -label = _("Email Password"), -help_text = _("The password for your SMTP connection."), -required=False, -widget=PasswordInput(render_value=True))) - -EMAIL_USE_TLS = Setting('EMAIL_USE_TLS', False, EMAIL_SET, dict( -label = _("Use TLS"), -help_text = _("Whether to use TLS for authentication with your SMTP server."), -required=False)) - -DEFAULT_FROM_EMAIL = Setting('DEFAULT_FROM_EMAIL', '', EMAIL_SET, dict( -label = _("Site 'from' Email Address"), -help_text = _("The address that will show up on the 'from' field on emails sent by your website."), -required=False)) - -DEFAULT_REPLY_TO_EMAIL = Setting('DEFAULT_REPLY_TO_EMAIL', '', EMAIL_SET, dict( -label = _("Site 'reply-to' Email Address"), -help_text = _("The address that will show up on the 'reply-to' field on emails sent by your website."), -required=False)) - -EMAIL_SUBJECT_PREFIX = Setting('EMAIL_SUBJECT_PREFIX', '', EMAIL_SET, dict( -label = _("Email Subject Prefix"), -help_text = _("Every email sent through your website will have the subject prefixed by this string. It's usually a good idea to have such a prefix so your users can easily set up a filter on their email clients."), -required=False)) - -EMAIL_FOOTER_TEXT = Setting(u'EMAIL_FOOTER_TEXT', '', EMAIL_SET, dict( -label = _("Email Footer Text"), -help_text = _("Email footer text, usually \"CAN SPAM\" compliance, or the physical address of the organization running the website. See <a href=\"http://en.wikipedia.org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info."), -required=False)) - -EMAIL_BORDER_COLOR = Setting('EMAIL_BORDER_COLOR', '#e5ebf8', EMAIL_SET, dict( -label = _("Email Border Color"), -help_text = _("The outter border color of the email base template"), -required=False)) - -EMAIL_PARAGRAPH_STYLE = Setting('EMAIL_PARAGRAPH_STYLE', "color:#333333;font-family:'helvetica neue', arial, Helvetica, sans-serif;line-height:18px;font-size:14px;margin-top:10px;", EMAIL_SET, dict( -label = _("Email Paragraph Style"), -help_text = _("A valid css string to be used to style email paragraphs (the P tag)."), -required=False)) - -EMAIL_ANCHOR_STYLE = Setting('EMAIL_ANCHOR_STYLE', "text-decoration:none;color:#3060a8;font-weight:bold;", EMAIL_SET, dict( -label = _("Email Link Style"), -help_text = _("A valid css string to be used to style email links (the A tag)."), -required=False)) - -SEND_DIGEST_ONLY_TO_ACTIVE_USERS = Setting('SEND_DIGEST_ONLY_TO_ACTIVE_USERS', True, EMAIL_SET, dict( -label = _("Send digest only to active users"), -help_text = _("If checked the daily digest won't be sent to users that have been suspended."), -required=False)) - -SEND_DIGEST_ONLY_TO_VALIDATED_USERS = Setting('SEND_DIGEST_ONLY_TO_VALIDATED_USERS', True, EMAIL_SET, dict( -label = _("Send digest only to validated users"), -help_text = _("If checked the daily digest won't be sent to users that haven't validated their emails."), -required=False)) - -EMAIL_DIGEST_FLAG = Setting('EMAIL_DIGEST_FLAG', None) diff --git a/forum/settings/.svn/text-base/extkeys.py.svn-base b/forum/settings/.svn/text-base/extkeys.py.svn-base deleted file mode 100644 index 9d439df0b7ba5939d391a0da7cccea6cfa6a6e54..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/extkeys.py.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -EXT_KEYS_SET = SettingSet('extkeys', _('External Keys'), _("Keys for various external providers that your application may optionally use."), 100) - -GOOGLE_SITEMAP_CODE = Setting('GOOGLE_SITEMAP_CODE', '', EXT_KEYS_SET, dict( -label = _("Google sitemap code"), -help_text = _("This is the code you get when you register your site at <a href='https://www.google.com/webmasters/tools/'>Google webmaster central</a>."), -required=False)) - -GOOGLE_ANALYTICS_KEY = Setting('GOOGLE_ANALYTICS_KEY', '', EXT_KEYS_SET, dict( -label = _("Google analytics key"), -help_text = _("Your Google analytics key. You can get one at the <a href='http://www.google.com/analytics/'>Google analytics official website</a>"), -required=False)) - diff --git a/forum/settings/.svn/text-base/faq.py.svn-base b/forum/settings/.svn/text-base/faq.py.svn-base deleted file mode 100644 index 16377f68712419dcc57f7ec3b470e0cbb5e2c34a..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/faq.py.svn-base +++ /dev/null @@ -1,79 +0,0 @@ -from base import Setting, SettingSet -from django.forms.widgets import Textarea - -FAQ_SET = SettingSet('faq', 'FAQ page', "Define the text in the about page. You can use markdown and some basic html tags.", 2000, True) - -FAQ_PAGE_TEXT = Setting('FAQ_PAGE_TEXT', -u""" -**Please customize this text in the administration area** - -**Frequently Asked Questions (FAQ)** - -**How is a Question/Answer community different from a typical forum?** - -A Question/Answer community is different from a typical forum because it focuses on finding answers to the questions of its members. A typical forum, by contrast, operates more like a discussion group, where people are free to give their opinions and topics tend to be more subjective. - -By keeping a laser focus on questions and answers, this community ensures that finding answers to existing questions - and getting answers to new questions - can be done without any distractions. - -**What kinds of questions can I ask here?** - -Most importantly - questions should be relevant to this community. Before you ask, please make sure to search for a similar question. You can search for questions by their title, content, or tags. - -**What kinds of questions should be avoided?** - -Please avoid asking questions that are not relevant to this community, are too subjective or argumentative. - -**What should I avoid in my answers?** - -OSQA: Open Source Q&A Forum is a question and answer site - it is not a discussion group. Please avoid holding debates in your answers as they tend to dilute the essense of questions and answers. For brief discussions please use commenting facility. - -** Why are email notifications so important? ** - -Email notifications are the bedrock of a successful question and answer community. These notifications allow community members to be notified of important events, such as: - -* When their questions have been answered -* When one of their posts is commented on by another member -* When other members post new questions, answers, or comments in their area of interest - -The success of the community relies upon community member involvement, and members are much more likely to become involved, active participants on the site when they're notified of interesting developments. That is why this community considers a valid email address as a requirement for participating in the community and using this site. - -If you're already a member of this community and haven't validated your email address, you can do so [here](/account/send-validation/ "Validate Email Address"). If you aren't yet a member of this community, join up by [creating a new account](/account/local/register/ "Create a new account"). - - **Who moderates this community?** - -The short answer is: you. This website is moderated by the users. The community features a karma system that allows users to earn rights to perform a variety of moderation tasks. - -**How does the karma system work?** - -When a question or answer is upvoted, the user who posted them will gain some points, which are called "karma points". These points serve as a rough measure of the community trust in him/her. Various moderation tasks are gradually assigned to the users based on those points. - -For example, if you ask an interesting question or give a helpful answer, your input will be upvoted. On the other hand if the answer is misleading, it will be downvoted. Each vote in favor will generate |REP_GAIN_BY_UPVOTED| points, each vote against will subtract |REP_LOST_BY_DOWNVOTED| points. There is a limit of 200 points that can be accumulated per question or answer. The table below explains karma requirements for each type of moderation task. - -* add comments -> |REP_TO_COMMENT| -* delete comments -> |REP_TO_DELETE_COMMENTS| -* close own questions -> |REP_TO_CLOSE_OWN| -* reopen own questions -> |REP_TO_REOPEN_OWN| -* retag questions -> |REP_TO_RETAG| -* edit any answer -> |REP_TO_EDIT_OTHERS| -* open any closed question -> |REP_TO_CLOSE_OTHERS| -* delete any comment -> |REP_TO_DELETE_COMMENTS| - -**What is a gravatar?** - -Gravatar means globally recognized avatar - your unique avatar image associated with your email address. It's simply a picture that shows next to your posts on the websites that support gravatar protocol. The default gravatar appears as a square filled with a snowflake-like figure. You can set your image at gravatar.com - -**To participate in this community, do I need to create new account?** - -No, you don't have to. You can login through any service that supports OpenID, e.g. Google, Yahoo, AOL, etc. [Login now!](/account/signin/ "Login") - -**Why can other people can edit my questions/answers?** - -Allowing experienced members of this community to curate the questions and answers improves the overall quality of the knowledge base content. If this approach is not for you, we respect your choice. - -**Still have questions?** - -Please ask your question, help make our community better! -""", FAQ_SET, dict( -label = "FAQ page text", -help_text = " The faq page. ", -widget=Textarea(attrs={'rows': '25'}))) \ No newline at end of file diff --git a/forum/settings/.svn/text-base/form.py.svn-base b/forum/settings/.svn/text-base/form.py.svn-base deleted file mode 100644 index 5f770b309ded2f75ea4f49ea2233ec9cfbbef460..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/form.py.svn-base +++ /dev/null @@ -1,87 +0,0 @@ -import os.path -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -FORUM_SET = SettingSet('form', _('Form settings'), _("General settings for the OSQA forms."), 10) - -WIKI_ON = Setting('WIKI_ON', True, FORUM_SET, dict( -label = _("Enable community wiki"), -help_text = _("Can questions or answers be marked as community wiki."), -required=False)) - -LIMIT_TAG_CREATION = Setting('LIMIT_TAG_CREATION', False, FORUM_SET, dict( -label = _("Limit tag creation"), -help_text = _("Limit tag creation to super users, staff or users with a minimum reputation."), -required=False)) - - -""" settings for questions """ -FORM_MIN_QUESTION_TITLE = Setting('FORM_MIN_QUESTION_TITLE', 10, FORUM_SET, dict( -label = _("Minimum number of characters for a question's title"), -help_text = _("The minimum number of characters a user must enter into the title field of a question."))) - -# FORM_MAX_QUESTION_TITLE = Setting('FORM_MAX_QUESTION_TITLE', 100, FORUM_SET, dict( -# label = _("Maximum number of characters for a question."), -# help_text = _("The maximum number of characters a user can enter into the description field to submit a question."))) - -FORM_MIN_QUESTION_BODY = Setting('FORM_MIN_QUESTION_BODY', 10, FORUM_SET, dict( -label = _("Minimum number of characters for a question's content"), -help_text = _("The minimum number of characters a user must enter into the content field of a question."))) - -# FORM_MAX_QUESTION_DESCRIPTION = Setting('FORM_MAX_QUESTION_DESCRIPTION', 600, FORUM_SET, dict( -# label = _("Maximum number of characters for a question."), -# help_text = _("The maximum number of characters a user can enter into the description field to submit a question."))) - -FORM_EMPTY_QUESTION_BODY = Setting('FORM_EMPTY_QUESTION_BODY', False, FORUM_SET, dict( -label = _("Empty question content"), -help_text = _("If a question's content can be empty."), -required=False)) - - - - -""" settings for tags """ -FORM_MIN_NUMBER_OF_TAGS = Setting('FORM_MIN_NUMBER_OF_TAGS', 1, FORUM_SET, dict( -label = _("Required number of tags per question"), -help_text = _("How many tags are required in questions."), -)) - -FORM_MAX_NUMBER_OF_TAGS = Setting('FORM_MAX_NUMBER_OF_TAGS', 5, FORUM_SET, dict( -label = _("Maximum number of tags per question"), -help_text = _("How many tags are allowed in questions."), -)) - -FORM_MIN_LENGTH_OF_TAG = Setting('FORM_MIN_LENGTH_OF_TAG', 1, FORUM_SET, dict( -label = _("Minimum length of a tag"), -help_text = _("How short a tag can be."), -)) - -FORM_MAX_LENGTH_OF_TAG = Setting('FORM_MAX_LENGTH_OF_TAG', 20, FORUM_SET, dict( -label = _("Maximum length of a tag"), -help_text = _("How long a tag can be."), -)) - - - - -""" settings for comments """ -FORM_MIN_COMMENT_BODY = Setting('FORM_MIN_COMMENT_BODY', 10, FORUM_SET, dict( -label = _("Minimum number of characters for a comment"), -help_text = _("The minimum number of characters a user must enter into the body of a comment."))) - -FORM_MAX_COMMENT_BODY = Setting('FORM_MAX_COMMENT_BODY', 600, FORUM_SET, dict( -label = _("Maximum length of comment"), -help_text = _("The maximum number of characters a user can enter into the body of a comment."))) - -FORM_ALLOW_MARKDOWN_IN_COMMENTS = Setting('FORM_ALLOW_MARKDOWN_IN_COMMENTS', True, FORUM_SET, dict( -label = _("Allow markdown in comments"), -help_text = _("Allow users to use markdown in comments."), -required=False)) - -FORM_GRAVATAR_IN_COMMENTS = Setting('FORM_GRAVATAR_IN_COMMENTS', False, FORUM_SET, dict( -label = _("Show author gravatar in comments"), -help_text = _("Show the gravatar image of a comment author."), -required=False)) - - - diff --git a/forum/settings/.svn/text-base/forms.py.svn-base b/forum/settings/.svn/text-base/forms.py.svn-base deleted file mode 100644 index 3e3cc5afbf92833045346342b74d5b5c090df4aa..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/forms.py.svn-base +++ /dev/null @@ -1,140 +0,0 @@ -import os -from string import strip -from django import forms -from forum.settings.base import Setting -from django.utils.translation import ugettext as _ -from django.core.files.storage import FileSystemStorage -from django.core.urlresolvers import reverse - -class DummySetting: - pass - -class UnfilteredField(forms.CharField): - def clean(self, value): - return value - - -class SettingsSetForm(forms.Form): - def __init__(self, set, data=None, unsaved=None, *args, **kwargs): - initial = dict([(setting.name, setting.value) for setting in set]) - - if unsaved: - initial.update(unsaved) - - super(SettingsSetForm, self).__init__(data, initial=initial, *args, **kwargs) - - for setting in set: - widget = setting.field_context.get('widget', None) - - if widget is forms.CheckboxSelectMultiple or widget is forms.SelectMultiple or isinstance(widget, forms.SelectMultiple): - field = forms.MultipleChoiceField(**setting.field_context) - elif widget is forms.RadioSelect or isinstance(widget, forms.RadioSelect): - field = forms.ChoiceField(**setting.field_context) - elif isinstance(setting, (Setting.emulators.get(str, DummySetting), Setting.emulators.get(unicode, DummySetting))): - if not setting.field_context.get('widget', None): - setting.field_context['widget'] = forms.TextInput(attrs={'class': 'longstring'}) - field = forms.CharField(**setting.field_context) - elif isinstance(setting, Setting.emulators.get(float, DummySetting)): - field = forms.FloatField(**setting.field_context) - elif isinstance(setting, Setting.emulators.get(int, DummySetting)): - field = forms.IntegerField(**setting.field_context) - elif isinstance(setting, Setting.emulators.get(bool, DummySetting)): - field = forms.BooleanField(**setting.field_context) - else: - field = UnfilteredField(**setting.field_context) - - self.fields[setting.name] = field - - self.set = set - - def as_table(self): - return self._html_output( - u'<tr><th>%(label)s' + ('<br /><a class="fieldtool context" href="#">%s</a><span class="sep">|</span><a class="fieldtool default" href="#">%s</a></th>' % ( - _('context'), _('default'))) + u'<td>%(errors)s%(field)s%(help_text)s</td>', - u'<tr><td colspan="2">%s</td></tr>', '</td></tr>', u'<br />%s', False) - - def save(self): - for setting in self.set: - setting.set_value(self.cleaned_data[setting.name]) - -class ImageFormWidget(forms.Widget): - def render(self, name, value, attrs=None): - return """ - <img src="%(value)s" /><br /> - %(change)s: <input type="file" name="%(name)s" /> - <input type="hidden" name="%(name)s_old" value="%(value)s" /> - """ % {'name': name, 'value': value, 'change': _('Change this:')} - - def value_from_datadict(self, data, files, name): - if name in files: - f = files[name] - - # check file type - file_name_suffix = os.path.splitext(f.name)[1].lower() - - if not file_name_suffix in ('.jpg', '.jpeg', '.gif', '.png', '.bmp', '.tiff', '.ico'): - raise Exception('File type not allowed') - - from forum.settings import UPFILES_FOLDER, UPFILES_ALIAS - - storage = FileSystemStorage(str(UPFILES_FOLDER), str(UPFILES_ALIAS)) - new_file_name = storage.save(f.name, f) - return str(UPFILES_ALIAS) + new_file_name - else: - if "%s_old" % name in data: - return data["%s_old" % name] - elif name in data: - return data[name] - -class StringListWidget(forms.Widget): - def render(self, name, value, attrs=None): - ret = "" - for s in value: - ret += """ - <div class="string-list-input"> - <input type="text" name="%(name)s" value="%(value)s" /> - <button class="string_list_widget_button">-</button> - </div> - """ % {'name': name, 'value': s} - - return """ - <div class="string_list_widgets"> - %(ret)s - <div><button name="%(name)s" class="string_list_widget_button add">+</button></div> - </div> - """ % dict(name=name, ret=ret) - - def value_from_datadict(self, data, files, name): - if 'submit' in data: - return data.getlist(name) - else: - return data[name] - -class CommaStringListWidget(forms.Textarea): - def render(self, name, value, attrs=None): - return super(CommaStringListWidget, self).render(name, ', '.join(value), attrs) - - - def value_from_datadict(self, data, files, name): - if 'submit' in data: - return map(strip, data[name].split(',')) - else: - return ', '.join(data[name]) - -class TestEmailSettingsWidget(forms.TextInput): - def render(self, name, value, attrs=None): - if not value: - value = '' - - return """ - <div id="test_email_settings"> - <a href="%s" onclick="return false;" class="button test_button" href="/">Test</a> - - <div style="margin-top: 7px"> - <div style="display: none" class="ajax_indicator"> - Testing your current e-mail settings. Please, wait. - </div> - <div class="test_status"></div> - </div> - </div> - """ % reverse("test_email_settings") \ No newline at end of file diff --git a/forum/settings/.svn/text-base/minrep.py.svn-base b/forum/settings/.svn/text-base/minrep.py.svn-base deleted file mode 100644 index 1c9e17d34d697b2094a2c801df5ec103902306b1..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/minrep.py.svn-base +++ /dev/null @@ -1,95 +0,0 @@ -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -MIN_REP_SET = SettingSet('minrep', _('Minimum reputation config'), _("Configure the minimum reputation required to perform certain actions on your site."), 300) - -CAPTCHA_IF_REP_LESS_THAN = Setting('CAPTCHA_IF_REP_LESS_THAN', 0, MIN_REP_SET, dict( -label = _("Show captcha if user with less reputation than"), -help_text = _("If the user has less reputation, captcha is used to when adding new content."))) - -REP_TO_VOTE_UP = Setting('REP_TO_VOTE_UP', 15, MIN_REP_SET, dict( -label = _("Minimum reputation to vote up"), -help_text = _("The minimum reputation an user must have to be allowed to vote up."))) - -REP_TO_VOTE_DOWN = Setting('REP_TO_VOTE_DOWN', 100, MIN_REP_SET, dict( -label = _("Minimum reputation to vote down"), -help_text = _("The minimum reputation an user must have to be allowed to vote down."))) - -REP_TO_FLAG = Setting('REP_TO_FLAG', 15, MIN_REP_SET, dict( -label = _("Minimum reputation to flag a post"), -help_text = _("The minimum reputation an user must have to be allowed to flag a post."))) - -REP_TO_COMMENT = Setting('REP_TO_COMMENT', 50, MIN_REP_SET, dict( -label = _("Minimum reputation to comment"), -help_text = _("The minimum reputation an user must have to be allowed to comment a post."))) - -REP_TO_LIKE_COMMENT = Setting('REP_TO_LIKE_COMMENT', 15, MIN_REP_SET, dict( -label = _("Minimum reputation to like a comment"), -help_text = _("The minimum reputation an user must have to be allowed to \"like\" a comment."))) - -REP_TO_UPLOAD = Setting('REP_TO_UPLOAD', 60, MIN_REP_SET, dict( -label = _("Minimum reputation to upload"), -help_text = _("The minimum reputation an user must have to be allowed to upload a file."))) - -REP_TO_CREATE_TAGS = Setting('REP_TO_CREATE_TAGS', 250, MIN_REP_SET, dict( -label = _("Minimum reputation to create tags"), -help_text = _("The minimum reputation an user must have to be allowed to create new tags."))) - -REP_TO_CLOSE_OWN = Setting('REP_TO_CLOSE_OWN', 250, MIN_REP_SET, dict( -label = _("Minimum reputation to close own question"), -help_text = _("The minimum reputation an user must have to be allowed to close his own question."))) - -UNIFY_PERMISSIONS_TO_CLOSE_AND_REOPEN = Setting('UNIFY_PERMISSIONS_TO_CLOSE_AND_REOPEN', True, MIN_REP_SET, dict( -label = _("Unify close and reopen permissions"), -help_text = _("If checked the same permissions as the ones to close question will be required to reopen it."), -required=False)) - -REP_TO_REOPEN_OWN = Setting('REP_TO_REOPEN_OWN', 500, MIN_REP_SET, dict( -label = _("Minimum reputation to reopen own question"), -help_text = _("The minimum reputation an user must have to be allowed to reopen his own question."))) - -REP_TO_RETAG = Setting('REP_TO_RETAG', 500, MIN_REP_SET, dict( -label = _("Minimum reputation to retag others questions"), -help_text = _("The minimum reputation an user must have to be allowed to retag others questions."))) - -REP_TO_EDIT_WIKI = Setting('REP_TO_EDIT_WIKI', 750, MIN_REP_SET, dict( -label = _("Minimum reputation to edit wiki posts"), -help_text = _("The minimum reputation an user must have to be allowed to edit community wiki posts."))) - -REP_TO_WIKIFY = Setting('REP_TO_WIKIFY', 2000, MIN_REP_SET, dict( -label = _("Minimum reputation to mark post as community wiki"), -help_text = _("The minimum reputation an user must have to be allowed to mark a post as community wiki."))) - -REP_TO_EDIT_OTHERS = Setting('REP_TO_EDIT_OTHERS', 2000, MIN_REP_SET, dict( -label = _("Minimum reputation to edit others posts"), -help_text = _("The minimum reputation an user must have to be allowed to edit others posts."))) - -REP_TO_CLOSE_OTHERS = Setting('REP_TO_CLOSE_OTHERS', 3000, MIN_REP_SET, dict( -label = _("Minimum reputation to close others posts"), -help_text = _("The minimum reputation an user must have to be allowed to close others posts."))) - -REP_TO_DELETE_COMMENTS = Setting('REP_TO_DELETE_COMMENTS', 2000, MIN_REP_SET, dict( -label = _("Minimum reputation to delete comments"), -help_text = _("The minimum reputation an user must have to be allowed to delete comments."))) - -REP_TO_CONVERT_TO_COMMENT = Setting('REP_TO_CONVERT_TO_COMMENT', 2000, MIN_REP_SET, dict( -label = _("Minimum reputation to convert answers to comment"), -help_text = _("The minimum reputation an user must have to be allowed to convert an answer into a comment."))) - -REP_TO_CONVERT_COMMENTS_TO_ANSWERS = Setting('REP_TO_CONVERT_COMMENTS_TO_ANSWERS', 2000, MIN_REP_SET, dict( -label = _("Minimum reputation to convert comments to answers"), -help_text = _("The minimum reputation an user must have to be allowed to convert comments into an answer."))) - -REP_TO_CONVERT_TO_QUESTION = Setting('REP_TO_CONVERT_TO_QUESTION', 2000, MIN_REP_SET, dict( -label = _("Minimum reputation to convert answers to questions"), -help_text = _("The minimum reputation an user must have to be allowed to convert an answer into a question."))) - -REP_TO_VIEW_FLAGS = Setting('REP_TO_VIEW_FLAGS', 2000, MIN_REP_SET, dict( -label = _("Minimum reputation to view offensive flags"), -help_text = _("The minimum reputation an user must have to view offensive flags."))) - -#REP_TO_DISABLE_NOFOLLOW = Setting('REP_TO_DISABLE_NOFOLLOW', 2000, MIN_REP_SET, dict( -#label = _("Minimum reputation to disable nofollow"), -#help_text = _(""" -#The minimum reputation an user must have to be allowed to disable the nofollow attribute of a post link. -#"""))) diff --git a/forum/settings/.svn/text-base/moderation.py.svn-base b/forum/settings/.svn/text-base/moderation.py.svn-base deleted file mode 100644 index 742cc051c83c0e2903e2788d513333144ef3822f..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/moderation.py.svn-base +++ /dev/null @@ -1,57 +0,0 @@ -from base import Setting, SettingSet -from forms import StringListWidget - -from django.utils.encoding import smart_unicode -from django.utils.translation import ugettext_lazy as _ -from django.forms.widgets import Textarea, RadioSelect - -MODERATION_SET = SettingSet('moderation', _('Moderation settings'), _("Define the moderation workflow of your site"), 100) - -USE_CANNED_COMMENTS = Setting('USE_CANNED_COMMENTS', True, MODERATION_SET, dict( -label = _("Use canned comments"), -help_text = _("If you check, the canned comments feature will be activated, allowing moderators to use canned patterns for their comments."), -required=False)) - -CANNED_COMMENTS = Setting('CANNED_COMMENTS', -[ -"We require all postings to have a clear, specific QUESTION in the title field. Please edit this right away to rephrase the title as a proper question.", -], -MODERATION_SET, dict( -label = _("Canned comments"), -help_text = _(""" -<p>Create some canned comments to be used for easier moderation. You can access the {{ post }} and {{ settings }} variables.</p> -<p>If you want to access the current post author username you can use {{ post.author }}, for the question title use {{ post.title }}.</p> -<p>To get the application title use {{ settings.APP_TITLE }}. All settings are accessible through the settings object.</p> -"""), -widget=StringListWidget)) - -FLAG_TYPES = Setting('FLAG_TYPES', -["Spam", "Advertising", "Offensive, Abusive, or Inappropriate", "Content violates terms of use", "Copyright Violation", - "Misleading", "Someone is not being nice", "Not relevant/off-topic", "Other"], -MODERATION_SET, dict( -label = _("Flag Reasons"), -help_text = _("Create some flag reasons to use in the flag post popup."), -widget=StringListWidget)) - - -CLOSE_TYPES = Setting('CLOSE_TYPES', -["Duplicate Question", "Question is off-topic or not relevant", "Too subjective and argumentative", - "The question is answered, right answer was accepted", "Problem is not reproducible or outdated", "Other"], -MODERATION_SET, dict( -label = _("Close Reasons"), -help_text = _("Create some close reasons to use in the close question popup."), -widget=StringListWidget)) - - -# Flag control position -REPORT_OFFENSIVE_CONTROL_POSITION_CHOICES = ( - ('more', _('Position it in the "More" menu')), - ('controls', _('Position it in main controls')), -) - -REPORT_OFFENSIVE_CONTROL_POSITION = Setting('REPORT_OFFENSIVE_CONTROL_POSITION', 'more', MODERATION_SET, dict( -label = _("Position of report control"), -help_text = _("Choose the position of the \"report (0)\" control of nodes."), -widget=RadioSelect, -choices=REPORT_OFFENSIVE_CONTROL_POSITION_CHOICES, -required=False)) diff --git a/forum/settings/.svn/text-base/repgain.py.svn-base b/forum/settings/.svn/text-base/repgain.py.svn-base deleted file mode 100644 index 6b283ec2604ae95bf52fbe09929ff938cd7fc0b8..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/repgain.py.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -REP_GAIN_SET = SettingSet('repgain', _('Reputation gains and losses config'), _("Configure the reputation points a user may gain or lose upon certain actions."), 200) - -INITIAL_REP = Setting('INITIAL_REP', 1, REP_GAIN_SET, dict( -label = _("Initial reputation"), -help_text = _("The initial reputation an user gets when he first signs in."))) - -MAX_REP_BY_UPVOTE_DAY = Setting('MAX_REP_BY_UPVOTE_DAY', 200, REP_GAIN_SET, dict( -label = "Max rep by up votes / day", -help_text = _("Maximum reputation a user can gain in one day for being upvoted."))) - -REP_GAIN_BY_EMAIL_VALIDATION = Setting('REP_GAIN_BY_EMAIL_VALIDATION', 10, REP_GAIN_SET, dict( -label = _("Rep gain by e-mail validation"), -help_text = _("Reputation a user gains for validating his e-mail."))) - -REP_GAIN_BY_UPVOTED = Setting('REP_GAIN_BY_UPVOTED', 10, REP_GAIN_SET, dict( -label = _("Rep gain by upvoted"), -help_text = _("Reputation a user gains for having one of his posts up voted."))) - -REP_LOST_BY_DOWNVOTED = Setting('REP_LOST_BY_DOWNVOTED', 2, REP_GAIN_SET, dict( -label = _("Rep lost by downvoted"), -help_text = _("Reputation a user loses for having one of his posts down voted."))) - -REP_LOST_BY_DOWNVOTING = Setting('REP_LOST_BY_DOWNVOTING', 1, REP_GAIN_SET, dict( -label = _("Rep lost by downvoting"), -help_text = _("Reputation a user loses for down voting a post."))) - - -REP_GAIN_BY_ACCEPTED = Setting('REP_GAIN_BY_ACCEPTED', 15, REP_GAIN_SET, dict( -label = _("Rep gain by accepted answer"), -help_text = _("Reputation a user gains for having one of his answers accepted."))) - -REP_GAIN_BY_ACCEPTING = Setting('REP_GAIN_BY_ACCEPTING', 2, REP_GAIN_SET, dict( -label = _("Rep gain by accepting answer"), -help_text = _("Reputation a user gains for accepting an answer to one of his questions."))) - -REP_LOST_BY_FLAGGED = Setting('REP_LOST_BY_FLAGGED', 2, REP_GAIN_SET, dict( -label = _("Rep lost by post flagged"), -help_text = _("Reputation a user loses by having one of his posts flagged."))) - -REP_LOST_BY_FLAGGED_3_TIMES = Setting('REP_LOST_BY_FLAGGED_3_TIMES', 30, REP_GAIN_SET, dict( -label = _("Rep lost by post flagged and hidden"), -help_text = _("Reputation a user loses by having the last revision of one of his posts flagged the enough number of times to hide the post."))) - -REP_LOST_BY_FLAGGED_5_TIMES = Setting('REP_LOST_BY_FLAGGED_5_TIMES', 100, REP_GAIN_SET, dict( -label = _("Rep lost by post flagged and deleted"), -help_text = _("Reputation a user loses by having the last revision of one of his posts flagged the enough number of times to delete the post."))) \ No newline at end of file diff --git a/forum/settings/.svn/text-base/sidebar.py.svn-base b/forum/settings/.svn/text-base/sidebar.py.svn-base deleted file mode 100644 index 4e5ad394a0e5ef7d78e1bd15b952f87ac377a1b4..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/sidebar.py.svn-base +++ /dev/null @@ -1,108 +0,0 @@ -from base import Setting, SettingSet -from django.forms.widgets import Textarea, Select -from django.utils.translation import ugettext_lazy as _ - -from static import RENDER_CHOICES - -SIDEBAR_SET = SettingSet('sidebar', 'Sidebar content', "Enter contents to display in the sidebar. You can use markdown and some basic html tags.", 10, True) - -SHOW_WELCOME_BOX = Setting('SHOW_WELCOME_BOX', True, SIDEBAR_SET, dict( -label = _("Show the Welcome box"), -help_text = _("Do you want to show the welcome box when a user first visits your site."), -required=False)) - -SHOW_INTERESTING_TAGS_BOX = Setting('SHOW_INTERESTING_TAGS_BOX', True, SIDEBAR_SET, dict( -label = _("Show interesting tags in the sidebar"), -help_text = _("Check this if you want to see the interesting tags container in the sidebar."), -required=False)) - -APP_INTRO = Setting('APP_INTRO', u'<p>Ask and answer questions, make the world better!</p>', SIDEBAR_SET, dict( -label = _("Application intro"), -help_text = _("The introductory page that is visible in the sidebar for anonymous users."), -widget=Textarea)) - -QUESTION_TITLE_TIPS = Setting('QUESTION_TITLE_TIPS', -u""" - - **ask a question relevant to the |APP_TITLE| community** - - the title must be in the form of a question - - provide enough details - - be clear and concise -""" -, SIDEBAR_SET, dict( -label = "Question title tips", -help_text = "Tips visible on the ask or edit questions page about the question title.", -required=False, -widget=Textarea(attrs={'rows': '10'}))) - -QUESTION_TAG_TIPS = Setting('QUESTION_TAG_TIPS', -u""" - - Tags are words that will tell others what this question is about. - - They will help other find your question. - - A question can have up to |FORM_MAX_NUMBER_OF_TAGS| tags, but it must have at least |FORM_MIN_NUMBER_OF_TAGS|. -""" -, SIDEBAR_SET, dict( -label = "Tagging tips", -help_text = "Tips visible on the ask or edit questions page about good tagging.", -required=False, -widget=Textarea(attrs={'rows': '10'}))) - - -SIDEBAR_UPPER_SHOW = Setting('SIDEBAR_UPPER_SHOW', True, SIDEBAR_SET, dict( -label = "Show Upper Block", -help_text = "Check if your pages should display the upper sidebar block.", -required=False)) - -SIDEBAR_UPPER_DONT_WRAP = Setting('SIDEBAR_UPPER_DONT_WRAP', False, SIDEBAR_SET, dict( -label = "Don't Wrap Upper Block", -help_text = "Don't wrap upper block with the standard style.", -required=False)) - -SIDEBAR_UPPER_TEXT = Setting('SIDEBAR_UPPER_TEXT', -u""" -[![WebFaction logo][2]][1] -## [Reliable OSQA Hosting][1] - -We recommend [**WebFaction**][1] for OSQA hosting. For \ -under $10/month their reliable servers get the job done. See our \ -[**step-by-step setup guide**](http://wiki.osqa.net/display/docs/Installing+OSQA+on+WebFaction). - -[1]: http://www.webfaction.com?affiliate=osqa -[2]: /m/default/media/images/webfaction.png""", SIDEBAR_SET, dict( -label = "Upper Block Content", -help_text = " The upper sidebar block. ", -widget=Textarea(attrs={'rows': '10'}))) - -SIDEBAR_UPPER_RENDER_MODE = Setting('SIDEBAR_UPPER_RENDER_MODE', 'markdown', SIDEBAR_SET, dict( -label = _("Upper block rendering mode"), -help_text = _("How to render your upper block code."), -widget=Select(choices=RENDER_CHOICES), -required=False)) - - -SIDEBAR_LOWER_SHOW = Setting('SIDEBAR_LOWER_SHOW', True, SIDEBAR_SET, dict( -label = "Show Lower Block", -help_text = "Check if your pages should display the lower sidebar block.", -required=False)) - -SIDEBAR_LOWER_DONT_WRAP = Setting('SIDEBAR_LOWER_DONT_WRAP', False, SIDEBAR_SET, dict( -label = "Don't Wrap Lower Block", -help_text = "Don't wrap lower block with the standard style.", -required=False)) - -SIDEBAR_LOWER_TEXT = Setting('SIDEBAR_LOWER_TEXT', -u""" -## Learn more about OSQA - -The [**OSQA website**](http://www.osqa.net/) and [**OSQA wiki**](http://wiki.osqa.net/) \ -are great resources to help you learn more about the OSQA open source Q&A system. \ -[**Join the OSQA chat!**](http://meta.osqa.net/question/79/is-there-an-online-chat-room-or-irc-channel-for-osqa#302) -""", SIDEBAR_SET, dict( -label = "Lower Block Content", -help_text = " The lower sidebar block. ", -widget=Textarea(attrs={'rows': '10'}))) - -SIDEBAR_LOWER_RENDER_MODE = Setting('SIDEBAR_LOWER_RENDER_MODE', 'markdown', SIDEBAR_SET, dict( -label = _("Lower block rendering mode"), -help_text = _("How to render your lower block code."), -widget=Select(choices=RENDER_CHOICES), -required=False)) \ No newline at end of file diff --git a/forum/settings/.svn/text-base/sitemaps.py.svn-base b/forum/settings/.svn/text-base/sitemaps.py.svn-base deleted file mode 100644 index 65d5d17b7a9d114e615f278b2c647f0b0b4a6d49..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/sitemaps.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -from base import Setting, SettingSet -from django.forms.widgets import Textarea, RadioSelect, Select -from django.utils.translation import ugettext_lazy as _ - -SITEMAP_SET = SettingSet('sitemap', _('Sitemap settings'), _("Some settings connected with the Sitemaps."), 2000) - -QUESTIONS_SITEMAP_LIMIT = Setting('QUESTIONS_SITEMAP_LIMIT', 2500, SITEMAP_SET, dict( -label = _("Questions Sitemap Limit"), -help_text = _("The questions limit per page for the Questions Sitemap."))) - -QUESTIONS_SITEMAP_CHANGEFREQ = Setting('QUESTIONS_SITEMAP_CHANGEFREQ', 'daily', SITEMAP_SET, dict( -label = _("Questions Sitemap Change Fraquence"), -help_text = _("Used in the Questions Sitemap <changefreq> tag and specifies the content change frequency."))) diff --git a/forum/settings/.svn/text-base/static.py.svn-base b/forum/settings/.svn/text-base/static.py.svn-base deleted file mode 100644 index 9eb5d39405a6d62fbcc80a29c7738a792de3e688..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/static.py.svn-base +++ /dev/null @@ -1,106 +0,0 @@ -from base import Setting, SettingSet -from django.forms.widgets import Textarea, RadioSelect, Select -from django.utils.translation import ugettext_lazy as _ - -RENDER_CHOICES = ( -('markdown', _('Markdown')), -('html', _('HTML')), -('escape', _('Escaped')) -) - -STATIC_PAGE_REGISTRY = Setting('STATIC_PAGE_REGISTRY', {}) - -CSS_SET = SettingSet('css', 'Custom CSS', "Define some custom css you can use to override the default css.", 2000, - can_preview=True) - -USE_CUSTOM_CSS = Setting('USE_CUSTOM_CSS', False, CSS_SET, dict( - label = _("Use custom CSS"), - help_text = _("Do you want to use custom CSS."), - required=False)) - -CUSTOM_CSS = Setting('CUSTOM_CSS', '', CSS_SET, dict( - label = _("Custom CSS"), - help_text = _("Your custom CSS."), - widget=Textarea(attrs={'rows': '25'}), - required=False)) - -HEAD_AND_FOOT_SET = SettingSet('headandfoot', 'Header and Footer', "Adds a custom header and/or footer to your page", - 2000, can_preview=True) - -USE_CUSTOM_HEADER = Setting('USE_CUSTOM_HEADER', False, HEAD_AND_FOOT_SET, dict( - label = _("Use custom header"), - help_text = _("Do you want to use a custom header."), - required=False)) - -CUSTOM_HEADER = Setting('CUSTOM_HEADER', '', HEAD_AND_FOOT_SET, dict( - label = _("Custom Header"), - help_text = _("Your custom header."), - widget=Textarea(attrs={'rows': '25'}), - required=False)) - -CUSTOM_HEADER_RENDER_MODE = Setting('CUSTOM_HEADER_RENDER_MODE', 'markdown', HEAD_AND_FOOT_SET, dict( - label = _("Custom Header rendering mode"), - help_text = _("How to render your custom header code."), - widget=Select(choices=RENDER_CHOICES), - required=False)) - -USE_ANNOUNCEMENT_BAR = Setting('USE_ANNOUNCEMENT_BAR', False, HEAD_AND_FOOT_SET, dict( - label = _("Show announcement bar"), - help_text = _("Some piece of content that goes under the search bar and can be used for announcements, etc."), - required=False)) - -ANNOUNCEMENT_BAR = Setting('ANNOUNCEMENT_BAR', '', HEAD_AND_FOOT_SET, dict( - label = _("Announcement bar"), - help_text = _("The announcement bar content."), - widget=Textarea(attrs={'rows': '25'}), - required=False)) - -ANNOUNCEMENT_BAR_RENDER_MODE = Setting('ANNOUNCEMENT_BAR_RENDER_MODE', 'markdown', HEAD_AND_FOOT_SET, dict( - label = _("Announcement bar rendering mode"), - help_text = _("How to render your announcement bar code."), - widget=Select(choices=RENDER_CHOICES), - required=False)) - -USE_CUSTOM_FOOTER = Setting('USE_CUSTOM_FOOTER', False, HEAD_AND_FOOT_SET, dict( - label = _("Use custom footer"), - help_text = _("Do you want to use a custom footer."), - required=False)) - -CUSTOM_FOOTER = Setting('CUSTOM_FOOTER', '', HEAD_AND_FOOT_SET, dict( - label = _("Custom Footer"), - help_text = _("Your custom footer."), - widget=Textarea(attrs={'rows': '25'}), - required=False)) - -CUSTOM_FOOTER_RENDER_MODE = Setting('CUSTOM_FOOTER_RENDER_MODE', 'markdown', HEAD_AND_FOOT_SET, dict( - label = _("Custom footer rendering mode"), - help_text = _("How to render your custom footer code."), - widget=Select(choices=RENDER_CHOICES), - required=False)) - -CUSTOM_FOOTER_MODE_CHOICES = ( -('replace', _('Replace default footer')), -('above', _('Above default footer')), -('below', _('Below default footer')), -) - -CUSTOM_FOOTER_MODE = Setting('CUSTOM_FOOTER_MODE', 'replace', HEAD_AND_FOOT_SET, dict( - label = _("Custom Footer Mode"), - help_text = _("How your custom footer will appear."), - widget=RadioSelect, - choices=CUSTOM_FOOTER_MODE_CHOICES, - required=False)) - -HEAD_SET = SettingSet('head', '<head>', "Define some custom elements to include in the head section of every page.", - 2000, can_preview=True) - -USE_CUSTOM_HEAD = Setting('USE_CUSTOM_HEAD', False, HEAD_SET, dict( - label = _("Use custom Head elements"), - help_text = _("Do you want to use custom head elements."), - required=False)) - -CUSTOM_HEAD = Setting('CUSTOM_HEAD', '', HEAD_SET, dict( - label = _("Custom Head"), - help_text = _("Your custom Head elements."), - widget=Textarea(attrs={'rows': '25'}), - required=False)) \ No newline at end of file diff --git a/forum/settings/.svn/text-base/upload.py.svn-base b/forum/settings/.svn/text-base/upload.py.svn-base deleted file mode 100644 index 6e66e0076df8304cfd3d0ce6d9827c7954d3b9c3..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/upload.py.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -import os.path -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -UPLOAD_SET = SettingSet('paths', _('File upload settings'), _("File uploads related settings."), 600) - -UPFILES_FOLDER = Setting('UPFILES_FOLDER', os.path.join(os.path.dirname(os.path.dirname(__file__)),'upfiles'), UPLOAD_SET, dict( -label = _("Uploaded files folder"), -help_text = _("The filesystem path where uploaded files will be stored. Please note that this folder must exist."))) - -UPFILES_ALIAS = Setting('UPFILES_ALIAS', '/upfiles/', UPLOAD_SET, dict( -label = _("Uploaded files alias"), -help_text = _("The url alias for uploaded files. Notice that if you change this setting, you'll need to restart your site."))) - -ALLOW_MAX_FILE_SIZE = Setting('ALLOW_MAX_FILE_SIZE', 2.5, UPLOAD_SET, dict( -label = _("Max file size"), -help_text = _("The maximum allowed file size for uploads in mb."))) \ No newline at end of file diff --git a/forum/settings/.svn/text-base/urls.py.svn-base b/forum/settings/.svn/text-base/urls.py.svn-base deleted file mode 100644 index e7e6797212a6cd256388ae4b0ec1f490a5fdf1f2..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,20 +0,0 @@ -from base import Setting, SettingSet -from django.utils.translation import ugettext as _ - -URLS_SET = SettingSet('urls', _('URL settings'), _("Some settings to tweak behaviour of site urls (experimental).")) - -INCLUDE_ID_IN_USER_URLS = Setting('INCLUDE_ID_IN_USER_URLS', True, URLS_SET, dict( -label = _("Include IDs in user URLs"), -help_text = _("Choose this if you want to have IDs included in the user-related URLs."), -required=False)) - -ALLOW_UNICODE_IN_SLUGS = Setting('ALLOW_UNICODE_IN_SLUGS', False, URLS_SET, dict( -label = _("Allow unicode in slugs"), -help_text = _("Allow unicode/non-latin characters in urls."), -required=False)) - -FORCE_SINGLE_URL = Setting('FORCE_SINGLE_URL', True, URLS_SET, dict( -label = _("Force single url"), -help_text = _("Redirect the request in case there is a mismatch between the slug in the url and the actual slug"), -required=False)) - diff --git a/forum/settings/.svn/text-base/users.py.svn-base b/forum/settings/.svn/text-base/users.py.svn-base deleted file mode 100644 index a108ebf408882ccc4adce5620b48ba9d909bcfa6..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/users.py.svn-base +++ /dev/null @@ -1,118 +0,0 @@ -from forms import CommaStringListWidget, StringListWidget -from django.forms import CheckboxSelectMultiple -from django.forms.widgets import RadioSelect -from base import Setting, SettingSet -from django.utils.translation import ugettext as _ - -USERS_SET = SettingSet('users', _('Users settings'), _("General settings for the OSQA users."), 20) - -ALLOW_NEGATIVE_REPUTATION = Setting('ALLOW_NEGATIVE_REPUTATION', True, USERS_SET, dict( -label = _("Allow negative reputation"), -help_text = _("Check if you want to allow negative user reputations in the community."), -required=False)) - -STORE_GREETING_IN_COOKIE = Setting('STORE_GREETING_IN_COOKIE', True, USERS_SET, dict( -label = _("Store greeting in cookie"), -help_text = _("If you check this the greeting will be stored in a cookie and the users won't be notified on logout."), -required=False)) - -EDITABLE_SCREEN_NAME = Setting('EDITABLE_SCREEN_NAME', False, USERS_SET, dict( -label = _("Editable screen name"), -help_text = _("Allow users to alter their screen name."), -required=False)) - -MIN_USERNAME_LENGTH = Setting('MIN_USERNAME_LENGTH', 3, USERS_SET, dict( -label = _("Minimum username length"), -help_text = _("The minimum length (in character) of a username."))) - -RESERVED_USERNAMES = Setting('RESERVED_USERNAMES', -[_('fuck'), _('shit'), _('ass'), _('sex'), _('add'), _('edit'), _('save'), _('delete'), _('manage'), _('update'), _('remove'), _('new')] -, USERS_SET, dict( -label = _("Disabled usernames"), -help_text = _("A comma separated list of disabled usernames (usernames not allowed during a new user registration)."), -widget=CommaStringListWidget)) - -TRUNCATE_LONG_USERNAMES = Setting('TRUNCATE_LONG_USERNAMES', True, USERS_SET, dict( -label=_("Truncate long usernames"), -help_text = _("The long usernames will be truncated.."), -required=False, -)) - -SHOW_USER_ACCEPT_RATE = Setting('SHOW_USER_ACCEPT_RATE', True, USERS_SET, dict( -label = _("Show user accept rate"), -help_text = _("If you check this the user accept rate will be displayed on the user posts."), -required=False)) - -FREEZE_ACCEPT_RATE_FOR = Setting('FREEZE_ACCEPT_RATE_FOR', -["admin",], -USERS_SET, dict( -label = _("Freeze accept rate"), -help_text = _("Freeze answers accept rate for the selected users."), -widget=StringListWidget)) - -TRUNCATE_USERNAMES_LONGER_THAN = Setting('TRUNCATE_USERNAMES_LONGER_THAN', 15, USERS_SET, dict( -label = _("Truncate usernames longer than"), -help_text = _("The usernames that are longer than this will be truncated and ... will be appended."))) - -SHOW_STATUS_DIAMONDS = Setting('SHOW_STATUS_DIAMONDS', True, USERS_SET, dict( -label=_("Show status diamonds"), -help_text = _("Show status \"diamonds\" next to moderators or superusers usernames."), -required=False, -)) - -EMAIL_UNIQUE = Setting('EMAIL_UNIQUE', True, USERS_SET, dict( -label = _("Force unique email"), -help_text = _("Should each user have an unique email."), -required=False)) - -REQUIRE_EMAIL_VALIDATION_TO = Setting('REQUIRE_EMAIL_VALIDATION_TO', [], USERS_SET, dict( -label = _("Require email validation to..."), -help_text = _("Which actions in this site, users without a valid email will be prevented from doing."), -widget=CheckboxSelectMultiple, -choices=(("ask", _("ask questions")), ("answer", _("provide answers")), ("comment", _("make comments")), ("flag", _("report posts"))), -required=False, -)) - -DONT_NOTIFY_UNVALIDATED = Setting('DONT_NOTIFY_UNVALIDATED', True, USERS_SET, dict( -label = _("Don't notify to invalid emails"), -help_text = _("Do not notify users with unvalidated emails."), -required=False)) - -HOLD_PENDING_POSTS_MINUTES = Setting('HOLD_PENDING_POSTS_MINUTES', 120, USERS_SET, dict( -label=_("Hold pending posts for X minutes"), -help_text=_("How much time in minutes a post should be kept in session until the user logs in or validates the email.") -)) - -WARN_PENDING_POSTS_MINUTES = Setting('WARN_PENDING_POSTS_MINUTES', 15, USERS_SET, dict( -label=_("Warn about pending posts afer X minutes"), -help_text=_("How much time in minutes a user that just logged in or validated his email should be warned about a pending post instead of publishing it automatically.") -)) - -GRAVATAR_RATING_CHOICES = ( - ('g', _('suitable for display on all websites with any audience type.')), - ('pg', _('may contain rude gestures, provocatively dressed individuals, the lesser swear words, or mild violence.')), - ('r', _('may contain such things as harsh profanity, intense violence, nudity, or hard drug use.')), - ('x', _('may contain hardcore sexual imagery or extremely disturbing violence.')), -) - -GRAVATAR_ALLOWED_RATING = Setting('GRAVATAR_ALLOWED_RATING', 'g', USERS_SET, dict( -label = _("Gravatar rating"), -help_text = _("Gravatar allows users to self-rate their images so that they can indicate if an image is appropriate for a certain audience."), -widget=RadioSelect, -choices=GRAVATAR_RATING_CHOICES, -required=False)) - -GRAVATAR_DEFAULT_CHOICES = ( - ('mm', _('(mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash)')), - ('identicon', _('a geometric pattern based on an email hash')), - ('monsterid', _('a generated "monster" with different colors, faces, etc')), - ('wavatar', _('generated faces with differing features and backgrounds')), -) - -GRAVATAR_DEFAULT_IMAGE = Setting('GRAVATAR_DEFAULT_IMAGE', 'identicon', USERS_SET, dict( -label = _("Gravatar default"), -help_text = _("Gravatar has a number of built in options which you can also use as defaults."), -widget=RadioSelect, -choices=GRAVATAR_DEFAULT_CHOICES, -required=False)) - diff --git a/forum/settings/.svn/text-base/view.py.svn-base b/forum/settings/.svn/text-base/view.py.svn-base deleted file mode 100644 index 40990cea444c41d909db47204ea9c109b3e9dc97..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/view.py.svn-base +++ /dev/null @@ -1,64 +0,0 @@ -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -""" view settings """ -VIEW_SET = SettingSet('view', _('View settings'), _("Set up how certain parts of the site are displayed."), 20) - -EMBED_YOUTUBE_VIDEOS = Setting('EMBED_YOUTUBE_VIDEOS', True, VIEW_SET, dict( -label = _("Embed YouTube Videos"), -help_text = _("If you check this YouTube videos will be embedded"), -required=False)) - -SHOW_LATEST_COMMENTS_FIRST = Setting('SHOW_LATEST_COMMENTS_FIRST', False, VIEW_SET, dict( -label = _("Show latest comments first"), -help_text = _("Choose this if you want the latest comments to appear first."), -required=False)) - - -SUMMARY_LENGTH = Setting('SUMMARY_LENGTH', 300, VIEW_SET, dict( -label = _("Summary Length"), -help_text = _("The number of characters that are going to be displayed in order to get the content summary."))) - -SHOW_SUMMARY_ON_QUESTIONS_LIST = Setting('SHOW_SUMMARY_ON_QUESTIONS_LIST', False, VIEW_SET, dict( -label = _("Question summary on questions list?"), -help_text = _("Choose whether to show the question summary on questions list"), -required=False)) - -# Tag settings -RECENT_TAGS_SIZE = Setting('RECENT_TAGS_SIZE', 25, VIEW_SET, dict( -label = _("Recent tags block size"), -help_text = _("The number of tags to display in the recent tags block in the front page."))) - -SHOW_TAGS_IN_A_CLOUD = Setting('SHOW_TAGS_IN_A_CLOUD', True, VIEW_SET, dict( -label = _("Show tags in a cloud"), -help_text = _("If selected the tags in the recent tags widget will be displayed in a cloud."), -required=False)) - -TAGS_CLOUD_MIN_OCCURS = Setting('TAGS_CLOUD_MIN_OCCURS', 1, VIEW_SET, dict( -label = _("Tags cloud min occurs"), -help_text = _("Used to calculate the font size of the tags in the cloud widget."))) - -TAGS_CLOUD_MAX_OCCURS = Setting('TAGS_CLOUD_MAX_OCCURS', 35, VIEW_SET, dict( -label = _("Tags cloud max occurs"), -help_text = _("Used to calculate the font size of the tags in the cloud widget."))) - -TAGS_CLOUD_MIN_FONT_SIZE = Setting('TAGS_CLOUD_MIN_FONT_SIZE', 10, VIEW_SET, dict( -label = _("Tags cloud min font size"), -help_text = _("Used to calculate the font size of the tags in the cloud widget."))) - -TAGS_CLOUD_MAX_FONT_SIZE = Setting('TAGS_CLOUD_MAX_FONT_SIZE', 25, VIEW_SET, dict( -label = _("Tags cloud max font size"), -help_text = _("Used to calculate the font size of the tags in the cloud widget."))) - -RECENT_AWARD_SIZE = Setting('RECENT_AWARD_SIZE', 15, VIEW_SET, dict( -label = _("Recent awards block size"), -help_text = _("The number of awards to display in the recent awards block in the front page."))) - -UPDATE_LATEST_ACTIVITY_ON_TAG_EDIT = Setting('UPDATE_LATEST_ACTIVITY_ON_TAG_EDIT', True, VIEW_SET, dict( -label = _("Update latest activity on tag edit"), required=False, -help_text = _("If you check this the latest activity will be updated when editing only the tags of a question."))) - -LIMIT_RELATED_TAGS = Setting('LIMIT_RELATED_TAGS', 0, VIEW_SET, dict( -label = _("Limit related tags block"), -help_text = _("Limit related tags block size in questions list pages. Set to 0 to display all all tags."))) - diff --git a/forum/settings/.svn/text-base/voting.py.svn-base b/forum/settings/.svn/text-base/voting.py.svn-base deleted file mode 100644 index aea915380e98e079935b1410b18ba1965623ffda..0000000000000000000000000000000000000000 --- a/forum/settings/.svn/text-base/voting.py.svn-base +++ /dev/null @@ -1,32 +0,0 @@ -from base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -VOTE_RULES_SET = SettingSet('voting', _('Voting rules'), _("Configure the voting rules on your site."), 400) - -USER_REPUTATION_TO_MAX_VOTES = Setting('USER_REPUTATION_TO_MAX_VOTES', True, VOTE_RULES_SET, dict( -label = _("Add reputation to max votes per day"), required=False, -help_text = _("The user reputation is added to the static MAX_VOTES_PER_DAY option. Users with higher reputation can vote more."))) - -MAX_VOTES_PER_DAY = Setting('MAX_VOTES_PER_DAY', 30, VOTE_RULES_SET, dict( -label = _("Maximum votes per day"), -help_text = _("The maximum number of votes an user can cast per day."))) - -START_WARN_VOTES_LEFT = Setting('START_WARN_VOTES_LEFT', 10, VOTE_RULES_SET, dict( -label = _("Start warning about votes left"), -help_text = _("From how many votes left should an user start to be warned about it."))) - -MAX_FLAGS_PER_DAY = Setting('MAX_FLAGS_PER_DAY', 5, VOTE_RULES_SET, dict( -label = _("Maximum flags per day"), -help_text = _("The maximum number of times an can flag a post per day."))) - -FLAG_COUNT_TO_HIDE_POST = Setting('FLAG_COUNT_TO_HIDE_POST', 3, VOTE_RULES_SET, dict( -label = _("Flag count to hide post"), -help_text = _("How many times a post needs to be flagged to be hidden from the main page."))) - -FLAG_COUNT_TO_DELETE_POST = Setting('FLAG_COUNT_TO_DELETE_POST', 5, VOTE_RULES_SET, dict( -label = _("Flag count to delete post"), -help_text = _("How many times a post needs to be flagged to be deleted."))) - -DENY_UNVOTE_DAYS = Setting('DENY_UNVOTE_DAYS', 1, VOTE_RULES_SET, dict( -label = _("Days to cancel a vote"), -help_text = _("How many days an user can cancel a vote after he originaly casted it."))) \ No newline at end of file diff --git a/forum/skins/.svn/all-wcprops b/forum/skins/.svn/all-wcprops deleted file mode 100644 index 51e2e2dbb9c5afcda8cd8c1adfe76c480ed6045f..0000000000000000000000000000000000000000 --- a/forum/skins/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 45 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/821/osqa/trunk/forum/skins/__init__.py -END -README -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/README -END diff --git a/forum/skins/.svn/entries b/forum/skins/.svn/entries deleted file mode 100644 index 35dd65d6857edfb47763d423d886cca9f6c09f18..0000000000000000000000000000000000000000 --- a/forum/skins/.svn/entries +++ /dev/null @@ -1,102 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins -http://svn.osqa.net/svnroot - - - -2012-05-23T17:10:19.489673Z -1268 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -default -dir - -__init__.py -file - - - - -2012-06-22T20:34:43.228161Z -4b501834da6689797ab698ccaaa7284f -2011-03-11T19:50:09.258286Z -821 -hernani - - - - - - - - - - - - - - - - - - - - - -4242 - -common -dir - -README -file - - - - -2012-06-22T20:34:43.228161Z -cd9602aa2f9fe8d1bbff2127c94da8fe -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -772 - diff --git a/forum/skins/.svn/text-base/README.svn-base b/forum/skins/.svn/text-base/README.svn-base deleted file mode 100644 index 5565fa832c772cb3c96e0811b9a18ca7c6822b70..0000000000000000000000000000000000000000 --- a/forum/skins/.svn/text-base/README.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -this directory contains available skins - -1) default - default skin with templates -2) common - this directory is to media directory common to all or many templates - -to create a new skin just create another directory under skins/ -and start populating it with the directory structure as in -default/templates - templates must be named the same way - -NO NEED TO CREATE ALL TEMPLATES/MEDIA FILES AT ONCE - -templates are resolved in the following way: -* check in skin named as in settings.OSQA_DEFAULT_SKIN -* then skin named 'default' - -media is resolved with one extra option -* settings.OSQA_DEFAULT_SKIN -* 'default' -* 'common' - -media does not have to be composed of files named the same way as in default skin -whatever media you link to from your templates - will be in operation diff --git a/forum/skins/.svn/text-base/__init__.py.svn-base b/forum/skins/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 33e0097cc147f15054f95ec997ffb596f0b47ef0..0000000000000000000000000000000000000000 --- a/forum/skins/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,151 +0,0 @@ -from django.conf import settings -from django.template.loaders import filesystem -from django.template import TemplateDoesNotExist, Template as DJTemplate -from django.conf import settings as djsettings -import os.path -import logging - -UNEXISTENT_TEMPLATE = object() - -SKINS_FOLDER = os.path.dirname(__file__) -SKIN_TEMPLATES_FOLDER = 'templates' -DEFAULT_SKIN_NAME = 'default' -FORCE_DEFAULT_PREFIX = "%s/" % DEFAULT_SKIN_NAME - - -class Template(object): - - def __init__(self, file_name): - self._file_name = file_name - self._loaded = False - - def _get_mtime(self): - return os.path.getmtime(self._file_name) - - def _check_mtime(self): - if self._last_mtime is None: - return False - - return self._last_mtime == self._get_mtime() - - def _load(self): - try: - f = open(self._file_name, 'r') - self._source = f.read() - f.close() - self._loaded = True - - self._last_mtime = self._get_mtime() - except: - self._loaded = False - self._last_mtime = None - - raise - - def return_tuple(self): - if not (self._loaded and self._check_mtime()): - try: - self._load() - except: - raise TemplateDoesNotExist, self._file_name - - return self._source, self._file_name - -class BaseTemplateLoader(object): - is_usable = True - - def __init__(self): - self.cache = {} - - def __call__(self, name=None, dirs=None): - if name is None: - return self - - return self.load_template(name, dirs) - - def load_template(self, name, dirs=None): - if not djsettings.TEMPLATE_DEBUG: - if name in self.cache: - if self.cache[name] is UNEXISTENT_TEMPLATE: - raise TemplateDoesNotExist, name - - try: - return self.cache[name].return_tuple() - except: - del self.cache[name] - - template = self.load_template_source(name, dirs) - - if template is not None: - if not djsettings.DEBUG: - self.cache[name] = template - - return template.return_tuple() - else: - if not djsettings.DEBUG: - self.cache[name] = UNEXISTENT_TEMPLATE - - raise TemplateDoesNotExist, name - - def load_template_source(self, name, dirs=None): - raise NotImplementedError - - -class SkinsTemplateLoader(BaseTemplateLoader): - - def load_template_source(self, name, dirs=None): - - if name.startswith(FORCE_DEFAULT_PREFIX): - - file_name = os.path.join(SKINS_FOLDER, DEFAULT_SKIN_NAME, SKIN_TEMPLATES_FOLDER, name[len(FORCE_DEFAULT_PREFIX):]) - - if os.path.exists(file_name): - return Template(file_name) - else: - return None - - for skin in (settings.OSQA_DEFAULT_SKIN, DEFAULT_SKIN_NAME): - file_name = os.path.join(SKINS_FOLDER, skin, SKIN_TEMPLATES_FOLDER, name) - - if os.path.exists(file_name): - return Template(file_name) - - return None - -load_template_source = SkinsTemplateLoader() - - -def find_media_source(url): - """returns url prefixed with the skin name - of the first skin that contains the file - directories are searched in this order: - settings.OSQA_DEFAULT_SKIN, then 'default', then 'commmon' - if file is not found - returns None - and logs an error message - """ - while url[0] == '/': url = url[1:] - d = os.path.dirname - n = os.path.normpath - j = os.path.join - f = os.path.isfile - skins = n(j(d(d(__file__)),'skins')) - try: - media = os.path.join(skins, settings.OSQA_DEFAULT_SKIN, url) - assert(f(media)) - use_skin = settings.OSQA_DEFAULT_SKIN - except: - try: - media = j(skins, 'default', url) - assert(f(media)) - use_skin = 'default' - except: - media = j(skins, 'common', url) - try: - assert(f(media)) - use_skin = 'common' - except: - logging.error('could not find media for %s' % url) - use_skin = '' - return None - return use_skin + '/' + url - diff --git a/forum/skins/common/.svn/all-wcprops b/forum/skins/common/.svn/all-wcprops deleted file mode 100644 index 2c4416e1134c55016d1b915221bc796bf1d3da35..0000000000000000000000000000000000000000 --- a/forum/skins/common/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 50 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/common -END diff --git a/forum/skins/common/.svn/entries b/forum/skins/common/.svn/entries deleted file mode 100644 index 3390bf2178ce7a0a8a857156d526291db726d7e7..0000000000000000000000000000000000000000 --- a/forum/skins/common/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/common -http://svn.osqa.net/svnroot - - - -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -media -dir - diff --git a/forum/skins/common/media/.svn/all-wcprops b/forum/skins/common/media/.svn/all-wcprops deleted file mode 100644 index 8b34278e42a24dbfe0d1019d1ff125500ed206f1..0000000000000000000000000000000000000000 --- a/forum/skins/common/media/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/common/media -END -README -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/common/media/README -END diff --git a/forum/skins/common/media/.svn/entries b/forum/skins/common/media/.svn/entries deleted file mode 100644 index 7c926cbadacbf77bec77cddae4fa56418dcea887..0000000000000000000000000000000000000000 --- a/forum/skins/common/media/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/common/media -http://svn.osqa.net/svnroot - - - -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -README -file - - - - -2012-06-22T20:34:43.220165Z -74e88107f9ae2ee9858788cb1be5730c -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -52 - diff --git a/forum/skins/common/media/.svn/text-base/README.svn-base b/forum/skins/common/media/.svn/text-base/README.svn-base deleted file mode 100644 index 3376e754b024f18b279dc2856db1c138706cf30a..0000000000000000000000000000000000000000 --- a/forum/skins/common/media/.svn/text-base/README.svn-base +++ /dev/null @@ -1 +0,0 @@ -directory for media common to all or many templates diff --git a/forum/skins/default/.svn/all-wcprops b/forum/skins/default/.svn/all-wcprops deleted file mode 100644 index 8fa756d5415142ac6bd4a7cefd43dde00e54d326..0000000000000000000000000000000000000000 --- a/forum/skins/default/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins/default -END diff --git a/forum/skins/default/.svn/entries b/forum/skins/default/.svn/entries deleted file mode 100644 index c64c641a2fafedf5e7e97c54fe32a3e1865f1697..0000000000000000000000000000000000000000 --- a/forum/skins/default/.svn/entries +++ /dev/null @@ -1,37 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default -http://svn.osqa.net/svnroot - - - -2012-05-23T17:10:19.489673Z -1268 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -media -dir - -tests -dir - -templates -dir - diff --git a/forum/skins/default/media/.svn/all-wcprops b/forum/skins/default/media/.svn/all-wcprops deleted file mode 100644 index ba50e4b8d355fdbe65e023a6f53e7672e2802b77..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins/default/media -END diff --git a/forum/skins/default/media/.svn/dir-prop-base b/forum/skins/default/media/.svn/dir-prop-base deleted file mode 100644 index fcceacb9c0fd1003934f586ec71283a8a229d268..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/.svn/dir-prop-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 320 -/osqa/branches/cacheimp/forum/skins/default/media:874-939 -/osqa/branches/carpenter/forum/skins/default/media:691-725 -/osqa/branches/hernani/forum/skins/default/media:772-832 -/osqa/branches/jambazov/forum/skins/default/media:675-831 -/osqa/branches/notification-config/forum/skins/default/media:693-793,809,811-812,825-827 -END diff --git a/forum/skins/default/media/.svn/entries b/forum/skins/default/media/.svn/entries deleted file mode 100644 index 91b6253bef529333e006a3a6e8e99b95e6161521..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/.svn/entries +++ /dev/null @@ -1,40 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media -http://svn.osqa.net/svnroot - - - -2012-05-23T17:10:19.489673Z -1268 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -style -dir - -images -dir - -iepngfix -dir - -js -dir - diff --git a/forum/skins/default/media/iepngfix/.svn/all-wcprops b/forum/skins/default/media/iepngfix/.svn/all-wcprops deleted file mode 100644 index 1493090738a55131c69efcf6de04a4ce84016585..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/iepngfix/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix -END -iepngfix.htc -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix/iepngfix.htc -END -iepngfix_tilebg.js -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix/iepngfix_tilebg.js -END -blank.gif -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix/blank.gif -END diff --git a/forum/skins/default/media/iepngfix/.svn/entries b/forum/skins/default/media/iepngfix/.svn/entries deleted file mode 100644 index 3126a9c81426ed80a6e289aa37637b3189c8e10d..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/iepngfix/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/iepngfix -http://svn.osqa.net/svnroot - - - -2011-04-07T21:25:11.206789Z -943 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -iepngfix_tilebg.js -file - - - - -2012-06-22T20:34:39.518012Z -2700a811fcca690548a5c67e982ca336 -2011-04-07T21:25:11.206789Z -943 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4345 - -blank.gif -file - - - - -2012-06-22T20:34:39.522010Z -56398e76be6355ad5999b262208a17c9 -2011-04-07T21:25:11.206789Z -943 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -49 - -iepngfix.htc -file - - - - -2012-06-22T20:34:39.518012Z -7adc49bd4961583fa03e303a9384eb64 -2011-04-07T21:25:11.206789Z -943 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -5227 - diff --git a/forum/skins/default/media/iepngfix/.svn/prop-base/blank.gif.svn-base b/forum/skins/default/media/iepngfix/.svn/prop-base/blank.gif.svn-base deleted file mode 100644 index dbc918b06c1c8d7c24f3b9fa6b1d1e424817309d..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/iepngfix/.svn/prop-base/blank.gif.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 14 -svn:executable -V 1 -* -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/iepngfix/.svn/prop-base/iepngfix.htc.svn-base b/forum/skins/default/media/iepngfix/.svn/prop-base/iepngfix.htc.svn-base deleted file mode 100644 index 869ac71cf7e4d72d9ab52f86d630c1c3f0c017ce..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/iepngfix/.svn/prop-base/iepngfix.htc.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -svn:executable -V 1 -* -END diff --git a/forum/skins/default/media/iepngfix/.svn/prop-base/iepngfix_tilebg.js.svn-base b/forum/skins/default/media/iepngfix/.svn/prop-base/iepngfix_tilebg.js.svn-base deleted file mode 100644 index 869ac71cf7e4d72d9ab52f86d630c1c3f0c017ce..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/iepngfix/.svn/prop-base/iepngfix_tilebg.js.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -svn:executable -V 1 -* -END diff --git a/forum/skins/default/media/iepngfix/.svn/text-base/blank.gif.svn-base b/forum/skins/default/media/iepngfix/.svn/text-base/blank.gif.svn-base deleted file mode 100644 index 75b945d2553848b8b6f41fe5e24599c0687b8472..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/iepngfix/.svn/text-base/blank.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/iepngfix/.svn/text-base/iepngfix.htc.svn-base b/forum/skins/default/media/iepngfix/.svn/text-base/iepngfix.htc.svn-base deleted file mode 100644 index 909f599946a91c1b202e5eff0ee2f31a2ae1c9d4..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/iepngfix/.svn/text-base/iepngfix.htc.svn-base +++ /dev/null @@ -1,198 +0,0 @@ -<public:component> -<script type="text/javascript"> - -// IE5.5+ PNG Alpha Fix v2.0 Alpha -// (c) 2004-2009 Angus Turnbull http://www.twinhelix.com - -// This is licensed under the GNU LGPL, version 2.1 or later. -// For details, see: http://creativecommons.org/licenses/LGPL/2.1/ - -var IEPNGFix = window.IEPNGFix || {}; -IEPNGFix.data = IEPNGFix.data || {}; - - -// CONFIG: blankImg is the path to blank.gif, *relative to the HTML document*. -// Try either: -// * An absolute path like: '/images/blank.gif' -// * A path relative to this HTC file like: thisFolder + 'blank.gif' -var thisFolder = document.URL.replace(/(\\|\/)[^\\\/]*$/, '/'); -IEPNGFix.blankImg = thisFolder + 'blank.gif'; - - -IEPNGFix.fix = function(elm, src, t) { - // Applies an image 'src' to an element 'elm' using the DirectX filter. - // If 'src' is null, filter is disabled. - // Disables the 'hook' to prevent infinite recursion on setting BG/src. - // 't' = type, where background tile = 0, background = 1, IMG SRC = 2. - - var h = this.hook.enabled; - this.hook.enabled = 0; - - var f = 'DXImageTransform.Microsoft.AlphaImageLoader'; - src = (src || '').replace(/\(/g, '%28').replace(/\)/g, '%29'); - - if ( - src && !(/IMG|INPUT/.test(elm.nodeName) && (t != 2)) && - elm.currentStyle.width == 'auto' && elm.currentStyle.height == 'auto' - ) { - if (elm.offsetWidth) { - elm.style.width = elm.offsetWidth + 'px'; - } - if (elm.clientHeight) { - elm.style.height = elm.clientHeight + 'px'; - } - if (elm.currentStyle.display == 'inline') { - elm.style.display = 'inline-block'; - } - } - - if (t == 1) { - elm.style.backgroundImage = 'url("' + this.blankImg + '")'; - } - if (t == 2) { - elm.src = this.blankImg; - } - - if (elm.filters[f]) { - elm.filters[f].enabled = src ? true : false; - if (src) { - elm.filters[f].src = src; - } - } else if (src) { - elm.style.filter = 'progid:' + f + '(src="' + src + - '",sizingMethod="' + (t == 2 ? 'scale' : 'crop') + '")'; - } - - this.hook.enabled = h; -}; - - -IEPNGFix.process = function(elm, init) { - // Checks the onpropertychange event (on first 'init' run, a fake event) - // and calls the filter-applying-functions. - - if ( - !/MSIE (5\.5|6)/.test(navigator.userAgent) || - typeof elm.filters == 'unknown' - ) { - return; - } - if (!this.data[elm.uniqueID]) { - this.data[elm.uniqueID] = { - className: '' - }; - } - var data = this.data[elm.uniqueID], - evt = init ? { propertyName: 'src,backgroundImage' } : event, - isSrc = /src/.test(evt.propertyName), - isBg = /backgroundImage/.test(evt.propertyName), - isPos = /width|height|background(Pos|Rep)/.test(evt.propertyName), - isClass = !init && ((elm.className != data.className) && - (elm.className || data.className)); - if (!(isSrc || isBg || isPos || isClass)) { - return; - } - data.className = elm.className; - var blank = this.blankImg.match(/([^\/]+)$/)[1], - eS = elm.style, - eCS = elm.currentStyle; - - // Required for Whatever:hover - erase set BG if className changes. - if ( - isClass && (eS.backgroundImage.indexOf('url(') == -1 || - eS.backgroundImage.indexOf(blank) > -1) - ) { - return setTimeout(function() { - eS.backgroundImage = ''; - }, 0); - } - - // Foregrounds. - if (isSrc && elm.src && { IMG: 1, INPUT: 1 }[elm.nodeName]) { - if ((/\.png/i).test(elm.src)) { - if (!elm.oSrc) { - // MM rollover compat - elm.oSrc = elm.src; - } - this.fix(elm, elm.src, 2); - } else if (elm.src.indexOf(blank) == -1) { - this.fix(elm, ''); - } - } - - // Backgrounds. - var bgSrc = eCS.backgroundImage || eS.backgroundImage; - if ((bgSrc + elm.src).indexOf(blank) == -1) { - var bgPNG = bgSrc.match(/url[("']+(.*\.png[^\)"']*)[\)"']/i); - if (bgPNG) { - if (this.tileBG && !{ IMG: 1, INPUT: 1 }[elm.nodeName]) { - this.tileBG(elm, bgPNG[1]); - this.fix(elm, '', 1); - } else { - if (data.tiles && data.tiles.src) { - this.tileBG(elm, ''); - } - this.fix(elm, bgPNG[1], 1); - this.childFix(elm); - } - } else { - if (data.tiles && data.tiles.src) { - this.tileBG(elm, ''); - } - this.fix(elm, ''); - } - } else if ((isPos || isClass) && data.tiles && data.tiles.src) { - this.tileBG(elm, data.tiles.src); - } - - if (init) { - this.hook.enabled = 1; - elm.attachEvent('onpropertychange', this.hook); - } -}; - - -IEPNGFix.childFix = function(elm) { - // "hasLayout" fix for unclickable children inside PNG backgrounds. - var tags = [ - 'a', - 'input', - 'select', - 'textarea', - 'button', - 'iframe', - 'object' - ], - t = tags.length, - tFix = []; - while (t--) { - var pFix = elm.all.tags(tags[t]), - e = pFix.length; - while (e--) { - tFix.push(pFix[e]); - } - } - t = tFix.length; - if (t && (/relative|absolute/i).test(elm.currentStyle.position)) { - alert('IEPNGFix: Unclickable children of element:' + - '\n\n<' + elm.nodeName + (elm.id && ' id=' + elm.id) + '>'); - } - while (t--) { - if (!(/relative|absolute/i).test(tFix[t].currentStyle.position)) { - tFix[t].style.position = 'relative'; - } - } -}; - - -IEPNGFix.hook = function() { - if (IEPNGFix.hook.enabled) { - IEPNGFix.process(element, 0); - } -}; - - -IEPNGFix.process(element, 1); - -</script> -</public:component> diff --git a/forum/skins/default/media/iepngfix/.svn/text-base/iepngfix_tilebg.js.svn-base b/forum/skins/default/media/iepngfix/.svn/text-base/iepngfix_tilebg.js.svn-base deleted file mode 100644 index 6a1ff4955bf3eec68eb312fccc97d4a8cc8d4e1e..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/iepngfix/.svn/text-base/iepngfix_tilebg.js.svn-base +++ /dev/null @@ -1,173 +0,0 @@ -// IE5.5+ PNG Alpha Fix v2.0 Alpha: Background Tiling Support -// (c) 2008-2009 Angus Turnbull http://www.twinhelix.com - -// This is licensed under the GNU LGPL, version 2.1 or later. -// For details, see: http://creativecommons.org/licenses/LGPL/2.1/ - -var IEPNGFix = window.IEPNGFix || {}; - -IEPNGFix.tileBG = function(elm, pngSrc, ready) { - // Params: A reference to a DOM element, the PNG src file pathname, and a - // hidden "ready-to-run" passed when called back after image preloading. - - var data = this.data[elm.uniqueID], - elmW = Math.max(elm.clientWidth, elm.scrollWidth), - elmH = Math.max(elm.clientHeight, elm.scrollHeight), - bgX = elm.currentStyle.backgroundPositionX, - bgY = elm.currentStyle.backgroundPositionY, - bgR = elm.currentStyle.backgroundRepeat; - - // Cache of DIVs created per element, and image preloader/data. - if (!data.tiles) { - data.tiles = { - elm: elm, - src: '', - cache: [], - img: new Image(), - old: {} - }; - } - var tiles = data.tiles, - pngW = tiles.img.width, - pngH = tiles.img.height; - - if (pngSrc) { - if (!ready && pngSrc != tiles.src) { - // New image? Preload it with a callback to detect dimensions. - tiles.img.onload = function() { - this.onload = null; - IEPNGFix.tileBG(elm, pngSrc, 1); - }; - return tiles.img.src = pngSrc; - } - } else { - // No image? - if (tiles.src) ready = 1; - pngW = pngH = 0; - } - tiles.src = pngSrc; - - if (!ready && elmW == tiles.old.w && elmH == tiles.old.h && - bgX == tiles.old.x && bgY == tiles.old.y && bgR == tiles.old.r) { - return; - } - - // Convert English and percentage positions to pixels. - var pos = { - top: '0%', - left: '0%', - center: '50%', - bottom: '100%', - right: '100%' - }, - x, - y, - pc; - x = pos[bgX] || bgX; - y = pos[bgY] || bgY; - if (pc = x.match(/(\d+)%/)) { - x = Math.round((elmW - pngW) * (parseInt(pc[1]) / 100)); - } - if (pc = y.match(/(\d+)%/)) { - y = Math.round((elmH - pngH) * (parseInt(pc[1]) / 100)); - } - x = parseInt(x); - y = parseInt(y); - - // Handle backgroundRepeat. - var repeatX = { 'repeat': 1, 'repeat-x': 1 }[bgR], - repeatY = { 'repeat': 1, 'repeat-y': 1 }[bgR]; - if (repeatX) { - x %= pngW; - if (x > 0) x -= pngW; - } - if (repeatY) { - y %= pngH; - if (y > 0) y -= pngH; - } - - // Go! - this.hook.enabled = 0; - if (!({ relative: 1, absolute: 1 }[elm.currentStyle.position])) { - elm.style.position = 'relative'; - } - var count = 0, - xPos, - maxX = repeatX ? elmW : x + 0.1, - yPos, - maxY = repeatY ? elmH : y + 0.1, - d, - s, - isNew; - if (pngW && pngH) { - for (xPos = x; xPos < maxX; xPos += pngW) { - for (yPos = y; yPos < maxY; yPos += pngH) { - isNew = 0; - if (!tiles.cache[count]) { - tiles.cache[count] = document.createElement('div'); - isNew = 1; - } - var clipR = Math.max(0, xPos + pngW > elmW ? elmW - xPos : pngW), - clipB = Math.max(0, yPos + pngH > elmH ? elmH - yPos : pngH); - d = tiles.cache[count]; - s = d.style; - s.behavior = 'none'; - s.left = (xPos - parseInt(elm.currentStyle.paddingLeft)) + 'px'; - s.top = yPos + 'px'; - s.width = clipR + 'px'; - s.height = clipB + 'px'; - s.clip = 'rect(' + - (yPos < 0 ? 0 - yPos : 0) + 'px,' + - clipR + 'px,' + - clipB + 'px,' + - (xPos < 0 ? 0 - xPos : 0) + 'px)'; - s.display = 'block'; - if (isNew) { - s.position = 'absolute'; - s.zIndex = -999; - if (elm.firstChild) { - elm.insertBefore(d, elm.firstChild); - } else { - elm.appendChild(d); - } - } - this.fix(d, pngSrc, 0); - count++; - } - } - } - while (count < tiles.cache.length) { - this.fix(tiles.cache[count], '', 0); - tiles.cache[count++].style.display = 'none'; - } - - this.hook.enabled = 1; - - // Cache so updates are infrequent. - tiles.old = { - w: elmW, - h: elmH, - x: bgX, - y: bgY, - r: bgR - }; -}; - - -IEPNGFix.update = function() { - // Update all PNG backgrounds. - for (var i in IEPNGFix.data) { - var t = IEPNGFix.data[i].tiles; - if (t && t.elm && t.src) { - IEPNGFix.tileBG(t.elm, t.src); - } - } -}; -IEPNGFix.update.timer = 0; - -if (window.attachEvent && !window.opera) { - window.attachEvent('onresize', function() { - clearTimeout(IEPNGFix.update.timer); - IEPNGFix.update.timer = setTimeout(IEPNGFix.update, 100); - }); -} diff --git a/forum/skins/default/media/images/.svn/all-wcprops b/forum/skins/default/media/images/.svn/all-wcprops deleted file mode 100644 index a7aea26c24f60a94e8f055b12838fc0a57f8df2f..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/all-wcprops +++ /dev/null @@ -1,323 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images -END -expander-arrow-hide.gif -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/expander-arrow-hide.gif -END -djangomade124x25_grey.gif -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/djangomade124x25_grey.gif -END -convert-to-question-hover.png -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/1092/osqa/trunk/forum/skins/default/media/images/convert-to-question-hover.png -END -nophoto.png -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/nophoto.png -END -convert-off.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/744/osqa/trunk/forum/skins/default/media/images/convert-off.png -END -bullet_green.gif -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/bullet_green.gif -END -dot-g.gif -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/dot-g.gif -END -close-small-hover.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/close-small-hover.png -END -indicator.gif -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/indicator.gif -END -vote-accepted-on.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-accepted-on.png -END -openid.gif -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid.gif -END -medala_on.gif -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/medala_on.gif -END -vote-arrow-up-on.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-up-on.png -END -comment-delete.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-delete.png -END -wiki.png -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/329/osqa/trunk/forum/skins/default/media/images/wiki.png -END -blue-up-arrow-h18px.png -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/blue-up-arrow-h18px.png -END -quest-bg.gif -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/quest-bg.gif -END -new.gif -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/new.gif -END -close-small.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/close-small.png -END -convert-to-question-off.png -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/!svn/ver/1092/osqa/trunk/forum/skins/default/media/images/convert-to-question-off.png -END -webfaction.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/225/osqa/trunk/forum/skins/default/media/images/webfaction.png -END -gray-up-arrow-h18px.png -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/gray-up-arrow-h18px.png -END -user-sprite.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/285/osqa/trunk/forum/skins/default/media/images/user-sprite.png -END -vote-accepted.png -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-accepted.png -END -comment-like.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-like.png -END -cc-wiki.png -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/cc-wiki.png -END -vote-arrow-up.png -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-up.png -END -close-small-dark.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/close-small-dark.png -END -expander-arrow-show.gif -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/expander-arrow-show.gif -END -comment-like-on.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-like-on.png -END -grippie.png -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/grippie.png -END -feed-icon-small.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/feed-icon-small.png -END -dash.gif -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/dash.gif -END -logo.png -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo.png -END -box-arrow.gif -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/box-arrow.gif -END -convert-hover.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/744/osqa/trunk/forum/skins/default/media/images/convert-hover.png -END -vote-favorite-off.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-favorite-off.png -END -by-sa-88x31.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/735/osqa/trunk/forum/skins/default/media/images/by-sa-88x31.png -END -medala.gif -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/medala.gif -END -vote-favorite-on.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-favorite-on.png -END -favicon.gif -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/favicon.gif -END -comment-edit-hover.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-edit-hover.png -END -vote-arrow-down.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-down.png -END -favicon.ico -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/favicon.ico -END -cc-88x31.png -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/cc-88x31.png -END -dot-list.gif -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/dot-list.gif -END -logo.gif -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo.gif -END -logo1.png -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo1.png -END -logo2.png -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo2.png -END -comment-delete-hover.png -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-delete-hover.png -END -vote-arrow-down-on.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-down-on.png -END -edit.png -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/edit.png -END -comment-edit.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-edit.png -END diff --git a/forum/skins/default/media/images/.svn/entries b/forum/skins/default/media/images/.svn/entries deleted file mode 100644 index 3f6e5fd4423fc73e81abb7a8ae5c06a30c1e864b..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/entries +++ /dev/null @@ -1,1836 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/images -http://svn.osqa.net/svnroot - - - -2011-07-07T11:23:40.081495Z -1110 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -favicon.ico -file - - - - -2012-06-22T20:34:39.466038Z -6418fc7f5d83622b50c4355a6c101003 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1150 - -logo1.png -file - - - - -2012-06-22T20:34:39.466038Z -5468d791be63bee697695f9007ae403f -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2752 - -webfaction.png -file - - - - -2012-06-22T20:34:39.494024Z -a4123ddbd28774cfefe2e0adbc1a2671 -2010-05-11T20:26:36.854633Z -225 -rick -has-props - - - - - - - - - - - - - - - - - - - - -2348 - -logo2.png -file - - - - -2012-06-22T20:34:39.470036Z -9147b2875f4180454807c0cae6081a23 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2124 - -comment-like.png -file - - - - -2012-06-22T20:34:39.498022Z -23ed59f406c9985dfc90935817e6cbb4 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1530 - -expander-arrow-hide.gif -file - - - - -2012-06-22T20:34:39.478032Z -925277fd59eecd194cae2578c1126928 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -126 - -djangomade124x25_grey.gif -file - - - - -2012-06-22T20:34:39.478032Z -66f4812f5935112c18a307a828dc7a46 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2035 - -convert-to-question-hover.png -file - - - - -2012-06-22T20:34:39.474034Z -8b0dbfa2b663d95647c895faab583150 -2011-07-02T14:04:43.918209Z -1092 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -780 - -nophoto.png -file - - - - -2012-06-22T20:34:39.474034Z -7d4b493f847e9650fcaaac48ca06244a -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -696 - -convert-off.png -file - - - - -2012-06-22T20:34:39.478032Z -72707acdadb7334fbc2f7b2402f775fa -2011-02-04T18:37:34.151192Z -744 -claycarpenter -has-props - - - - - - - - - - - - - - - - - - - - -1455 - -close-small-dark.png -file - - - - -2012-06-22T20:34:39.502020Z -de1c0dd143d3da38bd911af457dcb4f8 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -226 - -dot-g.gif -file - - - - -2012-06-22T20:34:39.482030Z -ba50204f6be92464ec14643090936652 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -61 - -close-small-hover.png -file - - - - -2012-06-22T20:34:39.482030Z -84470b7d49d16fba386035c18c10884f -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -337 - -indicator.gif -file - - - - -2012-06-22T20:34:39.482030Z -faa74e8c61fc64d5edb11613c7eead2c -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2545 - -viewbox -dir - -dash.gif -file - - - - -2012-06-22T20:34:39.442050Z -22565c33d801b94c522e266b3d4d4e50 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -44 - -logo.png -file - - - - -2012-06-22T20:34:39.442050Z -609ff471064af275f03a3a343fb71139 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2081 - -medala_on.gif -file - - - - -2012-06-22T20:34:39.486028Z -b0d59c5e8cf6fa74b6e4ec2a1cbd444d -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -957 - -medala.gif -file - - - - -2012-06-22T20:34:39.446048Z -9f53f22e52b274e5b14e535ad250e28e -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -801 - -vote-favorite-on.png -file - - - - -2012-06-22T20:34:39.446048Z -5e6414e2cb03fccbe3d6bba5ded4da85 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1023 - -comment-edit-hover.png -file - - - - -2012-06-22T20:34:39.454044Z -051a314a9ac56a0453f535db4678d472 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -448 - -blue-up-arrow-h18px.png -file - - - - -2012-06-22T20:34:39.490026Z -b8316e5adb6922429da1a77ea8d4216c -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -593 - -new.gif -file - - - - -2012-06-22T20:34:39.490026Z -572f793561e026ac635df68a8c2a1f0d -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -635 - -close-small.png -file - - - - -2012-06-22T20:34:39.494024Z -dfc06fe59d10b1f43ed47ac74b7eb3e8 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -293 - -convert-to-question-off.png -file - - - - -2012-06-22T20:34:39.494024Z -aca5b4cf6d8e19df8f6eeac7de25532e -2011-07-02T14:04:43.918209Z -1092 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -759 - -cc-88x31.png -file - - - - -2012-06-22T20:34:39.466038Z -80fb4a8b9dd7c600afda07b3d3c5efa4 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -5460 - -dot-list.gif -file - - - - -2012-06-22T20:34:39.466038Z -8cd0df6a63fc7c5ae444f3d3bc47bb49 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -56 - -logo.gif -file - - - - -2012-06-22T20:34:39.470036Z -0743b026c7cbeefd4dce0a66458bea46 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2114 - -gray-up-arrow-h18px.png -file - - - - -2012-06-22T20:34:39.494024Z -a30c3faba43bd77b3b97360f3c16e456 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -383 - -user-sprite.png -file - - - - -2012-06-22T20:34:39.498022Z -30c7e76895beb7dffae5c9dedc9109eb -2010-05-15T00:00:50.645299Z -285 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -4982 - -comment-delete-hover.png -file - - - - -2012-06-22T20:34:39.470036Z -41ccee91e68691f97beabab7bcf3e031 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1113 - -vote-accepted.png -file - - - - -2012-06-22T20:34:39.498022Z -5a150e1e25f4130cd0b28423ae7e7b91 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1058 - -vote-arrow-down-on.png -file - - - - -2012-06-22T20:34:39.470036Z -dba1d2cc7115406e95e9a66eec578793 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -905 - -edit.png -file - - - - -2012-06-22T20:34:39.474034Z -293ef7413a7e6b723160bceea27285dc -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -758 - -comment-edit.png -file - - - - -2012-06-22T20:34:39.474034Z -c501931dc00589335d65e98d7ddbfeff -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -433 - -cc-wiki.png -file - - - - -2012-06-22T20:34:39.498022Z -9a26044fc6d4c26d6c0d9e441f26e71e -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2333 - -vote-arrow-up.png -file - - - - -2012-06-22T20:34:39.502020Z -475ca9d114ea7630e3ec0c47c2be5b56 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -843 - -bullet_green.gif -file - - - - -2012-06-22T20:34:39.478032Z -7cf486fae2493f3bb70ae7c12c1050f6 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -64 - -openid -dir - -expander-arrow-show.gif -file - - - - -2012-06-22T20:34:39.434054Z -82a298435518c540e71146d8ea239d09 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -135 - -vote-accepted-on.png -file - - - - -2012-06-22T20:34:39.482030Z -5f108bfaf403cbebf524d30a1ae30d7b -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1124 - -comment-like-on.png -file - - - - -2012-06-22T20:34:39.434054Z -24b8eced4f2c72171c7ab0ce5b842b86 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1523 - -grippie.png -file - - - - -2012-06-22T20:34:39.434054Z -dd2fb703003273603bc4fbefa9816bb5 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -162 - -feed-icon-small.png -file - - - - -2012-06-22T20:34:39.434054Z -2168a573d0d45bd2f9a89b8236453d61 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -689 - -openid.gif -file - - - - -2012-06-22T20:34:39.486028Z -86ad418dc465163d828bfdfca1527afa -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -910 - -box-arrow.gif -file - - - - -2012-06-22T20:34:39.442050Z -c9fa82ab7aef63c7209d5a54cb592be6 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -69 - -convert-hover.png -file - - - - -2012-06-22T20:34:39.442050Z -04d7b3e03fd25b00eec0fa24c43d3da2 -2011-02-04T18:37:34.151192Z -744 -claycarpenter -has-props - - - - - - - - - - - - - - - - - - - - -1567 - -vote-arrow-up-on.png -file - - - - -2012-06-22T20:34:39.486028Z -1eee7baca2cb8684294c81210609abdb -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -906 - -vote-favorite-off.png -file - - - - -2012-06-22T20:34:39.446048Z -cb1bd6f79ebf03c1f2a739db399c1f07 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -930 - -comment-delete.png -file - - - - -2012-06-22T20:34:39.486028Z -c41b4358029e2bac9113313a478b3cb6 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1092 - -wiki.png -file - - - - -2012-06-22T20:34:39.490026Z -901a9475f3e39c3d16974d591c524baa -2010-05-25T21:28:23.158598Z -329 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -5349 - -by-sa-88x31.png -file - - - - -2012-06-22T20:34:39.446048Z -15d99bea74da9b7ec6a0ca3bad80903c -2011-02-02T23:34:44.906228Z -735 -claycarpenter -has-props - - - - - - - - - - - - - - - - - - - - -5083 - -favicon.gif -file - - - - -2012-06-22T20:34:39.446048Z -aad7ff80b0b312cae2e0c137dfab3cef -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -3918 - -quest-bg.gif -file - - - - -2012-06-22T20:34:39.490026Z -cf7f3d0d3c80811c8fd7421ec9db7427 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -294 - -vote-arrow-down.png -file - - - - -2012-06-22T20:34:39.454044Z -3c3b8e3620747b2c465841284fec60d4 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -876 - diff --git a/forum/skins/default/media/images/.svn/prop-base/blue-up-arrow-h18px.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/blue-up-arrow-h18px.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/blue-up-arrow-h18px.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/box-arrow.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/box-arrow.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/box-arrow.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/bullet_green.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/bullet_green.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/bullet_green.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/by-sa-88x31.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/by-sa-88x31.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/by-sa-88x31.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/cc-88x31.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/cc-88x31.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/cc-88x31.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/cc-wiki.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/cc-wiki.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/cc-wiki.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/close-small-dark.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/close-small-dark.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/close-small-dark.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/close-small-hover.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/close-small-hover.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/close-small-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/close-small.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/close-small.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/close-small.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/comment-delete-hover.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/comment-delete-hover.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/comment-delete-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/comment-delete.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/comment-delete.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/comment-delete.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/comment-edit-hover.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/comment-edit-hover.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/comment-edit-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/comment-edit.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/comment-edit.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/comment-edit.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/comment-like-on.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/comment-like-on.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/comment-like-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/comment-like.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/comment-like.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/comment-like.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/convert-hover.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/convert-hover.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/convert-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/convert-off.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/convert-off.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/convert-off.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/convert-to-question-hover.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/convert-to-question-hover.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/convert-to-question-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/convert-to-question-off.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/convert-to-question-off.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/convert-to-question-off.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/dash.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/dash.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/dash.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/djangomade124x25_grey.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/djangomade124x25_grey.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/djangomade124x25_grey.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/dot-g.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/dot-g.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/dot-g.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/dot-list.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/dot-list.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/dot-list.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/edit.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/edit.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/edit.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/expander-arrow-hide.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/expander-arrow-hide.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/expander-arrow-hide.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/expander-arrow-show.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/expander-arrow-show.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/expander-arrow-show.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/favicon.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/favicon.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/favicon.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/favicon.ico.svn-base b/forum/skins/default/media/images/.svn/prop-base/favicon.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/favicon.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/feed-icon-small.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/feed-icon-small.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/feed-icon-small.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/gray-up-arrow-h18px.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/gray-up-arrow-h18px.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/gray-up-arrow-h18px.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/grippie.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/grippie.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/grippie.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/indicator.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/indicator.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/indicator.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/logo.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/logo.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/logo.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/logo.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/logo.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/logo.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/logo1.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/logo1.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/logo1.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/logo2.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/logo2.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/logo2.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/medala.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/medala.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/medala.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/medala_on.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/medala_on.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/medala_on.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/new.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/new.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/new.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/nophoto.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/nophoto.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/nophoto.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/openid.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/openid.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/openid.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/quest-bg.gif.svn-base b/forum/skins/default/media/images/.svn/prop-base/quest-bg.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/quest-bg.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/user-sprite.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/user-sprite.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/user-sprite.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-accepted-on.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-accepted-on.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-accepted-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-accepted.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-accepted.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-accepted.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-down-on.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-arrow-down-on.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-down-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-down.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-arrow-down.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-down.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-up-on.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-arrow-up-on.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-up-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-up.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-arrow-up.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-arrow-up.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-favorite-off.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-favorite-off.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-favorite-off.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/vote-favorite-on.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/vote-favorite-on.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/vote-favorite-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/webfaction.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/webfaction.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/webfaction.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/prop-base/wiki.png.svn-base b/forum/skins/default/media/images/.svn/prop-base/wiki.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/.svn/prop-base/wiki.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/.svn/text-base/blue-up-arrow-h18px.png.svn-base b/forum/skins/default/media/images/.svn/text-base/blue-up-arrow-h18px.png.svn-base deleted file mode 100644 index e1f29e86334ce72d2d28989a133571d7bf53a94e..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/blue-up-arrow-h18px.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/box-arrow.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/box-arrow.gif.svn-base deleted file mode 100644 index 89dcf5b3dd40fac0e6afb0b1a7ff899a059f923f..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/box-arrow.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/bullet_green.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/bullet_green.gif.svn-base deleted file mode 100644 index fa530910f9dc11fadaa2314f72bd98f29df39daf..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/bullet_green.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/by-sa-88x31.png.svn-base b/forum/skins/default/media/images/.svn/text-base/by-sa-88x31.png.svn-base deleted file mode 100644 index f0a944e0b89642ae282047846e55393007b04686..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/by-sa-88x31.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/cc-88x31.png.svn-base b/forum/skins/default/media/images/.svn/text-base/cc-88x31.png.svn-base deleted file mode 100644 index 0f2a0f10722d3fabffe8af5d5eed09866e25909a..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/cc-88x31.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/cc-wiki.png.svn-base b/forum/skins/default/media/images/.svn/text-base/cc-wiki.png.svn-base deleted file mode 100644 index 3e6805383c0ee73a835ef260c888b847a289bb03..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/cc-wiki.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/close-small-dark.png.svn-base b/forum/skins/default/media/images/.svn/text-base/close-small-dark.png.svn-base deleted file mode 100644 index 280c1fc74e47c0e7d1c68d6f356eb22eeba7a2de..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/close-small-dark.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/close-small-hover.png.svn-base b/forum/skins/default/media/images/.svn/text-base/close-small-hover.png.svn-base deleted file mode 100644 index 7899aec7213b837143a2e975faa90a2abd456521..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/close-small-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/close-small.png.svn-base b/forum/skins/default/media/images/.svn/text-base/close-small.png.svn-base deleted file mode 100644 index 5a99d31f17b26a07d60acd0da4a1cb5b93929bba..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/close-small.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/comment-delete-hover.png.svn-base b/forum/skins/default/media/images/.svn/text-base/comment-delete-hover.png.svn-base deleted file mode 100644 index e8c69f4489359d8a958cd13ad325efa5ddd4e6b3..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/comment-delete-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/comment-delete.png.svn-base b/forum/skins/default/media/images/.svn/text-base/comment-delete.png.svn-base deleted file mode 100644 index e1c2d8afaaf6feb74da3217157b5b56f577db839..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/comment-delete.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/comment-edit-hover.png.svn-base b/forum/skins/default/media/images/.svn/text-base/comment-edit-hover.png.svn-base deleted file mode 100644 index 8291c565240496111de86671b84aed84ed5925d1..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/comment-edit-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/comment-edit.png.svn-base b/forum/skins/default/media/images/.svn/text-base/comment-edit.png.svn-base deleted file mode 100644 index bad5c47c57ac45f024889af405c365d90ecf71e2..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/comment-edit.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/comment-like-on.png.svn-base b/forum/skins/default/media/images/.svn/text-base/comment-like-on.png.svn-base deleted file mode 100644 index c2e497e412d96e76112b22bd18627e986688e013..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/comment-like-on.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/comment-like.png.svn-base b/forum/skins/default/media/images/.svn/text-base/comment-like.png.svn-base deleted file mode 100644 index 87a19b9fdd401f4a48eff72e1bc50395ed9396fd..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/comment-like.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/convert-hover.png.svn-base b/forum/skins/default/media/images/.svn/text-base/convert-hover.png.svn-base deleted file mode 100644 index 9e973efbeaa97f01f6db02b87b85d26dab92a828..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/convert-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/convert-off.png.svn-base b/forum/skins/default/media/images/.svn/text-base/convert-off.png.svn-base deleted file mode 100644 index a10dddd8dbbd80d9ab23cbf1972a32b5fffa6991..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/convert-off.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/convert-to-question-hover.png.svn-base b/forum/skins/default/media/images/.svn/text-base/convert-to-question-hover.png.svn-base deleted file mode 100644 index 52f6ee656a96bb9014ad13cd333aeed29e9be1f3..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/convert-to-question-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/convert-to-question-off.png.svn-base b/forum/skins/default/media/images/.svn/text-base/convert-to-question-off.png.svn-base deleted file mode 100644 index 846fa15b8a83c7e26cc613c721469268e0e3493d..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/convert-to-question-off.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/dash.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/dash.gif.svn-base deleted file mode 100644 index d1ddc507fe00bd654fce38ac8552793aa18c9966..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/dash.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/djangomade124x25_grey.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/djangomade124x25_grey.gif.svn-base deleted file mode 100644 index d34bb311615b1378a672a828c7a7916490cd882b..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/djangomade124x25_grey.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/dot-g.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/dot-g.gif.svn-base deleted file mode 100644 index 5d6bb28e56377b0eeb80899222aa3290ec2a3a95..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/dot-g.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/dot-list.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/dot-list.gif.svn-base deleted file mode 100644 index f6a6b86531d1f0250fc7b0eea0cd874c4e74c8ac..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/dot-list.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/edit.png.svn-base b/forum/skins/default/media/images/.svn/text-base/edit.png.svn-base deleted file mode 100644 index dcb09be0640f075b1cdd480c6967b9cfd6c8719a..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/edit.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/expander-arrow-hide.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/expander-arrow-hide.gif.svn-base deleted file mode 100644 index feb6a6187c2742ea8e516244f139e7946ed757fb..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/expander-arrow-hide.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/expander-arrow-show.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/expander-arrow-show.gif.svn-base deleted file mode 100644 index 6825c56ee42f0184d66c0fe954d7fc4b6f05e850..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/expander-arrow-show.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/favicon.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/favicon.gif.svn-base deleted file mode 100644 index 910c26660ca2088729309bd9286403237c68f020..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/favicon.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/favicon.ico.svn-base b/forum/skins/default/media/images/.svn/text-base/favicon.ico.svn-base deleted file mode 100644 index 35c9e149fb8755e7c2ff33433a9022c146b20bde..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/favicon.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/feed-icon-small.png.svn-base b/forum/skins/default/media/images/.svn/text-base/feed-icon-small.png.svn-base deleted file mode 100644 index b3c949d2244f2c0c81d65e74719af2a1b56d06a3..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/feed-icon-small.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/gray-up-arrow-h18px.png.svn-base b/forum/skins/default/media/images/.svn/text-base/gray-up-arrow-h18px.png.svn-base deleted file mode 100644 index 78767445ec3e38fab840f8177c249e38379abb06..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/gray-up-arrow-h18px.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/grippie.png.svn-base b/forum/skins/default/media/images/.svn/text-base/grippie.png.svn-base deleted file mode 100644 index 6524d4167d2d6e3939cfcf3111ce520acd66bc21..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/grippie.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/indicator.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/indicator.gif.svn-base deleted file mode 100644 index 1c72ebb554be018511ae972c3f2361dff02dce02..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/indicator.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/logo.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/logo.gif.svn-base deleted file mode 100644 index ab690de2a1c9679f225d80560cf5e06f3ed3cab0..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/logo.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/logo.png.svn-base b/forum/skins/default/media/images/.svn/text-base/logo.png.svn-base deleted file mode 100644 index 6a250e35b34cbe9113e3a62d17eba05d05c83888..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/logo.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/logo1.png.svn-base b/forum/skins/default/media/images/.svn/text-base/logo1.png.svn-base deleted file mode 100644 index d79a627174b08ee90776540abad2e76f28909652..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/logo1.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/logo2.png.svn-base b/forum/skins/default/media/images/.svn/text-base/logo2.png.svn-base deleted file mode 100644 index bd3cccd9f47793f86864cd068621ab07198b5ff0..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/logo2.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/medala.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/medala.gif.svn-base deleted file mode 100644 index 93dd1a3960a9668a92ed55a81402592f296c9333..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/medala.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/medala_on.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/medala_on.gif.svn-base deleted file mode 100644 index a18f9e8562941254941a446efad3e6edcb651d9c..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/medala_on.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/new.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/new.gif.svn-base deleted file mode 100644 index 8a220b531225397b6a304918e4d96f6196ef40a8..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/new.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/nophoto.png.svn-base b/forum/skins/default/media/images/.svn/text-base/nophoto.png.svn-base deleted file mode 100644 index 2daf0ffd4333c90aafd71479510144bcdcb16c79..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/nophoto.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/openid.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/openid.gif.svn-base deleted file mode 100644 index 8540e12bcd8303b44a1f1676b59e9ff61713a2da..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/openid.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/quest-bg.gif.svn-base b/forum/skins/default/media/images/.svn/text-base/quest-bg.gif.svn-base deleted file mode 100644 index b754023882679555b5d31862f777e5f8b1877bcf..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/quest-bg.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/user-sprite.png.svn-base b/forum/skins/default/media/images/.svn/text-base/user-sprite.png.svn-base deleted file mode 100644 index f437351bb5b9cc2933900204e3b1a597141ffade..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/user-sprite.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-accepted-on.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-accepted-on.png.svn-base deleted file mode 100644 index 2026f3bcc50e2738bdb6c21f32ffb2a82d088e11..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-accepted-on.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-accepted.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-accepted.png.svn-base deleted file mode 100644 index ecd185515a82bf81ac99a67c755eae74505819fd..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-accepted.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-arrow-down-on.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-arrow-down-on.png.svn-base deleted file mode 100644 index 048dbb44dcf2aa3669386737e4e34503659cfa70..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-arrow-down-on.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-arrow-down.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-arrow-down.png.svn-base deleted file mode 100644 index e4fdec0ab033b417e1299890595fa6a1522b67f2..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-arrow-down.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-arrow-up-on.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-arrow-up-on.png.svn-base deleted file mode 100644 index 56ad0c2591434e732e2148420330878414dd25b5..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-arrow-up-on.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-arrow-up.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-arrow-up.png.svn-base deleted file mode 100644 index 6e9a51c7df2da30fd2e56359a93f4712077ee62d..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-arrow-up.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-favorite-off.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-favorite-off.png.svn-base deleted file mode 100644 index c1bef0745ea9acd1c405ac11e0d5555e8b12d7e3..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-favorite-off.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/vote-favorite-on.png.svn-base b/forum/skins/default/media/images/.svn/text-base/vote-favorite-on.png.svn-base deleted file mode 100644 index 1f9c14ab0813a1aec1f66b12c3eebe7232be3d8d..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/vote-favorite-on.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/webfaction.png.svn-base b/forum/skins/default/media/images/.svn/text-base/webfaction.png.svn-base deleted file mode 100644 index 7c19d6c2a4004919c3c6527b1d0daea3c27c4dd8..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/webfaction.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/.svn/text-base/wiki.png.svn-base b/forum/skins/default/media/images/.svn/text-base/wiki.png.svn-base deleted file mode 100644 index a6be55888ebb48fe73c198312b01854a64cf9dfa..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/.svn/text-base/wiki.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/all-wcprops b/forum/skins/default/media/images/openid/.svn/all-wcprops deleted file mode 100644 index 769a7739d0b97e557ec4c0bdbbdf8b037fd99024..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/all-wcprops +++ /dev/null @@ -1,161 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid -END -claimid.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/claimid.png -END -twitter.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/twitter.png -END -openid-inputicon.gif -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/openid-inputicon.gif -END -myopenid_big.png -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid/myopenid_big.png -END -blogger.ico -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/blogger.ico -END -myopenid.ico -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/myopenid.ico -END -flickr.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/flickr.png -END -aol.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid/aol.png -END -verisign.ico -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/verisign.ico -END -wordpress.ico -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/wordpress.ico -END -livejournal.ico -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/livejournal.ico -END -blogger.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/blogger.png -END -myopenid.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/myopenid.png -END -technorati.ico -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/technorati.ico -END -verisign.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/verisign.png -END -vidoop.ico -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/vidoop.ico -END -claimid.ico -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/claimid.ico -END -wordpress.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/wordpress.png -END -livejournal.png -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/livejournal.png -END -facebook.gif -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/facebook.gif -END -aol.gif -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid/aol.gif -END -google.gif -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/google.gif -END -openid.gif -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/openid.gif -END -flickr.ico -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/flickr.ico -END -technorati.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/technorati.png -END -yahoo.gif -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/yahoo.gif -END diff --git a/forum/skins/default/media/images/openid/.svn/entries b/forum/skins/default/media/images/openid/.svn/entries deleted file mode 100644 index 55cf69672ceb5a06128f32ea43ad1fe1eb136e06..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/entries +++ /dev/null @@ -1,912 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/images/openid -http://svn.osqa.net/svnroot - - - -2010-08-25T06:01:34.224595Z -570 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -myopenid.png -file - - - - -2012-06-22T20:34:39.298122Z -c992ad6983c629f35b580791dd81b2ac -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -686 - -technorati.ico -file - - - - -2012-06-22T20:34:39.314114Z -c3499b3481456154e8872b28eaeed26c -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2294 - -verisign.png -file - - - - -2012-06-22T20:34:39.314114Z -48423ae1b587a51fb30f04acf2272955 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -513 - -vidoop.ico -file - - - - -2012-06-22T20:34:39.314114Z -1a4ef65fda7ee5b18852bc0802e59452 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1406 - -claimid.ico -file - - - - -2012-06-22T20:34:39.314114Z -0ae741d639cd3d6a2862728e19e4e436 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -3638 - -wordpress.png -file - - - - -2012-06-22T20:34:39.314114Z -d65827fddec8e186e6384db1843ea939 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -268 - -livejournal.png -file - - - - -2012-06-22T20:34:39.322110Z -9e1c93fe01c591a25a767e5448ad11e1 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -471 - -facebook.gif -file - - - - -2012-06-22T20:34:39.322110Z -45995e641f4db62970d15b3ae750abe9 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2035 - -aol.gif -file - - - - -2012-06-22T20:34:39.270136Z -49375f1b8ab9eff7b53503f51bc2b347 -2010-08-25T06:01:34.224595Z -570 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2101 - -google.gif -file - - - - -2012-06-22T20:34:39.270136Z -2cf43f8db882aae7972aed088d9d73ef -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1888 - -openid.gif -file - - - - -2012-06-22T20:34:39.270136Z -9066047ddd4ec2ab119d0796280edbe3 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -740 - -flickr.ico -file - - - - -2012-06-22T20:34:39.282130Z -9bac7c8e40a7b987102711a8e6c2bbb5 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1150 - -technorati.png -file - - - - -2012-06-22T20:34:39.282130Z -a53eb7e06b87c98c59ffa9d59da427c0 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -422 - -yahoo.gif -file - - - - -2012-06-22T20:34:39.278132Z -3e6d6a54c79145e133fb40e7f15838a7 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1643 - -claimid.png -file - - - - -2012-06-22T20:34:39.282130Z -6954ad55d1daec083e3d7911f2540e2c -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -453 - -twitter.png -file - - - - -2012-06-22T20:34:39.282130Z -ef61fa3329e5d99eac1596b4b20eee40 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2198 - -openid-inputicon.gif -file - - - - -2012-06-22T20:34:39.286128Z -032a66df4adf284203e91af0bfcb6a73 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -237 - -myopenid_big.png -file - - - - -2012-06-22T20:34:39.282130Z -6f84b7929e74b4d575ea274108a8fc4f -2010-08-25T06:01:34.224595Z -570 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2106 - -blogger.ico -file - - - - -2012-06-22T20:34:39.286128Z -59a0c7b6e4848ccdabcea0636efda02b -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -3638 - -myopenid.ico -file - - - - -2012-06-22T20:34:39.294124Z -b22b02868086edabad91d026830da2eb -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2862 - -flickr.png -file - - - - -2012-06-22T20:34:39.286128Z -eb20e1a887b7e4520293a4072f556fa2 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -270 - -aol.png -file - - - - -2012-06-22T20:34:39.294124Z -81115d5a838c986a137f5502ba4af1b4 -2010-08-25T06:01:34.224595Z -570 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -583 - -verisign.ico -file - - - - -2012-06-22T20:34:39.294124Z -eb0aba8ded5e67a970c0520be8c5f593 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -4710 - -wordpress.ico -file - - - - -2012-06-22T20:34:39.298122Z -6cec5a9c106d45e458fc680f70df91b0 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1150 - -livejournal.ico -file - - - - -2012-06-22T20:34:39.298122Z -ce16cde3e74e64131992da97b266ee95 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -5222 - -blogger.png -file - - - - -2012-06-22T20:34:39.298122Z -ff1282365daba23105850f0ccc5d6a65 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -194 - diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/aol.gif.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/aol.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/aol.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/aol.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/aol.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/aol.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/blogger.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/blogger.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/blogger.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/blogger.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/blogger.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/blogger.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/claimid.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/claimid.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/claimid.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/claimid.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/claimid.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/claimid.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/facebook.gif.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/facebook.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/facebook.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/flickr.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/flickr.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/flickr.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/flickr.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/flickr.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/flickr.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/google.gif.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/google.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/google.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/livejournal.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/livejournal.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/livejournal.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/livejournal.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/livejournal.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/livejournal.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/myopenid.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/myopenid.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/myopenid.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/myopenid.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/myopenid.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/myopenid.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/myopenid_big.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/myopenid_big.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/myopenid_big.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/openid-inputicon.gif.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/openid-inputicon.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/openid-inputicon.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/openid.gif.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/openid.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/openid.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/technorati.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/technorati.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/technorati.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/technorati.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/technorati.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/technorati.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/twitter.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/twitter.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/twitter.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/verisign.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/verisign.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/verisign.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/verisign.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/verisign.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/verisign.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/vidoop.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/vidoop.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/vidoop.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/wordpress.ico.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/wordpress.ico.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/wordpress.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/wordpress.png.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/wordpress.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/wordpress.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/prop-base/yahoo.gif.svn-base b/forum/skins/default/media/images/openid/.svn/prop-base/yahoo.gif.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/openid/.svn/prop-base/yahoo.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/openid/.svn/text-base/aol.gif.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/aol.gif.svn-base deleted file mode 100644 index 92373d5fb7f964fcf45245b4aa03f85eb25d6297..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/aol.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/aol.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/aol.png.svn-base deleted file mode 100644 index e5a51a8fd68d452ecab0e89c45fe404589bd9208..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/aol.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/blogger.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/blogger.ico.svn-base deleted file mode 100644 index 1b9730b01c3e60a396afa4193986b7ce800784a7..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/blogger.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/blogger.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/blogger.png.svn-base deleted file mode 100644 index 3c4681839f80b1092fe9d8d745a24dee1676a293..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/blogger.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/claimid.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/claimid.ico.svn-base deleted file mode 100644 index 2b80f49183c7c36fee4c4f9f0a82d4fd9950fcd5..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/claimid.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/claimid.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/claimid.png.svn-base deleted file mode 100644 index 441c0ed19504a98bcd4e50611eefd46e55043701..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/claimid.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/facebook.gif.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/facebook.gif.svn-base deleted file mode 100644 index 9a32529ba77668ac4a96d8175d05c27fd8caa7a4..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/facebook.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/flickr.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/flickr.ico.svn-base deleted file mode 100644 index 11f6e07f68446a858eb793ece7bd44dad957a8e3..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/flickr.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/flickr.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/flickr.png.svn-base deleted file mode 100644 index 6c443e1e536a6be39a599a1b9f280c17bd6e9f92..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/flickr.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/google.gif.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/google.gif.svn-base deleted file mode 100644 index be451e56d4b1236c6e231d994ec64fa6625193e4..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/google.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/livejournal.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/livejournal.ico.svn-base deleted file mode 100644 index f3d21ec5e8f629b77c77615982cef929802fbde4..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/livejournal.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/livejournal.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/livejournal.png.svn-base deleted file mode 100644 index 9f2f6dd8d5de00d094b0a153a53f0b5c6dd0dfce..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/livejournal.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/myopenid.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/myopenid.ico.svn-base deleted file mode 100644 index ceb06e6a3f0d88fb97cf10475a3062fb0edab33e..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/myopenid.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/myopenid.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/myopenid.png.svn-base deleted file mode 100644 index e5df78d03b39a7461a3a79a91901c25f154b9eba..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/myopenid.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/myopenid_big.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/myopenid_big.png.svn-base deleted file mode 100644 index 8c357cbe76eb8c10840070d8dfbe8e2fc24b8890..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/myopenid_big.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/openid-inputicon.gif.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/openid-inputicon.gif.svn-base deleted file mode 100644 index cde836c893f64bcfec04b9c817e3371ff122fe19..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/openid-inputicon.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/openid.gif.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/openid.gif.svn-base deleted file mode 100644 index c718b0e6f37012db6c9c10d9d21c4dea0d0c01bc..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/openid.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/technorati.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/technorati.ico.svn-base deleted file mode 100644 index fa1083c116527de7cdbf5897976aae8807fce878..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/technorati.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/technorati.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/technorati.png.svn-base deleted file mode 100644 index 7216641485277b5a26152a4b7b424913c61aa9c5..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/technorati.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/twitter.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/twitter.png.svn-base deleted file mode 100644 index 6178f9ccffe9eccc49f4627323c77fe20ff33fed..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/twitter.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/verisign.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/verisign.ico.svn-base deleted file mode 100644 index 3953af931987b0e66c122b338dc352502564eafd..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/verisign.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/verisign.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/verisign.png.svn-base deleted file mode 100644 index bc5c5f3e7fba6d7a1d5de5f52c311b5db174eebf..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/verisign.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/vidoop.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/vidoop.ico.svn-base deleted file mode 100644 index bbd9a0d50f83cba859fd46512873155397d548e1..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/vidoop.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/wordpress.ico.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/wordpress.ico.svn-base deleted file mode 100644 index 31b7d2c2b77c039342854190a90a8d8436992b47..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/wordpress.ico.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/wordpress.png.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/wordpress.png.svn-base deleted file mode 100644 index f2617056ba02bc3a9623b6f3df2cc1d480df8e01..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/wordpress.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/openid/.svn/text-base/yahoo.gif.svn-base b/forum/skins/default/media/images/openid/.svn/text-base/yahoo.gif.svn-base deleted file mode 100644 index 1ebaa7f46b541d1c57953b8042fa8759a0567d48..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/openid/.svn/text-base/yahoo.gif.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/viewbox/.svn/all-wcprops b/forum/skins/default/media/images/viewbox/.svn/all-wcprops deleted file mode 100644 index 720872070b15b5c0010d03bf9e68ee034dab208d..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/viewbox/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox -END -viewbox_close.png -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/viewbox_close.png -END -ViewBox_bg.png -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/ViewBox_bg.png -END -ViewBox_prev.png -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/ViewBox_prev.png -END -ViewBox_next.png -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/ViewBox_next.png -END diff --git a/forum/skins/default/media/images/viewbox/.svn/entries b/forum/skins/default/media/images/viewbox/.svn/entries deleted file mode 100644 index ac2fbe6513b3bba8ed7c10bb4f5a4dc7d22c8a04..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/viewbox/.svn/entries +++ /dev/null @@ -1,164 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/images/viewbox -http://svn.osqa.net/svnroot - - - -2011-07-07T11:23:40.081495Z -1110 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -ViewBox_next.png -file - - - - -2012-06-22T20:34:39.362090Z -73fae305da96577624e5aaad5635cdbb -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -458 - -viewbox_close.png -file - - - - -2012-06-22T20:34:39.362090Z -dff5a73e43116722d4bb498e172babb2 -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3669 - -ViewBox_bg.png -file - - - - -2012-06-22T20:34:39.362090Z -258d71313fd5d9ff7c0926fa991ee1cc -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2808 - -ViewBox_prev.png -file - - - - -2012-06-22T20:34:39.362090Z -5302956881e54899269f66f6e5276d52 -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -418 - diff --git a/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_bg.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_bg.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_bg.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_next.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_next.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_next.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_prev.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_prev.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/viewbox/.svn/prop-base/ViewBox_prev.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/viewbox/.svn/prop-base/viewbox_close.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/prop-base/viewbox_close.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/images/viewbox/.svn/prop-base/viewbox_close.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_bg.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_bg.png.svn-base deleted file mode 100644 index 396ed6dc48d5154161642fb9c5a2e3521929becf..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_bg.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_next.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_next.png.svn-base deleted file mode 100644 index 30ec82a8e5115d2650584dca2de2e0c85b9b59e3..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_next.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_prev.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_prev.png.svn-base deleted file mode 100644 index b5f25ab7f973d86f933c679577bdb2e70fe8b7b5..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/viewbox/.svn/text-base/ViewBox_prev.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/images/viewbox/.svn/text-base/viewbox_close.png.svn-base b/forum/skins/default/media/images/viewbox/.svn/text-base/viewbox_close.png.svn-base deleted file mode 100644 index 6595cc825ae8a0317334ddd39d4acf870df22bb0..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/images/viewbox/.svn/text-base/viewbox_close.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/.svn/all-wcprops b/forum/skins/default/media/js/.svn/all-wcprops deleted file mode 100644 index eb18737a2bfb390d8538e8a834e47d0b6c0063c9..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/all-wcprops +++ /dev/null @@ -1,197 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins/default/media/js -END -jquery.caret.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1112/osqa/trunk/forum/skins/default/media/js/jquery.caret.js -END -osqa.ask.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/962/osqa/trunk/forum/skins/default/media/js/osqa.ask.js -END -jquery.form.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.form.js -END -ZeroClipboard.swf -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1023/osqa/trunk/forum/skins/default/media/js/ZeroClipboard.swf -END -jquery.flot.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.flot.js -END -viewbox_min.js -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1098/osqa/trunk/forum/skins/default/media/js/viewbox_min.js -END -ui.core.min.js -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.core.min.js -END -osqa.main.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins/default/media/js/osqa.main.js -END -effects.core.min.js -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/effects.core.min.js -END -osqa.admin.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/media/js/osqa.admin.js -END -excanvas.min.js -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/excanvas.min.js -END -jquery.openid.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/js/jquery.openid.js -END -viewbox.css -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/js/viewbox.css -END -jquery.flot.min.js -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.flot.min.js -END -osqa.main.min.js -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/osqa.main.min.js -END -osqa.question.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/625/osqa/trunk/forum/skins/default/media/js/osqa.question.js -END -se_hilite_src.js -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/se_hilite_src.js -END -jquery-1.2.6.js -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery-1.2.6.js -END -jquery.validate.pack.js -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.validate.pack.js -END -yuicompressor-2.4.2.jar -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/yuicompressor-2.4.2.jar -END -compress.bat -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/compress.bat -END -ui.datepicker.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.datepicker.js -END -flot-build.bat -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/flot-build.bat -END -youtube.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1181/osqa/trunk/forum/skins/default/media/js/youtube.js -END -html_sanitizer.js -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/media/js/html_sanitizer.js -END -jquery.i18n.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.i18n.js -END -ZeroClipboard.js -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1023/osqa/trunk/forum/skins/default/media/js/ZeroClipboard.js -END -jquery-1.2.6.min.js -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery-1.2.6.min.js -END -ui.core.js -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.core.js -END -se_hilite.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/se_hilite.js -END -jquery.ajaxfileupload.js -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.ajaxfileupload.js -END -ui.datepicker.min.js -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.datepicker.min.js -END diff --git a/forum/skins/default/media/js/.svn/entries b/forum/skins/default/media/js/.svn/entries deleted file mode 100644 index 116aa2dd337578327b38fbd0fe5b4d7c74230a20..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/entries +++ /dev/null @@ -1,1119 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/js -http://svn.osqa.net/svnroot - - - -2012-05-23T17:10:19.489673Z -1268 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -osqa.ask.js -file - - - - -2012-06-22T20:34:42.208669Z -8142af7705172b560f3ea17adc99f9f2 -2011-04-11T10:37:28.261964Z -962 -hernani - - - - - - - - - - - - - - - - - - - - - -3186 - -ZeroClipboard.swf -file - - - - -2012-06-22T20:34:42.212667Z -9f4401cdc4405d0730362256b4c04cc0 -2011-05-05T14:22:25.962919Z -1023 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1071 - -compress.bat -file - - - - -2012-06-22T20:34:42.188679Z -67edce1dc5a9a6d3b9230df337978a40 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -94 - -ui.datepicker.js -file - - - - -2012-06-22T20:34:42.188679Z -687dafabf91ae4b2d0d311584a539ece -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -69877 - -effects.core.min.js -file - - - - -2012-06-22T20:34:42.216665Z -ff6b54debf0a2b2098ec64d1bb4832d3 -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -10765 - -osqa.admin.js -file - - - - -2012-06-22T20:34:42.216665Z -6f37c276c302858bd4251fb12ecfd55a -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -11716 - -excanvas.min.js -file - - - - -2012-06-22T20:34:42.216665Z -3682670784157eca627a91ae04f925b8 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -19415 - -flot-build.bat -file - - - - -2012-06-22T20:34:42.192677Z -2211970b621d2c11730c5dabd0701044 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -106 - -youtube.js -file - - - - -2012-06-22T20:34:42.192677Z -75db759fc36f5e1271973b70eafe65a4 -2011-10-02T13:14:35.471432Z -1181 -jordan - - - - - - - - - - - - - - - - - - - - - -137 - -jquery.i18n.js -file - - - - -2012-06-22T20:34:42.196675Z -8c06a8ee6a2165e854243e38f975da21 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -3062 - -ZeroClipboard.js -file - - - - -2012-06-22T20:34:42.196675Z -176c629b88458883f01abb4436c2df75 -2011-05-05T14:22:25.962919Z -1023 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -9784 - -viewbox.css -file - - - - -2012-06-22T20:34:42.216665Z -fdc66b1efc59752f66454ff9ac9e6fe6 -2011-07-07T11:23:40.081495Z -1110 -jordan - - - - - - - - - - - - - - - - - - - - - -2556 - -ui.core.js -file - - - - -2012-06-22T20:34:42.204671Z -22214fe2b8e6c1a70cd41e5c3ae702ad -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -13932 - -se_hilite.js -file - - - - -2012-06-22T20:34:42.204671Z -fcad54a18febb07f02abccea199c1589 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -2859 - -jquery.ajaxfileupload.js -file - - - - -2012-06-22T20:34:42.204671Z -6234e2c9076329f9e63539fce92a0a3a -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -6905 - -ui.datepicker.min.js -file - - - - -2012-06-22T20:34:42.204671Z -e0fb084d7b4b54ee356befa48d8b1bda -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -44963 - -jquery.form.js -file - - - - -2012-06-22T20:34:42.208669Z -0b57a3c48e7fa89dacc016b3356bccc2 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -20023 - -jquery-1.2.6.js -file - - - - -2012-06-22T20:34:42.152697Z -343607636acfee88faa2b638330a3370 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -100196 - -jquery.flot.js -file - - - - -2012-06-22T20:34:42.208669Z -950162fa054a49c4d82f55a76e2224ec -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -97807 - -jquery.validate.pack.js -file - - - - -2012-06-22T20:34:42.152697Z -ec9b7babb354b383eeffacf23ceb9d91 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -14126 - -yuicompressor-2.4.2.jar -file - - - - -2012-06-22T20:34:42.188679Z -de7f9bf5ecb82166493ba7839f62a73e -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -851219 - -viewbox_min.js -file - - - - -2012-06-22T20:34:42.212667Z -d4d9af46131f8f21acc3fdca682fb460 -2011-07-03T00:50:16.690242Z -1098 -jordan - - - - - - - - - - - - - - - - - - - - - -7960 - -ui.core.min.js -file - - - - -2012-06-22T20:34:42.212667Z -ec7d2e180b647f8ee80fd7370f340a0d -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -8104 - -osqa.main.js -file - - - - -2012-06-22T20:34:42.212667Z -24a0ac3a8c1d2ec48d040e8e8569f881 -2012-05-23T17:10:19.489673Z -1268 -jordan - - - - - - - - - - - - - - - - - - - - - -56691 - -html_sanitizer.js -file - - - - -2012-06-22T20:34:42.196675Z -b418b3b0b406f0d633736a86cf8a8ffc -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -13108 - -jquery.openid.js -file - - - - -2012-06-22T20:34:42.216665Z -b953496cb2312c687fd39afe7aa4a820 -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -4987 - -jquery-1.2.6.min.js -file - - - - -2012-06-22T20:34:42.200673Z -a9331828c517ac5d97f93b3cfdbcc9bc -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -55774 - -jquery.flot.min.js -file - - - - -2012-06-22T20:34:42.148699Z -894855595d743ec62595d0772f1424fe -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -32993 - -osqa.main.min.js -file - - - - -2012-06-22T20:34:42.148699Z -ee38b5bb6a3d6c3b1d946f4fbac0d856 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -27256 - -osqa.question.js -file - - - - -2012-06-22T20:34:42.148699Z -01db91ac7c69581af3ff23b625b0e65c -2010-12-22T22:39:53.714785Z -625 -jordan - - - - - - - - - - - - - - - - - - - - - -216 - -jquery.caret.js -file - - - - -2012-06-22T20:34:42.204671Z -ee130de5e6b9ae2be7579a5fd77f7b23 -2011-07-07T16:21:02.402736Z -1112 -jordan - - - - - - - - - - - - - - - - - - - - - -1444 - -wmd -dir - -se_hilite_src.js -file - - - - -2012-06-22T20:34:42.148699Z -0ab594a326ae2ac3432bf11abb748945 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -8623 - diff --git a/forum/skins/default/media/js/.svn/prop-base/ZeroClipboard.js.svn-base b/forum/skins/default/media/js/.svn/prop-base/ZeroClipboard.js.svn-base deleted file mode 100644 index 869ac71cf7e4d72d9ab52f86d630c1c3f0c017ce..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/prop-base/ZeroClipboard.js.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -svn:executable -V 1 -* -END diff --git a/forum/skins/default/media/js/.svn/prop-base/ZeroClipboard.swf.svn-base b/forum/skins/default/media/js/.svn/prop-base/ZeroClipboard.swf.svn-base deleted file mode 100644 index dbc918b06c1c8d7c24f3b9fa6b1d1e424817309d..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/prop-base/ZeroClipboard.swf.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 14 -svn:executable -V 1 -* -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/.svn/prop-base/yuicompressor-2.4.2.jar.svn-base b/forum/skins/default/media/js/.svn/prop-base/yuicompressor-2.4.2.jar.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/prop-base/yuicompressor-2.4.2.jar.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/.svn/text-base/ZeroClipboard.js.svn-base b/forum/skins/default/media/js/.svn/text-base/ZeroClipboard.js.svn-base deleted file mode 100644 index 5adde951082116f039d3a4dae9a9294ae29e571f..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/ZeroClipboard.js.svn-base +++ /dev/null @@ -1,311 +0,0 @@ -// Simple Set Clipboard System -// Author: Joseph Huckaby - -var ZeroClipboard = { - - version: "1.0.7", - clients: {}, // registered upload clients on page, indexed by id - moviePath: 'ZeroClipboard.swf', // URL to movie - nextId: 1, // ID of next movie - - $: function(thingy) { - // simple DOM lookup utility function - if (typeof(thingy) == 'string') thingy = document.getElementById(thingy); - if (!thingy.addClass) { - // extend element with a few useful methods - thingy.hide = function() { this.style.display = 'none'; }; - thingy.show = function() { this.style.display = ''; }; - thingy.addClass = function(name) { this.removeClass(name); this.className += ' ' + name; }; - thingy.removeClass = function(name) { - var classes = this.className.split(/\s+/); - var idx = -1; - for (var k = 0; k < classes.length; k++) { - if (classes[k] == name) { idx = k; k = classes.length; } - } - if (idx > -1) { - classes.splice( idx, 1 ); - this.className = classes.join(' '); - } - return this; - }; - thingy.hasClass = function(name) { - return !!this.className.match( new RegExp("\\s*" + name + "\\s*") ); - }; - } - return thingy; - }, - - setMoviePath: function(path) { - // set path to ZeroClipboard.swf - this.moviePath = path; - }, - - dispatch: function(id, eventName, args) { - // receive event from flash movie, send to client - var client = this.clients[id]; - if (client) { - client.receiveEvent(eventName, args); - } - }, - - register: function(id, client) { - // register new client to receive events - this.clients[id] = client; - }, - - getDOMObjectPosition: function(obj, stopObj) { - // get absolute coordinates for dom element - var info = { - left: 0, - top: 0, - width: obj.width ? obj.width : obj.offsetWidth, - height: obj.height ? obj.height : obj.offsetHeight - }; - - while (obj && (obj != stopObj)) { - info.left += obj.offsetLeft; - info.top += obj.offsetTop; - obj = obj.offsetParent; - } - - return info; - }, - - Client: function(elem) { - // constructor for new simple upload client - this.handlers = {}; - - // unique ID - this.id = ZeroClipboard.nextId++; - this.movieId = 'ZeroClipboardMovie_' + this.id; - - // register client with singleton to receive flash events - ZeroClipboard.register(this.id, this); - - // create movie - if (elem) this.glue(elem); - } -}; - -ZeroClipboard.Client.prototype = { - - id: 0, // unique ID for us - ready: false, // whether movie is ready to receive events or not - movie: null, // reference to movie object - clipText: '', // text to copy to clipboard - handCursorEnabled: true, // whether to show hand cursor, or default pointer cursor - cssEffects: true, // enable CSS mouse effects on dom container - handlers: null, // user event handlers - - glue: function(elem, appendElem, stylesToAdd) { - // glue to DOM element - // elem can be ID or actual DOM element object - this.domElement = ZeroClipboard.$(elem); - - // float just above object, or zIndex 99 if dom element isn't set - var zIndex = 99; - if (this.domElement.style.zIndex) { - zIndex = parseInt(this.domElement.style.zIndex, 10) + 1; - } - - if (typeof(appendElem) == 'string') { - appendElem = ZeroClipboard.$(appendElem); - } - else if (typeof(appendElem) == 'undefined') { - appendElem = document.getElementsByTagName('body')[0]; - } - - // find X/Y position of domElement - var box = ZeroClipboard.getDOMObjectPosition(this.domElement, appendElem); - - // create floating DIV above element - this.div = document.createElement('div'); - var style = this.div.style; - style.position = 'absolute'; - style.left = '' + box.left + 'px'; - style.top = '' + box.top + 'px'; - style.width = '' + box.width + 'px'; - style.height = '' + box.height + 'px'; - style.zIndex = zIndex; - - if (typeof(stylesToAdd) == 'object') { - for (addedStyle in stylesToAdd) { - style[addedStyle] = stylesToAdd[addedStyle]; - } - } - - // style.backgroundColor = '#f00'; // debug - - appendElem.appendChild(this.div); - - this.div.innerHTML = this.getHTML( box.width, box.height ); - }, - - getHTML: function(width, height) { - // return HTML for movie - var html = ''; - var flashvars = 'id=' + this.id + - '&width=' + width + - '&height=' + height; - - if (navigator.userAgent.match(/MSIE/)) { - // IE gets an OBJECT tag - var protocol = location.href.match(/^https/i) ? 'https://' : 'http://'; - html += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="'+protocol+'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+width+'" height="'+height+'" id="'+this.movieId+'" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="movie" value="'+ZeroClipboard.moviePath+'" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="'+flashvars+'"/><param name="wmode" value="transparent"/></object>'; - } - else { - // all other browsers get an EMBED tag - html += '<embed id="'+this.movieId+'" src="'+ZeroClipboard.moviePath+'" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="'+width+'" height="'+height+'" name="'+this.movieId+'" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="'+flashvars+'" wmode="transparent" />'; - } - return html; - }, - - hide: function() { - // temporarily hide floater offscreen - if (this.div) { - this.div.style.left = '-2000px'; - } - }, - - show: function() { - // show ourselves after a call to hide() - this.reposition(); - }, - - destroy: function() { - // destroy control and floater - if (this.domElement && this.div) { - this.hide(); - this.div.innerHTML = ''; - - var body = document.getElementsByTagName('body')[0]; - try { body.removeChild( this.div ); } catch(e) {;} - - this.domElement = null; - this.div = null; - } - }, - - reposition: function(elem) { - // reposition our floating div, optionally to new container - // warning: container CANNOT change size, only position - if (elem) { - this.domElement = ZeroClipboard.$(elem); - if (!this.domElement) this.hide(); - } - - if (this.domElement && this.div) { - var box = ZeroClipboard.getDOMObjectPosition(this.domElement); - var style = this.div.style; - style.left = '' + box.left + 'px'; - style.top = '' + box.top + 'px'; - } - }, - - setText: function(newText) { - // set text to be copied to clipboard - this.clipText = newText; - if (this.ready) this.movie.setText(newText); - }, - - addEventListener: function(eventName, func) { - // add user event listener for event - // event types: load, queueStart, fileStart, fileComplete, queueComplete, progress, error, cancel - eventName = eventName.toString().toLowerCase().replace(/^on/, ''); - if (!this.handlers[eventName]) this.handlers[eventName] = []; - this.handlers[eventName].push(func); - }, - - setHandCursor: function(enabled) { - // enable hand cursor (true), or default arrow cursor (false) - this.handCursorEnabled = enabled; - if (this.ready) this.movie.setHandCursor(enabled); - }, - - setCSSEffects: function(enabled) { - // enable or disable CSS effects on DOM container - this.cssEffects = !!enabled; - }, - - receiveEvent: function(eventName, args) { - // receive event from flash - eventName = eventName.toString().toLowerCase().replace(/^on/, ''); - - // special behavior for certain events - switch (eventName) { - case 'load': - // movie claims it is ready, but in IE this isn't always the case... - // bug fix: Cannot extend EMBED DOM elements in Firefox, must use traditional function - this.movie = document.getElementById(this.movieId); - if (!this.movie) { - var self = this; - setTimeout( function() { self.receiveEvent('load', null); }, 1 ); - return; - } - - // firefox on pc needs a "kick" in order to set these in certain cases - if (!this.ready && navigator.userAgent.match(/Firefox/) && navigator.userAgent.match(/Windows/)) { - var self = this; - setTimeout( function() { self.receiveEvent('load', null); }, 100 ); - this.ready = true; - return; - } - - this.ready = true; - this.movie.setText( this.clipText ); - this.movie.setHandCursor( this.handCursorEnabled ); - break; - - case 'mouseover': - if (this.domElement && this.cssEffects) { - this.domElement.addClass('hover'); - if (this.recoverActive) this.domElement.addClass('active'); - } - break; - - case 'mouseout': - if (this.domElement && this.cssEffects) { - this.recoverActive = false; - if (this.domElement.hasClass('active')) { - this.domElement.removeClass('active'); - this.recoverActive = true; - } - this.domElement.removeClass('hover'); - } - break; - - case 'mousedown': - if (this.domElement && this.cssEffects) { - this.domElement.addClass('active'); - } - break; - - case 'mouseup': - if (this.domElement && this.cssEffects) { - this.domElement.removeClass('active'); - this.recoverActive = false; - } - break; - } // switch eventName - - if (this.handlers[eventName]) { - for (var idx = 0, len = this.handlers[eventName].length; idx < len; idx++) { - var func = this.handlers[eventName][idx]; - - if (typeof(func) == 'function') { - // actual function reference - func(this, args); - } - else if ((typeof(func) == 'object') && (func.length == 2)) { - // PHP style object + method, i.e. [myObject, 'myMethod'] - func[0][ func[1] ](this, args); - } - else if (typeof(func) == 'string') { - // name of function - window[func](this, args); - } - } // foreach event handler defined - } // user defined handler for event - } - -}; diff --git a/forum/skins/default/media/js/.svn/text-base/ZeroClipboard.swf.svn-base b/forum/skins/default/media/js/.svn/text-base/ZeroClipboard.swf.svn-base deleted file mode 100644 index 13bf8e396202964e0048333d878f4b949a2f5e6a..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/.svn/text-base/ZeroClipboard.swf.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/.svn/text-base/compress.bat.svn-base b/forum/skins/default/media/js/.svn/text-base/compress.bat.svn-base deleted file mode 100644 index f6f2a4fe098384e5c1ffb287ab1eb634883498ff..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/compress.bat.svn-base +++ /dev/null @@ -1 +0,0 @@ -java -jar yuicompressor-2.4.2.jar --type js --charset utf-8 osqa.main.js -o osqa.main.min.js diff --git a/forum/skins/default/media/js/.svn/text-base/effects.core.min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/effects.core.min.js.svn-base deleted file mode 100644 index 0a1d6d4a193354baee6ecfa315867437ace5f880..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/effects.core.min.js.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Effects 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/ - */ -jQuery.effects||(function(d){d.effects={version:"1.7.2",save:function(g,h){for(var f=0;f<h.length;f++){if(h[f]!==null){g.data("ec.storage."+h[f],g[0].style[h[f]])}}},restore:function(g,h){for(var f=0;f<h.length;f++){if(h[f]!==null){g.css(h[f],g.data("ec.storage."+h[f]))}}},setMode:function(f,g){if(g=="toggle"){g=f.is(":hidden")?"show":"hide"}return g},getBaseline:function(g,h){var i,f;switch(g[0]){case"top":i=0;break;case"middle":i=0.5;break;case"bottom":i=1;break;default:i=g[0]/h.height}switch(g[1]){case"left":f=0;break;case"center":f=0.5;break;case"right":f=1;break;default:f=g[1]/h.width}return{x:f,y:i}},createWrapper:function(f){if(f.parent().is(".ui-effects-wrapper")){return f.parent()}var g={width:f.outerWidth(true),height:f.outerHeight(true),"float":f.css("float")};f.wrap('<div class="ui-effects-wrapper" style="font-size:100%;background:transparent;border:none;margin:0;padding:0"></div>');var j=f.parent();if(f.css("position")=="static"){j.css({position:"relative"});f.css({position:"relative"})}else{var i=f.css("top");if(isNaN(parseInt(i,10))){i="auto"}var h=f.css("left");if(isNaN(parseInt(h,10))){h="auto"}j.css({position:f.css("position"),top:i,left:h,zIndex:f.css("z-index")}).show();f.css({position:"relative",top:0,left:0})}j.css(g);return j},removeWrapper:function(f){if(f.parent().is(".ui-effects-wrapper")){return f.parent().replaceWith(f)}return f},setTransition:function(g,i,f,h){h=h||{};d.each(i,function(k,j){unit=g.cssUnit(j);if(unit[0]>0){h[j]=unit[0]*f+unit[1]}});return h},animateClass:function(h,i,k,j){var f=(typeof k=="function"?k:(j?j:null));var g=(typeof k=="string"?k:null);return this.each(function(){var q={};var o=d(this);var p=o.attr("style")||"";if(typeof p=="object"){p=p.cssText}if(h.toggle){o.hasClass(h.toggle)?h.remove=h.toggle:h.add=h.toggle}var l=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.addClass(h.add)}if(h.remove){o.removeClass(h.remove)}var m=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.removeClass(h.add)}if(h.remove){o.addClass(h.remove)}for(var r in m){if(typeof m[r]!="function"&&m[r]&&r.indexOf("Moz")==-1&&r.indexOf("length")==-1&&m[r]!=l[r]&&(r.match(/color/i)||(!r.match(/color/i)&&!isNaN(parseInt(m[r],10))))&&(l.position!="static"||(l.position=="static"&&!r.match(/left|top|bottom|right/)))){q[r]=m[r]}}o.animate(q,i,g,function(){if(typeof d(this).attr("style")=="object"){d(this).attr("style")["cssText"]="";d(this).attr("style")["cssText"]=p}else{d(this).attr("style",p)}if(h.add){d(this).addClass(h.add)}if(h.remove){d(this).removeClass(h.remove)}if(f){f.apply(this,arguments)}})})}};function c(g,f){var i=g[1]&&g[1].constructor==Object?g[1]:{};if(f){i.mode=f}var h=g[1]&&g[1].constructor!=Object?g[1]:(i.duration?i.duration:g[2]);h=d.fx.off?0:typeof h==="number"?h:d.fx.speeds[h]||d.fx.speeds._default;var j=i.callback||(d.isFunction(g[1])&&g[1])||(d.isFunction(g[2])&&g[2])||(d.isFunction(g[3])&&g[3]);return[g[0],i,h,j]}d.fn.extend({_show:d.fn.show,_hide:d.fn.hide,__toggle:d.fn.toggle,_addClass:d.fn.addClass,_removeClass:d.fn.removeClass,_toggleClass:d.fn.toggleClass,effect:function(g,f,h,i){return d.effects[g]?d.effects[g].call(this,{method:g,options:f||{},duration:h,callback:i}):null},show:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._show.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"show"))}},hide:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._hide.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"hide"))}},toggle:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))||(d.isFunction(arguments[0])||typeof arguments[0]=="boolean")){return this.__toggle.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"toggle"))}},addClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{add:g},f,i,h]):this._addClass(g)},removeClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{remove:g},f,i,h]):this._removeClass(g)},toggleClass:function(g,f,i,h){return((typeof f!=="boolean")&&f)?d.effects.animateClass.apply(this,[{toggle:g},f,i,h]):this._toggleClass(g,f)},morph:function(f,h,g,j,i){return d.effects.animateClass.apply(this,[{add:h,remove:f},g,j,i])},switchClass:function(){return this.morph.apply(this,arguments)},cssUnit:function(f){var g=this.css(f),h=[];d.each(["em","px","%","pt"],function(j,k){if(g.indexOf(k)>0){h=[parseFloat(g),k]}});return h}});d.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(g,f){d.fx.step[f]=function(h){if(h.state==0){h.start=e(h.elem,f);h.end=b(h.end)}h.elem.style[f]="rgb("+[Math.max(Math.min(parseInt((h.pos*(h.end[0]-h.start[0]))+h.start[0],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[1]-h.start[1]))+h.start[1],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[2]-h.start[2]))+h.start[2],10),255),0)].join(",")+")"}});function b(g){var f;if(g&&g.constructor==Array&&g.length==3){return g}if(f=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(g)){return[parseInt(f[1],10),parseInt(f[2],10),parseInt(f[3],10)]}if(f=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(g)){return[parseFloat(f[1])*2.55,parseFloat(f[2])*2.55,parseFloat(f[3])*2.55]}if(f=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(g)){return[parseInt(f[1],16),parseInt(f[2],16),parseInt(f[3],16)]}if(f=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(g)){return[parseInt(f[1]+f[1],16),parseInt(f[2]+f[2],16),parseInt(f[3]+f[3],16)]}if(f=/rgba\(0, 0, 0, 0\)/.exec(g)){return a.transparent}return a[d.trim(g).toLowerCase()]}function e(h,f){var g;do{g=d.curCSS(h,f);if(g!=""&&g!="transparent"||d.nodeName(h,"body")){break}f="backgroundColor"}while(h=h.parentNode);return b(g)}var a={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]};d.easing.jswing=d.easing.swing;d.extend(d.easing,{def:"easeOutQuad",swing:function(g,h,f,j,i){return d.easing[d.easing.def](g,h,f,j,i)},easeInQuad:function(g,h,f,j,i){return j*(h/=i)*h+f},easeOutQuad:function(g,h,f,j,i){return -j*(h/=i)*(h-2)+f},easeInOutQuad:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h+f}return -j/2*((--h)*(h-2)-1)+f},easeInCubic:function(g,h,f,j,i){return j*(h/=i)*h*h+f},easeOutCubic:function(g,h,f,j,i){return j*((h=h/i-1)*h*h+1)+f},easeInOutCubic:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h+f}return j/2*((h-=2)*h*h+2)+f},easeInQuart:function(g,h,f,j,i){return j*(h/=i)*h*h*h+f},easeOutQuart:function(g,h,f,j,i){return -j*((h=h/i-1)*h*h*h-1)+f},easeInOutQuart:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h+f}return -j/2*((h-=2)*h*h*h-2)+f},easeInQuint:function(g,h,f,j,i){return j*(h/=i)*h*h*h*h+f},easeOutQuint:function(g,h,f,j,i){return j*((h=h/i-1)*h*h*h*h+1)+f},easeInOutQuint:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h*h+f}return j/2*((h-=2)*h*h*h*h+2)+f},easeInSine:function(g,h,f,j,i){return -j*Math.cos(h/i*(Math.PI/2))+j+f},easeOutSine:function(g,h,f,j,i){return j*Math.sin(h/i*(Math.PI/2))+f},easeInOutSine:function(g,h,f,j,i){return -j/2*(Math.cos(Math.PI*h/i)-1)+f},easeInExpo:function(g,h,f,j,i){return(h==0)?f:j*Math.pow(2,10*(h/i-1))+f},easeOutExpo:function(g,h,f,j,i){return(h==i)?f+j:j*(-Math.pow(2,-10*h/i)+1)+f},easeInOutExpo:function(g,h,f,j,i){if(h==0){return f}if(h==i){return f+j}if((h/=i/2)<1){return j/2*Math.pow(2,10*(h-1))+f}return j/2*(-Math.pow(2,-10*--h)+2)+f},easeInCirc:function(g,h,f,j,i){return -j*(Math.sqrt(1-(h/=i)*h)-1)+f},easeOutCirc:function(g,h,f,j,i){return j*Math.sqrt(1-(h=h/i-1)*h)+f},easeInOutCirc:function(g,h,f,j,i){if((h/=i/2)<1){return -j/2*(Math.sqrt(1-h*h)-1)+f}return j/2*(Math.sqrt(1-(h-=2)*h)+1)+f},easeInElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l)==1){return f+m}if(!k){k=l*0.3}if(h<Math.abs(m)){h=m;var j=k/4}else{var j=k/(2*Math.PI)*Math.asin(m/h)}return -(h*Math.pow(2,10*(i-=1))*Math.sin((i*l-j)*(2*Math.PI)/k))+f},easeOutElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l)==1){return f+m}if(!k){k=l*0.3}if(h<Math.abs(m)){h=m;var j=k/4}else{var j=k/(2*Math.PI)*Math.asin(m/h)}return h*Math.pow(2,-10*i)*Math.sin((i*l-j)*(2*Math.PI)/k)+m+f},easeInOutElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l/2)==2){return f+m}if(!k){k=l*(0.3*1.5)}if(h<Math.abs(m)){h=m;var j=k/4}else{var j=k/(2*Math.PI)*Math.asin(m/h)}if(i<1){return -0.5*(h*Math.pow(2,10*(i-=1))*Math.sin((i*l-j)*(2*Math.PI)/k))+f}return h*Math.pow(2,-10*(i-=1))*Math.sin((i*l-j)*(2*Math.PI)/k)*0.5+m+f},easeInBack:function(g,h,f,k,j,i){if(i==undefined){i=1.70158}return k*(h/=j)*h*((i+1)*h-i)+f},easeOutBack:function(g,h,f,k,j,i){if(i==undefined){i=1.70158}return k*((h=h/j-1)*h*((i+1)*h+i)+1)+f},easeInOutBack:function(g,h,f,k,j,i){if(i==undefined){i=1.70158}if((h/=j/2)<1){return k/2*(h*h*(((i*=(1.525))+1)*h-i))+f}return k/2*((h-=2)*h*(((i*=(1.525))+1)*h+i)+2)+f},easeInBounce:function(g,h,f,j,i){return j-d.easing.easeOutBounce(g,i-h,0,j,i)+f},easeOutBounce:function(g,h,f,j,i){if((h/=i)<(1/2.75)){return j*(7.5625*h*h)+f}else{if(h<(2/2.75)){return j*(7.5625*(h-=(1.5/2.75))*h+0.75)+f}else{if(h<(2.5/2.75)){return j*(7.5625*(h-=(2.25/2.75))*h+0.9375)+f}else{return j*(7.5625*(h-=(2.625/2.75))*h+0.984375)+f}}}},easeInOutBounce:function(g,h,f,j,i){if(h<i/2){return d.easing.easeInBounce(g,h*2,0,j,i)*0.5+f}return d.easing.easeOutBounce(g,h*2-i,0,j,i)*0.5+j*0.5+f}})})(jQuery); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/excanvas.min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/excanvas.min.js.svn-base deleted file mode 100644 index 12c74f7bea844f60953021cadc8468297712f0df..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/excanvas.min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -if(!document.createElement("canvas").getContext){(function(){var z=Math;var K=z.round;var J=z.sin;var U=z.cos;var b=z.abs;var k=z.sqrt;var D=10;var F=D/2;function T(){return this.context_||(this.context_=new W(this))}var O=Array.prototype.slice;function G(i,j,m){var Z=O.call(arguments,2);return function(){return i.apply(j,Z.concat(O.call(arguments)))}}function AD(Z){return String(Z).replace(/&/g,"&").replace(/"/g,""")}function r(i){if(!i.namespaces.g_vml_){i.namespaces.add("g_vml_","urn:schemas-microsoft-com:vml","#default#VML")}if(!i.namespaces.g_o_){i.namespaces.add("g_o_","urn:schemas-microsoft-com:office:office","#default#VML")}if(!i.styleSheets.ex_canvas_){var Z=i.createStyleSheet();Z.owningElement.id="ex_canvas_";Z.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}r(document);var E={init:function(Z){if(/MSIE/.test(navigator.userAgent)&&!window.opera){var i=Z||document;i.createElement("canvas");i.attachEvent("onreadystatechange",G(this.init_,this,i))}},init_:function(m){var j=m.getElementsByTagName("canvas");for(var Z=0;Z<j.length;Z++){this.initElement(j[Z])}},initElement:function(i){if(!i.getContext){i.getContext=T;r(i.ownerDocument);i.innerHTML="";i.attachEvent("onpropertychange",S);i.attachEvent("onresize",w);var Z=i.attributes;if(Z.width&&Z.width.specified){i.style.width=Z.width.nodeValue+"px"}else{i.width=i.clientWidth}if(Z.height&&Z.height.specified){i.style.height=Z.height.nodeValue+"px"}else{i.height=i.clientHeight}}return i}};function S(i){var Z=i.srcElement;switch(i.propertyName){case"width":Z.getContext().clearRect();Z.style.width=Z.attributes.width.nodeValue+"px";Z.firstChild.style.width=Z.clientWidth+"px";break;case"height":Z.getContext().clearRect();Z.style.height=Z.attributes.height.nodeValue+"px";Z.firstChild.style.height=Z.clientHeight+"px";break}}function w(i){var Z=i.srcElement;if(Z.firstChild){Z.firstChild.style.width=Z.clientWidth+"px";Z.firstChild.style.height=Z.clientHeight+"px"}}E.init();var I=[];for(var AC=0;AC<16;AC++){for(var AB=0;AB<16;AB++){I[AC*16+AB]=AC.toString(16)+AB.toString(16)}}function V(){return[[1,0,0],[0,1,0],[0,0,1]]}function d(m,j){var i=V();for(var Z=0;Z<3;Z++){for(var AF=0;AF<3;AF++){var p=0;for(var AE=0;AE<3;AE++){p+=m[Z][AE]*j[AE][AF]}i[Z][AF]=p}}return i}function Q(i,Z){Z.fillStyle=i.fillStyle;Z.lineCap=i.lineCap;Z.lineJoin=i.lineJoin;Z.lineWidth=i.lineWidth;Z.miterLimit=i.miterLimit;Z.shadowBlur=i.shadowBlur;Z.shadowColor=i.shadowColor;Z.shadowOffsetX=i.shadowOffsetX;Z.shadowOffsetY=i.shadowOffsetY;Z.strokeStyle=i.strokeStyle;Z.globalAlpha=i.globalAlpha;Z.font=i.font;Z.textAlign=i.textAlign;Z.textBaseline=i.textBaseline;Z.arcScaleX_=i.arcScaleX_;Z.arcScaleY_=i.arcScaleY_;Z.lineScale_=i.lineScale_}var B={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",grey:"#808080",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",oldlace:"#FDF5E6",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",whitesmoke:"#F5F5F5",yellowgreen:"#9ACD32"};function g(i){var m=i.indexOf("(",3);var Z=i.indexOf(")",m+1);var j=i.substring(m+1,Z).split(",");if(j.length==4&&i.substr(3,1)=="a"){alpha=Number(j[3])}else{j[3]=1}return j}function C(Z){return parseFloat(Z)/100}function N(i,j,Z){return Math.min(Z,Math.max(j,i))}function c(AF){var j,i,Z;h=parseFloat(AF[0])/360%360;if(h<0){h++}s=N(C(AF[1]),0,1);l=N(C(AF[2]),0,1);if(s==0){j=i=Z=l}else{var m=l<0.5?l*(1+s):l+s-l*s;var AE=2*l-m;j=A(AE,m,h+1/3);i=A(AE,m,h);Z=A(AE,m,h-1/3)}return"#"+I[Math.floor(j*255)]+I[Math.floor(i*255)]+I[Math.floor(Z*255)]}function A(i,Z,j){if(j<0){j++}if(j>1){j--}if(6*j<1){return i+(Z-i)*6*j}else{if(2*j<1){return Z}else{if(3*j<2){return i+(Z-i)*(2/3-j)*6}else{return i}}}}function Y(Z){var AE,p=1;Z=String(Z);if(Z.charAt(0)=="#"){AE=Z}else{if(/^rgb/.test(Z)){var m=g(Z);var AE="#",AF;for(var j=0;j<3;j++){if(m[j].indexOf("%")!=-1){AF=Math.floor(C(m[j])*255)}else{AF=Number(m[j])}AE+=I[N(AF,0,255)]}p=m[3]}else{if(/^hsl/.test(Z)){var m=g(Z);AE=c(m);p=m[3]}else{AE=B[Z]||Z}}}return{color:AE,alpha:p}}var L={style:"normal",variant:"normal",weight:"normal",size:10,family:"sans-serif"};var f={};function X(Z){if(f[Z]){return f[Z]}var m=document.createElement("div");var j=m.style;try{j.font=Z}catch(i){}return f[Z]={style:j.fontStyle||L.style,variant:j.fontVariant||L.variant,weight:j.fontWeight||L.weight,size:j.fontSize||L.size,family:j.fontFamily||L.family}}function P(j,i){var Z={};for(var AF in j){Z[AF]=j[AF]}var AE=parseFloat(i.currentStyle.fontSize),m=parseFloat(j.size);if(typeof j.size=="number"){Z.size=j.size}else{if(j.size.indexOf("px")!=-1){Z.size=m}else{if(j.size.indexOf("em")!=-1){Z.size=AE*m}else{if(j.size.indexOf("%")!=-1){Z.size=(AE/100)*m}else{if(j.size.indexOf("pt")!=-1){Z.size=m/0.75}else{Z.size=AE}}}}}Z.size*=0.981;return Z}function AA(Z){return Z.style+" "+Z.variant+" "+Z.weight+" "+Z.size+"px "+Z.family}function t(Z){switch(Z){case"butt":return"flat";case"round":return"round";case"square":default:return"square"}}function W(i){this.m_=V();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=D*1;this.globalAlpha=1;this.font="10px sans-serif";this.textAlign="left";this.textBaseline="alphabetic";this.canvas=i;var Z=i.ownerDocument.createElement("div");Z.style.width=i.clientWidth+"px";Z.style.height=i.clientHeight+"px";Z.style.overflow="hidden";Z.style.position="absolute";i.appendChild(Z);this.element_=Z;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var M=W.prototype;M.clearRect=function(){if(this.textMeasureEl_){this.textMeasureEl_.removeNode(true);this.textMeasureEl_=null}this.element_.innerHTML=""};M.beginPath=function(){this.currentPath_=[]};M.moveTo=function(i,Z){var j=this.getCoords_(i,Z);this.currentPath_.push({type:"moveTo",x:j.x,y:j.y});this.currentX_=j.x;this.currentY_=j.y};M.lineTo=function(i,Z){var j=this.getCoords_(i,Z);this.currentPath_.push({type:"lineTo",x:j.x,y:j.y});this.currentX_=j.x;this.currentY_=j.y};M.bezierCurveTo=function(j,i,AI,AH,AG,AE){var Z=this.getCoords_(AG,AE);var AF=this.getCoords_(j,i);var m=this.getCoords_(AI,AH);e(this,AF,m,Z)};function e(Z,m,j,i){Z.currentPath_.push({type:"bezierCurveTo",cp1x:m.x,cp1y:m.y,cp2x:j.x,cp2y:j.y,x:i.x,y:i.y});Z.currentX_=i.x;Z.currentY_=i.y}M.quadraticCurveTo=function(AG,j,i,Z){var AF=this.getCoords_(AG,j);var AE=this.getCoords_(i,Z);var AH={x:this.currentX_+2/3*(AF.x-this.currentX_),y:this.currentY_+2/3*(AF.y-this.currentY_)};var m={x:AH.x+(AE.x-this.currentX_)/3,y:AH.y+(AE.y-this.currentY_)/3};e(this,AH,m,AE)};M.arc=function(AJ,AH,AI,AE,i,j){AI*=D;var AN=j?"at":"wa";var AK=AJ+U(AE)*AI-F;var AM=AH+J(AE)*AI-F;var Z=AJ+U(i)*AI-F;var AL=AH+J(i)*AI-F;if(AK==Z&&!j){AK+=0.125}var m=this.getCoords_(AJ,AH);var AG=this.getCoords_(AK,AM);var AF=this.getCoords_(Z,AL);this.currentPath_.push({type:AN,x:m.x,y:m.y,radius:AI,xStart:AG.x,yStart:AG.y,xEnd:AF.x,yEnd:AF.y})};M.rect=function(j,i,Z,m){this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath()};M.strokeRect=function(j,i,Z,m){var p=this.currentPath_;this.beginPath();this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath();this.stroke();this.currentPath_=p};M.fillRect=function(j,i,Z,m){var p=this.currentPath_;this.beginPath();this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath();this.fill();this.currentPath_=p};M.createLinearGradient=function(i,m,Z,j){var p=new v("gradient");p.x0_=i;p.y0_=m;p.x1_=Z;p.y1_=j;return p};M.createRadialGradient=function(m,AE,j,i,p,Z){var AF=new v("gradientradial");AF.x0_=m;AF.y0_=AE;AF.r0_=j;AF.x1_=i;AF.y1_=p;AF.r1_=Z;return AF};M.drawImage=function(AO,j){var AH,AF,AJ,AV,AM,AK,AQ,AX;var AI=AO.runtimeStyle.width;var AN=AO.runtimeStyle.height;AO.runtimeStyle.width="auto";AO.runtimeStyle.height="auto";var AG=AO.width;var AT=AO.height;AO.runtimeStyle.width=AI;AO.runtimeStyle.height=AN;if(arguments.length==3){AH=arguments[1];AF=arguments[2];AM=AK=0;AQ=AJ=AG;AX=AV=AT}else{if(arguments.length==5){AH=arguments[1];AF=arguments[2];AJ=arguments[3];AV=arguments[4];AM=AK=0;AQ=AG;AX=AT}else{if(arguments.length==9){AM=arguments[1];AK=arguments[2];AQ=arguments[3];AX=arguments[4];AH=arguments[5];AF=arguments[6];AJ=arguments[7];AV=arguments[8]}else{throw Error("Invalid number of arguments")}}}var AW=this.getCoords_(AH,AF);var m=AQ/2;var i=AX/2;var AU=[];var Z=10;var AE=10;AU.push(" <g_vml_:group",' coordsize="',D*Z,",",D*AE,'"',' coordorigin="0,0"',' style="width:',Z,"px;height:",AE,"px;position:absolute;");if(this.m_[0][0]!=1||this.m_[0][1]||this.m_[1][1]!=1||this.m_[1][0]){var p=[];p.push("M11=",this.m_[0][0],",","M12=",this.m_[1][0],",","M21=",this.m_[0][1],",","M22=",this.m_[1][1],",","Dx=",K(AW.x/D),",","Dy=",K(AW.y/D),"");var AS=AW;var AR=this.getCoords_(AH+AJ,AF);var AP=this.getCoords_(AH,AF+AV);var AL=this.getCoords_(AH+AJ,AF+AV);AS.x=z.max(AS.x,AR.x,AP.x,AL.x);AS.y=z.max(AS.y,AR.y,AP.y,AL.y);AU.push("padding:0 ",K(AS.x/D),"px ",K(AS.y/D),"px 0;filter:progid:DXImageTransform.Microsoft.Matrix(",p.join(""),", sizingmethod='clip');")}else{AU.push("top:",K(AW.y/D),"px;left:",K(AW.x/D),"px;")}AU.push(' ">','<g_vml_:image src="',AO.src,'"',' style="width:',D*AJ,"px;"," height:",D*AV,'px"',' cropleft="',AM/AG,'"',' croptop="',AK/AT,'"',' cropright="',(AG-AM-AQ)/AG,'"',' cropbottom="',(AT-AK-AX)/AT,'"'," />","</g_vml_:group>");this.element_.insertAdjacentHTML("BeforeEnd",AU.join(""))};M.stroke=function(AM){var m=10;var AN=10;var AE=5000;var AG={x:null,y:null};var AL={x:null,y:null};for(var AH=0;AH<this.currentPath_.length;AH+=AE){var AK=[];var AF=false;AK.push("<g_vml_:shape",' filled="',!!AM,'"',' style="position:absolute;width:',m,"px;height:",AN,'px;"',' coordorigin="0,0"',' coordsize="',D*m,",",D*AN,'"',' stroked="',!AM,'"',' path="');var AO=false;for(var AI=AH;AI<Math.min(AH+AE,this.currentPath_.length);AI++){if(AI%AE==0&&AI>0){AK.push(" m ",K(this.currentPath_[AI-1].x),",",K(this.currentPath_[AI-1].y))}var Z=this.currentPath_[AI];var AJ;switch(Z.type){case"moveTo":AJ=Z;AK.push(" m ",K(Z.x),",",K(Z.y));break;case"lineTo":AK.push(" l ",K(Z.x),",",K(Z.y));break;case"close":AK.push(" x ");Z=null;break;case"bezierCurveTo":AK.push(" c ",K(Z.cp1x),",",K(Z.cp1y),",",K(Z.cp2x),",",K(Z.cp2y),",",K(Z.x),",",K(Z.y));break;case"at":case"wa":AK.push(" ",Z.type," ",K(Z.x-this.arcScaleX_*Z.radius),",",K(Z.y-this.arcScaleY_*Z.radius)," ",K(Z.x+this.arcScaleX_*Z.radius),",",K(Z.y+this.arcScaleY_*Z.radius)," ",K(Z.xStart),",",K(Z.yStart)," ",K(Z.xEnd),",",K(Z.yEnd));break}if(Z){if(AG.x==null||Z.x<AG.x){AG.x=Z.x}if(AL.x==null||Z.x>AL.x){AL.x=Z.x}if(AG.y==null||Z.y<AG.y){AG.y=Z.y}if(AL.y==null||Z.y>AL.y){AL.y=Z.y}}}AK.push(' ">');if(!AM){R(this,AK)}else{a(this,AK,AG,AL)}AK.push("</g_vml_:shape>");this.element_.insertAdjacentHTML("beforeEnd",AK.join(""))}};function R(j,AE){var i=Y(j.strokeStyle);var m=i.color;var p=i.alpha*j.globalAlpha;var Z=j.lineScale_*j.lineWidth;if(Z<1){p*=Z}AE.push("<g_vml_:stroke",' opacity="',p,'"',' joinstyle="',j.lineJoin,'"',' miterlimit="',j.miterLimit,'"',' endcap="',t(j.lineCap),'"',' weight="',Z,'px"',' color="',m,'" />')}function a(AO,AG,Ah,AP){var AH=AO.fillStyle;var AY=AO.arcScaleX_;var AX=AO.arcScaleY_;var Z=AP.x-Ah.x;var m=AP.y-Ah.y;if(AH instanceof v){var AL=0;var Ac={x:0,y:0};var AU=0;var AK=1;if(AH.type_=="gradient"){var AJ=AH.x0_/AY;var j=AH.y0_/AX;var AI=AH.x1_/AY;var Aj=AH.y1_/AX;var Ag=AO.getCoords_(AJ,j);var Af=AO.getCoords_(AI,Aj);var AE=Af.x-Ag.x;var p=Af.y-Ag.y;AL=Math.atan2(AE,p)*180/Math.PI;if(AL<0){AL+=360}if(AL<0.000001){AL=0}}else{var Ag=AO.getCoords_(AH.x0_,AH.y0_);Ac={x:(Ag.x-Ah.x)/Z,y:(Ag.y-Ah.y)/m};Z/=AY*D;m/=AX*D;var Aa=z.max(Z,m);AU=2*AH.r0_/Aa;AK=2*AH.r1_/Aa-AU}var AS=AH.colors_;AS.sort(function(Ak,i){return Ak.offset-i.offset});var AN=AS.length;var AR=AS[0].color;var AQ=AS[AN-1].color;var AW=AS[0].alpha*AO.globalAlpha;var AV=AS[AN-1].alpha*AO.globalAlpha;var Ab=[];for(var Ae=0;Ae<AN;Ae++){var AM=AS[Ae];Ab.push(AM.offset*AK+AU+" "+AM.color)}AG.push('<g_vml_:fill type="',AH.type_,'"',' method="none" focus="100%"',' color="',AR,'"',' color2="',AQ,'"',' colors="',Ab.join(","),'"',' opacity="',AV,'"',' g_o_:opacity2="',AW,'"',' angle="',AL,'"',' focusposition="',Ac.x,",",Ac.y,'" />')}else{if(AH instanceof u){if(Z&&m){var AF=-Ah.x;var AZ=-Ah.y;AG.push("<g_vml_:fill",' position="',AF/Z*AY*AY,",",AZ/m*AX*AX,'"',' type="tile"',' src="',AH.src_,'" />')}}else{var Ai=Y(AO.fillStyle);var AT=Ai.color;var Ad=Ai.alpha*AO.globalAlpha;AG.push('<g_vml_:fill color="',AT,'" opacity="',Ad,'" />')}}}M.fill=function(){this.stroke(true)};M.closePath=function(){this.currentPath_.push({type:"close"})};M.getCoords_=function(j,i){var Z=this.m_;return{x:D*(j*Z[0][0]+i*Z[1][0]+Z[2][0])-F,y:D*(j*Z[0][1]+i*Z[1][1]+Z[2][1])-F}};M.save=function(){var Z={};Q(this,Z);this.aStack_.push(Z);this.mStack_.push(this.m_);this.m_=d(V(),this.m_)};M.restore=function(){if(this.aStack_.length){Q(this.aStack_.pop(),this);this.m_=this.mStack_.pop()}};function H(Z){return isFinite(Z[0][0])&&isFinite(Z[0][1])&&isFinite(Z[1][0])&&isFinite(Z[1][1])&&isFinite(Z[2][0])&&isFinite(Z[2][1])}function y(i,Z,j){if(!H(Z)){return }i.m_=Z;if(j){var p=Z[0][0]*Z[1][1]-Z[0][1]*Z[1][0];i.lineScale_=k(b(p))}}M.translate=function(j,i){var Z=[[1,0,0],[0,1,0],[j,i,1]];y(this,d(Z,this.m_),false)};M.rotate=function(i){var m=U(i);var j=J(i);var Z=[[m,j,0],[-j,m,0],[0,0,1]];y(this,d(Z,this.m_),false)};M.scale=function(j,i){this.arcScaleX_*=j;this.arcScaleY_*=i;var Z=[[j,0,0],[0,i,0],[0,0,1]];y(this,d(Z,this.m_),true)};M.transform=function(p,m,AF,AE,i,Z){var j=[[p,m,0],[AF,AE,0],[i,Z,1]];y(this,d(j,this.m_),true)};M.setTransform=function(AE,p,AG,AF,j,i){var Z=[[AE,p,0],[AG,AF,0],[j,i,1]];y(this,Z,true)};M.drawText_=function(AK,AI,AH,AN,AG){var AM=this.m_,AQ=1000,i=0,AP=AQ,AF={x:0,y:0},AE=[];var Z=P(X(this.font),this.element_);var j=AA(Z);var AR=this.element_.currentStyle;var p=this.textAlign.toLowerCase();switch(p){case"left":case"center":case"right":break;case"end":p=AR.direction=="ltr"?"right":"left";break;case"start":p=AR.direction=="rtl"?"right":"left";break;default:p="left"}switch(this.textBaseline){case"hanging":case"top":AF.y=Z.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":AF.y=-Z.size/2.25;break}switch(p){case"right":i=AQ;AP=0.05;break;case"center":i=AP=AQ/2;break}var AO=this.getCoords_(AI+AF.x,AH+AF.y);AE.push('<g_vml_:line from="',-i,' 0" to="',AP,' 0.05" ',' coordsize="100 100" coordorigin="0 0"',' filled="',!AG,'" stroked="',!!AG,'" style="position:absolute;width:1px;height:1px;">');if(AG){R(this,AE)}else{a(this,AE,{x:-i,y:0},{x:AP,y:Z.size})}var AL=AM[0][0].toFixed(3)+","+AM[1][0].toFixed(3)+","+AM[0][1].toFixed(3)+","+AM[1][1].toFixed(3)+",0,0";var AJ=K(AO.x/D)+","+K(AO.y/D);AE.push('<g_vml_:skew on="t" matrix="',AL,'" ',' offset="',AJ,'" origin="',i,' 0" />','<g_vml_:path textpathok="true" />','<g_vml_:textpath on="true" string="',AD(AK),'" style="v-text-align:',p,";font:",AD(j),'" /></g_vml_:line>');this.element_.insertAdjacentHTML("beforeEnd",AE.join(""))};M.fillText=function(j,Z,m,i){this.drawText_(j,Z,m,i,false)};M.strokeText=function(j,Z,m,i){this.drawText_(j,Z,m,i,true)};M.measureText=function(j){if(!this.textMeasureEl_){var Z='<span style="position:absolute;top:-20000px;left:0;padding:0;margin:0;border:none;white-space:pre;"></span>';this.element_.insertAdjacentHTML("beforeEnd",Z);this.textMeasureEl_=this.element_.lastChild}var i=this.element_.ownerDocument;this.textMeasureEl_.innerHTML="";this.textMeasureEl_.style.font=this.font;this.textMeasureEl_.appendChild(i.createTextNode(j));return{width:this.textMeasureEl_.offsetWidth}};M.clip=function(){};M.arcTo=function(){};M.createPattern=function(i,Z){return new u(i,Z)};function v(Z){this.type_=Z;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}v.prototype.addColorStop=function(i,Z){Z=Y(Z);this.colors_.push({offset:i,color:Z.color,alpha:Z.alpha})};function u(i,Z){q(i);switch(Z){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=Z;break;default:n("SYNTAX_ERR")}this.src_=i.src;this.width_=i.width;this.height_=i.height}function n(Z){throw new o(Z)}function q(Z){if(!Z||Z.nodeType!=1||Z.tagName!="IMG"){n("TYPE_MISMATCH_ERR")}if(Z.readyState!="complete"){n("INVALID_STATE_ERR")}}function o(Z){this.code=this[Z];this.message=Z+": DOM Exception "+this.code}var x=o.prototype=new Error;x.INDEX_SIZE_ERR=1;x.DOMSTRING_SIZE_ERR=2;x.HIERARCHY_REQUEST_ERR=3;x.WRONG_DOCUMENT_ERR=4;x.INVALID_CHARACTER_ERR=5;x.NO_DATA_ALLOWED_ERR=6;x.NO_MODIFICATION_ALLOWED_ERR=7;x.NOT_FOUND_ERR=8;x.NOT_SUPPORTED_ERR=9;x.INUSE_ATTRIBUTE_ERR=10;x.INVALID_STATE_ERR=11;x.SYNTAX_ERR=12;x.INVALID_MODIFICATION_ERR=13;x.NAMESPACE_ERR=14;x.INVALID_ACCESS_ERR=15;x.VALIDATION_ERR=16;x.TYPE_MISMATCH_ERR=17;G_vmlCanvasManager=E;CanvasRenderingContext2D=W;CanvasGradient=v;CanvasPattern=u;DOMException=o})()}; \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/flot-build.bat.svn-base b/forum/skins/default/media/js/.svn/text-base/flot-build.bat.svn-base deleted file mode 100644 index f9f32cb790ca89c47cdb187194c278ba1a5d7e3b..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/flot-build.bat.svn-base +++ /dev/null @@ -1,3 +0,0 @@ -java -jar yuicompressor-2.4.2.jar --type js --charset utf-8 jquery.flot.js -o jquery.flot.pack.js - -pause diff --git a/forum/skins/default/media/js/.svn/text-base/html_sanitizer.js.svn-base b/forum/skins/default/media/js/.svn/text-base/html_sanitizer.js.svn-base deleted file mode 100644 index faba90061558d15cad7c92f62ebb9a36c3ae15de..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/html_sanitizer.js.svn-base +++ /dev/null @@ -1,36 +0,0 @@ -{var html4={},html,html_sanitize;html4.atype={'NONE':0,'URI':1,'URI_FRAGMENT':11,'SCRIPT':2,'STYLE':3,'ID':4,'IDREF':5,'IDREFS':6,'GLOBAL_NAME':7,'LOCAL_NAME':8,'CLASSES':9,'FRAME_TARGET':10},html4.ATTRIBS={'*::class':9,'*::dir':0,'*::id':4,'*::lang':0,'*::onclick':2,'*::ondblclick':2,'*::onkeydown':2,'*::onkeypress':2,'*::onkeyup':2,'*::onload':2,'*::onmousedown':2,'*::onmousemove':2,'*::onmouseout':2,'*::onmouseover':2,'*::onmouseup':2,'*::style':3,'*::title':0,'a::accesskey':0,'a::coords':0,'a::href':1,'a::hreflang':0,'a::name':7,'a::onblur':2,'a::onfocus':2,'a::rel':0,'a::rev':0,'a::shape':0,'a::tabindex':0,'a::target':10,'a::type':0,'area::accesskey':0,'area::alt':0,'area::coords':0,'area::href':1,'area::nohref':0,'area::onblur':2,'area::onfocus':2,'area::shape':0,'area::tabindex':0,'area::target':10,'bdo::dir':0,'blockquote::cite':1,'br::clear':0,'button::accesskey':0,'button::disabled':0,'button::name':8,'button::onblur':2,'button::onfocus':2,'button::tabindex':0,'button::type':0,'button::value':0,'canvas::height':0,'canvas::width':0,'caption::align':0,'col::align':0,'col::char':0,'col::charoff':0,'col::span':0,'col::valign':0,'col::width':0,'colgroup::align':0,'colgroup::char':0,'colgroup::charoff':0,'colgroup::span':0,'colgroup::valign':0,'colgroup::width':0,'del::cite':1,'del::datetime':0,'dir::compact':0,'div::align':0,'dl::compact':0,'font::color':0,'font::face':0,'font::size':0,'form::accept':0,'form::action':1,'form::autocomplete':0,'form::enctype':0,'form::method':0,'form::name':7,'form::onreset':2,'form::onsubmit':2,'form::target':10,'h1::align':0,'h2::align':0,'h3::align':0,'h4::align':0,'h5::align':0,'h6::align':0,'hr::align':0,'hr::noshade':0,'hr::size':0,'hr::width':0,'iframe::align':0,'iframe::frameborder':0,'iframe::height':0,'iframe::marginheight':0,'iframe::marginwidth':0,'iframe::width':0,'img::align':0,'img::alt':0,'img::border':0,'img::height':0,'img::hspace':0,'img::ismap':0,'img::name':7,'img::src':1,'img::usemap':11,'img::vspace':0,'img::width':0,'input::accept':0,'input::accesskey':0,'input::align':0,'input::alt':0,'input::autocomplete':0,'input::checked':0,'input::disabled':0,'input::ismap':0,'input::maxlength':0,'input::name':8,'input::onblur':2,'input::onchange':2,'input::onfocus':2,'input::onselect':2,'input::readonly':0,'input::size':0,'input::src':1,'input::tabindex':0,'input::type':0,'input::usemap':11,'input::value':0,'ins::cite':1,'ins::datetime':0,'label::accesskey':0,'label::for':5,'label::onblur':2,'label::onfocus':2,'legend::accesskey':0,'legend::align':0,'li::type':0,'li::value':0,'map::name':7,'menu::compact':0,'ol::compact':0,'ol::start':0,'ol::type':0,'optgroup::disabled':0,'optgroup::label':0,'option::disabled':0,'option::label':0,'option::selected':0,'option::value':0,'p::align':0,'pre::width':0,'q::cite':1,'select::disabled':0,'select::multiple':0,'select::name':8,'select::onblur':2,'select::onchange':2,'select::onfocus':2,'select::size':0,'select::tabindex':0,'table::align':0,'table::bgcolor':0,'table::border':0,'table::cellpadding':0,'table::cellspacing':0,'table::frame':0,'table::rules':0,'table::summary':0,'table::width':0,'tbody::align':0,'tbody::char':0,'tbody::charoff':0,'tbody::valign':0,'td::abbr':0,'td::align':0,'td::axis':0,'td::bgcolor':0,'td::char':0,'td::charoff':0,'td::colspan':0,'td::headers':6,'td::height':0,'td::nowrap':0,'td::rowspan':0,'td::scope':0,'td::valign':0,'td::width':0,'textarea::accesskey':0,'textarea::cols':0,'textarea::disabled':0,'textarea::name':8,'textarea::onblur':2,'textarea::onchange':2,'textarea::onfocus':2,'textarea::onselect':2,'textarea::readonly':0,'textarea::rows':0,'textarea::tabindex':0,'tfoot::align':0,'tfoot::char':0,'tfoot::charoff':0,'tfoot::valign':0,'th::abbr':0,'th::align':0,'th::axis':0,'th::bgcolor':0,'th::char':0,'th::charoff':0,'th::colspan':0,'th::headers':6,'th::height':0,'th::nowrap':0,'th::rowspan':0,'th::scope':0,'th::valign':0,'th::width':0,'thead::align':0,'thead::char':0,'thead::charoff':0,'thead::valign':0,'tr::align':0,'tr::bgcolor':0,'tr::char':0,'tr::charoff':0,'tr::valign':0,'ul::compact':0,'ul::type':0},html4.eflags={'OPTIONAL_ENDTAG':1,'EMPTY':2,'CDATA':4,'RCDATA':8,'UNSAFE':16,'FOLDABLE':32,'SCRIPT':64,'STYLE':128},html4.ELEMENTS={'a':0,'abbr':0,'acronym':0,'address':0,'applet':16,'area':2,'b':0,'base':18,'basefont':18,'bdo':0,'big':0,'blockquote':0,'body':49,'br':2,'button':0,'canvas':0,'caption':0,'center':0,'cite':0,'code':0,'col':2,'colgroup':1,'dd':1,'del':0,'dfn':0,'dir':0,'div':0,'dl':0,'dt':1,'em':0,'fieldset':0,'font':0,'form':0,'frame':18,'frameset':16,'h1':0,'h2':0,'h3':0,'h4':0,'h5':0,'h6':0,'head':49,'hr':2,'html':49,'i':0,'iframe':4,'img':2,'input':2,'ins':0,'isindex':18,'kbd':0,'label':0,'legend':0,'li':1,'link':18,'map':0,'menu':0,'meta':18,'nav':0,'nobr':0,'noembed':4,'noframes':20,'noscript':20,'object':16,'ol':0,'optgroup':0,'option':1,'p':1,'param':18,'pre':0,'q':0,'s':0,'samp':0,'script':84,'select':0,'small':0,'span':0,'strike':0,'strong':0,'style':148,'sub':0,'sup':0,'table':0,'tbody':1,'td':1,'textarea':8,'tfoot':1,'th':1,'thead':1,'title':24,'tr':1,'tt':0,'u':0,'ul':0,'var':0},html4.ueffects={'NOT_LOADED':0,'SAME_DOCUMENT':1,'NEW_DOCUMENT':2},html4.URIEFFECTS={'a::href':2,'area::href':2,'blockquote::cite':0,'body::background':1,'del::cite':0,'form::action':2,'img::src':1,'input::src':1,'ins::cite':0,'q::cite':0},html4.ltypes={'UNSANDBOXED':2,'SANDBOXED':1,'DATA':0},html4.LOADERTYPES={'a::href':2,'area::href':2,'blockquote::cite':2,'body::background':1,'del::cite':2,'form::action':2,'img::src':1,'input::src':1,'ins::cite':2,'q::cite':2},html=(function(html4){var - ENTITIES,INSIDE_TAG_TOKEN,OUTSIDE_TAG_TOKEN,URI_SCHEME_RE,WHITELISTED_SCHEMES,ampRe,decimalEscapeRe,entityRe,gtRe,hexEscapeRe,lcase,looseAmpRe,ltRe,nulRe,quotRe;'script'==='SCRIPT'.toLowerCase()?(lcase=function(s){return s.toLowerCase()}):(lcase=function(s){return s.replace(/[A-Z]/g,function(ch){return String.fromCharCode(ch.charCodeAt(0)|32)})}),ENTITIES={'lt':'<','gt':'>','amp':'&','nbsp':'\xa0','quot':'\"','apos':'\''},WHITELISTED_SCHEMES=/^(?:https?|mailto)$/i,decimalEscapeRe=/^#(\d+)$/,hexEscapeRe=/^#x([0-9A-Fa-f]+)$/;function - lookupEntity(name){var m;return name=lcase(name),ENTITIES.hasOwnProperty(name)?ENTITIES[name]:(m=name.match(decimalEscapeRe),m?String.fromCharCode(parseInt(m[1],10)):(m=name.match(hexEscapeRe))?String.fromCharCode(parseInt(m[1],16)):'')}function - decodeOneEntity(_,name){return lookupEntity(name)}nulRe=/\0/g;function stripNULs(s){return s.replace(nulRe,'')}entityRe=/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g;function - unescapeEntities(s){return s.replace(entityRe,decodeOneEntity)}ampRe=/&/g,looseAmpRe=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,ltRe=/</g,gtRe=/>/g,quotRe=/\"/g;function - escapeAttrib(s){return(''+s).replace(ampRe,'&').replace(ltRe,'<').replace(gtRe,'>').replace(quotRe,'"')}function - normalizeRCData(rcdata){return rcdata.replace(looseAmpRe,'&$1').replace(ltRe,'<').replace(gtRe,'>')}INSIDE_TAG_TOKEN=new - RegExp('^\\s*(?:(?:([a-z][a-z-]*)(\\s*=\\s*(\"[^\"]*\"|\'[^\']*\'|(?=[a-z][a-z-]*\\s*=)|[^>\"\'\\s]*))?)|(/?>)|[\\s\\S][^a-z\\s>]*)','i'),OUTSIDE_TAG_TOKEN=new - RegExp('^(?:&(\\#[0-9]+|\\#[x][0-9a-f]+|\\w+);|<!--[\\s\\S]*?-->|<!\\w[^>]*>|<\\?[^>*]*>|<(/)?([a-z][a-z0-9]*)|([^<&>]+)|([<&>]))','i');function - makeSaxParser(handler){return function parse(htmlText,param){var attribName,attribs,dataEnd,decodedValue,eflags,encodedValue,htmlLower,inTag,m,openTag,tagName;htmlText=String(htmlText),htmlLower=null,inTag=false,attribs=[],tagName=void - 0,eflags=void 0,openTag=void 0,handler.startDoc&&handler.startDoc(param);while(htmlText){m=htmlText.match(inTag?INSIDE_TAG_TOKEN:OUTSIDE_TAG_TOKEN),htmlText=htmlText.substring(m[0].length);if(inTag){if(m[1]){attribName=lcase(m[1]);if(m[2]){encodedValue=m[3];switch(encodedValue.charCodeAt(0)){case -34:case 39:encodedValue=encodedValue.substring(1,encodedValue.length-1)}decodedValue=unescapeEntities(stripNULs(encodedValue))}else - decodedValue=attribName;attribs.push(attribName,decodedValue)}else if(m[4])eflags!==void - 0&&(openTag?handler.startTag&&handler.startTag(tagName,attribs,param):handler.endTag&&handler.endTag(tagName,param)),openTag&&eflags&(html4.eflags.CDATA|html4.eflags.RCDATA)&&(htmlLower===null?(htmlLower=lcase(htmlText)):(htmlLower=htmlLower.substring(htmlLower.length-htmlText.length)),dataEnd=htmlLower.indexOf('</'+tagName),dataEnd<0&&(dataEnd=htmlText.length),dataEnd&&(eflags&html4.eflags.CDATA?handler.cdata&&handler.cdata(htmlText.substring(0,dataEnd),param):handler.rcdata&&handler.rcdata(normalizeRCData(htmlText.substring(0,dataEnd)),param),htmlText=htmlText.substring(dataEnd))),tagName=eflags=openTag=void - 0,attribs.length=0,inTag=false}else if(m[1])handler.pcdata&&handler.pcdata(m[0],param);else -if(m[3])openTag=!m[2],inTag=true,tagName=lcase(m[3]),eflags=html4.ELEMENTS.hasOwnProperty(tagName)?html4.ELEMENTS[tagName]:void - 0;else if(m[4])handler.pcdata&&handler.pcdata(m[4],param);else if(m[5]){if(handler.pcdata)switch(m[5]){case'<':handler.pcdata('<',param);break;case'>':handler.pcdata('>',param);break;case'&':handler.pcdata('&',param)}}}handler.endDoc&&handler.endDoc(param)}}function - makeHtmlSanitizer(tagPolicy){var ignoring,stack;return makeSaxParser({'startDoc':function(_){stack=[],ignoring=false},'startTag':function(tagName,attribs,out){var - attribName,eflags,i,n,value;if(ignoring)return;if(!html4.ELEMENTS.hasOwnProperty(tagName))return;eflags=html4.ELEMENTS[tagName];if(eflags&html4.eflags.FOLDABLE)return;attribs=tagPolicy(tagName,attribs);if(!attribs)return ignoring=!(eflags&html4.eflags.EMPTY),void - 0;eflags&html4.eflags.EMPTY||stack.push(tagName),out.push('<',tagName);for(i=0,n=attribs.length;i<n;i+=2)attribName=attribs[i],value=attribs[i+1],value!==null&&value!==void - 0&&out.push(' ',attribName,'=\"',escapeAttrib(value),'\"');out.push('>')},'endTag':function(tagName,out){var - eflags,i,index,stackEl;if(ignoring)return ignoring=false,void 0;if(!html4.ELEMENTS.hasOwnProperty(tagName))return;eflags=html4.ELEMENTS[tagName];if(!(eflags&(html4.eflags.EMPTY|html4.eflags.FOLDABLE))){if(eflags&html4.eflags.OPTIONAL_ENDTAG)for(index=stack.length;--index>=0;){stackEl=stack[index];if(stackEl===tagName)break;if(!(html4.ELEMENTS[stackEl]&html4.eflags.OPTIONAL_ENDTAG))return}else - for(index=stack.length;--index>=0;)if(stack[index]===tagName)break;if(index<0)return;for(i=stack.length;--i>index;)stackEl=stack[i],html4.ELEMENTS[stackEl]&html4.eflags.OPTIONAL_ENDTAG||out.push('</',stackEl,'>');stack.length=index,out.push('</',tagName,'>')}},'pcdata':function(text,out){ignoring||out.push(text)},'rcdata':function(text,out){ignoring||out.push(text)},'cdata':function(text,out){ignoring||out.push(text)},'endDoc':function(out){var - i;for(i=stack.length;--i>=0;)out.push('</',stack[i],'>');stack.length=0}})}URI_SCHEME_RE=new - RegExp('^(?:([^:/?#]+):)?');function sanitizeAttribs(tagName,attribs,opt_uriPolicy,opt_nmTokenPolicy){var - attribKey,attribName,atype,i,parsedUri,value;for(i=0;i<attribs.length;i+=2){attribName=attribs[i],value=attribs[i+1],atype=null,((attribKey=tagName+'::'+attribName,html4.ATTRIBS.hasOwnProperty(attribKey))||(attribKey='*::'+attribName,html4.ATTRIBS.hasOwnProperty(attribKey)))&&(atype=html4.ATTRIBS[attribKey]);if(atype!==null)switch(atype){case -html4.atype.NONE:break;case html4.atype.SCRIPT:case html4.atype.STYLE:value=null;break;case -html4.atype.ID:case html4.atype.IDREF:case html4.atype.IDREFS:case html4.atype.GLOBAL_NAME:case -html4.atype.LOCAL_NAME:case html4.atype.CLASSES:value=opt_nmTokenPolicy?opt_nmTokenPolicy(value):value;break;case -html4.atype.URI:parsedUri=(''+value).match(URI_SCHEME_RE),parsedUri?!parsedUri[1]||WHITELISTED_SCHEMES.test(parsedUri[1])?(value=opt_uriPolicy?opt_uriPolicy(value):null):(value=null):(value=null);break;case -html4.atype.URI_FRAGMENT:value&&'#'===value.charAt(0)?(value=value.substring(1),value=opt_nmTokenPolicy?opt_nmTokenPolicy(value):value,value!==null&&value!==void - 0&&(value='#'+value)):(value=null);break;default:value=null}else value=null;attribs[i+1]=value}return attribs}function - makeTagPolicy(opt_uriPolicy,opt_nmTokenPolicy){return function(tagName,attribs){if(!(html4.ELEMENTS[tagName]&html4.eflags.UNSAFE))return sanitizeAttribs(tagName,attribs,opt_uriPolicy,opt_nmTokenPolicy)}}function - sanitizeWithPolicy(inputHtml,tagPolicy){var outputArray=[];return makeHtmlSanitizer(tagPolicy)(inputHtml,outputArray),outputArray.join('')}function - sanitize(inputHtml,opt_uriPolicy,opt_nmTokenPolicy){var tagPolicy=makeTagPolicy(opt_uriPolicy,opt_nmTokenPolicy);return sanitizeWithPolicy(inputHtml,tagPolicy)}return{'escapeAttrib':escapeAttrib,'makeHtmlSanitizer':makeHtmlSanitizer,'makeSaxParser':makeSaxParser,'makeTagPolicy':makeTagPolicy,'normalizeRCData':normalizeRCData,'sanitize':sanitize,'sanitizeAttribs':sanitizeAttribs,'sanitizeWithPolicy':sanitizeWithPolicy,'unescapeEntities':unescapeEntities}})(html4),html_sanitize=html.sanitize,typeof - window!=='undefined'&&(window.html=html,window.html_sanitize=html_sanitize)} \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/jquery-1.2.6.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery-1.2.6.js.svn-base deleted file mode 100644 index 88e661eec806dc61eb5dfbd08fd0bae8343f96be..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery-1.2.6.js.svn-base +++ /dev/null @@ -1,3549 +0,0 @@ -(function(){ -/* - * jQuery 1.2.6 - New Wave Javascript - * - * Copyright (c) 2008 John Resig (jquery.com) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * $Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008) $ - * $Rev: 5685 $ - */ - -// Map over jQuery in case of overwrite -var _jQuery = window.jQuery, -// Map over the $ in case of overwrite - _$ = window.$; - -var jQuery = window.jQuery = window.$ = function( selector, context ) { - // The jQuery object is actually just the init constructor 'enhanced' - return new jQuery.fn.init( selector, context ); -}; - -// A simple way to check for HTML strings or ID strings -// (both of which we optimize for) -var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/, - -// Is it a simple selector - isSimple = /^.[^:#\[\.]*$/, - -// Will speed up references to undefined, and allows munging its name. - undefined; - -jQuery.fn = jQuery.prototype = { - init: function( selector, context ) { - // Make sure that a selection was provided - selector = selector || document; - - // Handle $(DOMElement) - if ( selector.nodeType ) { - this[0] = selector; - this.length = 1; - return this; - } - // Handle HTML strings - if ( typeof selector == "string" ) { - // Are we dealing with HTML string or an ID? - var match = quickExpr.exec( selector ); - - // Verify a match, and that no context was specified for #id - if ( match && (match[1] || !context) ) { - - // HANDLE: $(html) -> $(array) - if ( match[1] ) - selector = jQuery.clean( [ match[1] ], context ); - - // HANDLE: $("#id") - else { - var elem = document.getElementById( match[3] ); - - // Make sure an element was located - if ( elem ){ - // Handle the case where IE and Opera return items - // by name instead of ID - if ( elem.id != match[3] ) - return jQuery().find( selector ); - - // Otherwise, we inject the element directly into the jQuery object - return jQuery( elem ); - } - selector = []; - } - - // HANDLE: $(expr, [context]) - // (which is just equivalent to: $(content).find(expr) - } else - return jQuery( context ).find( selector ); - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( jQuery.isFunction( selector ) ) - return jQuery( document )[ jQuery.fn.ready ? "ready" : "load" ]( selector ); - - return this.setArray(jQuery.makeArray(selector)); - }, - - // The current version of jQuery being used - jquery: "1.2.6", - - // The number of elements contained in the matched element set - size: function() { - return this.length; - }, - - // The number of elements contained in the matched element set - length: 0, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - return num == undefined ? - - // Return a 'clean' array - jQuery.makeArray( this ) : - - // Return just the object - this[ num ]; - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems ) { - // Build a new jQuery matched element set - var ret = jQuery( elems ); - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - - // Return the newly-formed element set - return ret; - }, - - // Force the current matched set of elements to become - // the specified array of elements (destroying the stack in the process) - // You should use pushStack() in order to do this, but maintain the stack - setArray: function( elems ) { - // Resetting the length to 0, then using the native Array push - // is a super-fast way to populate an object with array-like properties - this.length = 0; - Array.prototype.push.apply( this, elems ); - - return this; - }, - - // Execute a callback for every element in the matched set. - // (You can seed the arguments with an array of args, but this is - // only used internally.) - each: function( callback, args ) { - return jQuery.each( this, callback, args ); - }, - - // Determine the position of an element within - // the matched set of elements - index: function( elem ) { - var ret = -1; - - // Locate the position of the desired element - return jQuery.inArray( - // If it receives a jQuery object, the first element is used - elem && elem.jquery ? elem[0] : elem - , this ); - }, - - attr: function( name, value, type ) { - var options = name; - - // Look for the case where we're accessing a style value - if ( name.constructor == String ) - if ( value === undefined ) - return this[0] && jQuery[ type || "attr" ]( this[0], name ); - - else { - options = {}; - options[ name ] = value; - } - - // Check to see if we're setting style values - return this.each(function(i){ - // Set all the styles - for ( name in options ) - jQuery.attr( - type ? - this.style : - this, - name, jQuery.prop( this, options[ name ], type, i, name ) - ); - }); - }, - - css: function( key, value ) { - // ignore negative width and height values - if ( (key == 'width' || key == 'height') && parseFloat(value) < 0 ) - value = undefined; - return this.attr( key, value, "curCSS" ); - }, - - text: function( text ) { - if ( typeof text != "object" && text != null ) - return this.empty().append( (this[0] && this[0].ownerDocument || document).createTextNode( text ) ); - - var ret = ""; - - jQuery.each( text || this, function(){ - jQuery.each( this.childNodes, function(){ - if ( this.nodeType != 8 ) - ret += this.nodeType != 1 ? - this.nodeValue : - jQuery.fn.text( [ this ] ); - }); - }); - - return ret; - }, - - wrapAll: function( html ) { - if ( this[0] ) - // The elements to wrap the target around - jQuery( html, this[0].ownerDocument ) - .clone() - .insertBefore( this[0] ) - .map(function(){ - var elem = this; - - while ( elem.firstChild ) - elem = elem.firstChild; - - return elem; - }) - .append(this); - - return this; - }, - - wrapInner: function( html ) { - return this.each(function(){ - jQuery( this ).contents().wrapAll( html ); - }); - }, - - wrap: function( html ) { - return this.each(function(){ - jQuery( this ).wrapAll( html ); - }); - }, - - append: function() { - return this.domManip(arguments, true, false, function(elem){ - if (this.nodeType == 1) - this.appendChild( elem ); - }); - }, - - prepend: function() { - return this.domManip(arguments, true, true, function(elem){ - if (this.nodeType == 1) - this.insertBefore( elem, this.firstChild ); - }); - }, - - before: function() { - return this.domManip(arguments, false, false, function(elem){ - this.parentNode.insertBefore( elem, this ); - }); - }, - - after: function() { - return this.domManip(arguments, false, true, function(elem){ - this.parentNode.insertBefore( elem, this.nextSibling ); - }); - }, - - end: function() { - return this.prevObject || jQuery( [] ); - }, - - find: function( selector ) { - var elems = jQuery.map(this, function(elem){ - return jQuery.find( selector, elem ); - }); - - return this.pushStack( /[^+>] [^+>]/.test( selector ) || selector.indexOf("..") > -1 ? - jQuery.unique( elems ) : - elems ); - }, - - clone: function( events ) { - // Do the clone - var ret = this.map(function(){ - if ( jQuery.browser.msie && !jQuery.isXMLDoc(this) ) { - // IE copies events bound via attachEvent when - // using cloneNode. Calling detachEvent on the - // clone will also remove the events from the orignal - // In order to get around this, we use innerHTML. - // Unfortunately, this means some modifications to - // attributes in IE that are actually only stored - // as properties will not be copied (such as the - // the name attribute on an input). - var clone = this.cloneNode(true), - container = document.createElement("div"); - container.appendChild(clone); - return jQuery.clean([container.innerHTML])[0]; - } else - return this.cloneNode(true); - }); - - // Need to set the expando to null on the cloned set if it exists - // removeData doesn't work here, IE removes it from the original as well - // this is primarily for IE but the data expando shouldn't be copied over in any browser - var clone = ret.find("*").andSelf().each(function(){ - if ( this[ expando ] != undefined ) - this[ expando ] = null; - }); - - // Copy the events from the original to the clone - if ( events === true ) - this.find("*").andSelf().each(function(i){ - if (this.nodeType == 3) - return; - var events = jQuery.data( this, "events" ); - - for ( var type in events ) - for ( var handler in events[ type ] ) - jQuery.event.add( clone[ i ], type, events[ type ][ handler ], events[ type ][ handler ].data ); - }); - - // Return the cloned set - return ret; - }, - - filter: function( selector ) { - return this.pushStack( - jQuery.isFunction( selector ) && - jQuery.grep(this, function(elem, i){ - return selector.call( elem, i ); - }) || - - jQuery.multiFilter( selector, this ) ); - }, - - not: function( selector ) { - if ( selector.constructor == String ) - // test special case where just one selector is passed in - if ( isSimple.test( selector ) ) - return this.pushStack( jQuery.multiFilter( selector, this, true ) ); - else - selector = jQuery.multiFilter( selector, this ); - - var isArrayLike = selector.length && selector[selector.length - 1] !== undefined && !selector.nodeType; - return this.filter(function() { - return isArrayLike ? jQuery.inArray( this, selector ) < 0 : this != selector; - }); - }, - - add: function( selector ) { - return this.pushStack( jQuery.unique( jQuery.merge( - this.get(), - typeof selector == 'string' ? - jQuery( selector ) : - jQuery.makeArray( selector ) - ))); - }, - - is: function( selector ) { - return !!selector && jQuery.multiFilter( selector, this ).length > 0; - }, - - hasClass: function( selector ) { - return this.is( "." + selector ); - }, - - val: function( value ) { - if ( value == undefined ) { - - if ( this.length ) { - var elem = this[0]; - - // We need to handle select boxes special - if ( jQuery.nodeName( elem, "select" ) ) { - var index = elem.selectedIndex, - values = [], - options = elem.options, - one = elem.type == "select-one"; - - // Nothing was selected - if ( index < 0 ) - return null; - - // Loop through all the selected options - for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) { - var option = options[ i ]; - - if ( option.selected ) { - // Get the specifc value for the option - value = jQuery.browser.msie && !option.attributes.value.specified ? option.text : option.value; - - // We don't need an array for one selects - if ( one ) - return value; - - // Multi-Selects return an array - values.push( value ); - } - } - - return values; - - // Everything else, we just grab the value - } else - return (this[0].value || "").replace(/\r/g, ""); - - } - - return undefined; - } - - if( value.constructor == Number ) - value += ''; - - return this.each(function(){ - if ( this.nodeType != 1 ) - return; - - if ( value.constructor == Array && /radio|checkbox/.test( this.type ) ) - this.checked = (jQuery.inArray(this.value, value) >= 0 || - jQuery.inArray(this.name, value) >= 0); - - else if ( jQuery.nodeName( this, "select" ) ) { - var values = jQuery.makeArray(value); - - jQuery( "option", this ).each(function(){ - this.selected = (jQuery.inArray( this.value, values ) >= 0 || - jQuery.inArray( this.text, values ) >= 0); - }); - - if ( !values.length ) - this.selectedIndex = -1; - - } else - this.value = value; - }); - }, - - html: function( value ) { - return value == undefined ? - (this[0] ? - this[0].innerHTML : - null) : - this.empty().append( value ); - }, - - replaceWith: function( value ) { - return this.after( value ).remove(); - }, - - eq: function( i ) { - return this.slice( i, i + 1 ); - }, - - slice: function() { - return this.pushStack( Array.prototype.slice.apply( this, arguments ) ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map(this, function(elem, i){ - return callback.call( elem, i, elem ); - })); - }, - - andSelf: function() { - return this.add( this.prevObject ); - }, - - data: function( key, value ){ - var parts = key.split("."); - parts[1] = parts[1] ? "." + parts[1] : ""; - - if ( value === undefined ) { - var data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]); - - if ( data === undefined && this.length ) - data = jQuery.data( this[0], key ); - - return data === undefined && parts[1] ? - this.data( parts[0] ) : - data; - } else - return this.trigger("setData" + parts[1] + "!", [parts[0], value]).each(function(){ - jQuery.data( this, key, value ); - }); - }, - - removeData: function( key ){ - return this.each(function(){ - jQuery.removeData( this, key ); - }); - }, - - domManip: function( args, table, reverse, callback ) { - var clone = this.length > 1, elems; - - return this.each(function(){ - if ( !elems ) { - elems = jQuery.clean( args, this.ownerDocument ); - - if ( reverse ) - elems.reverse(); - } - - var obj = this; - - if ( table && jQuery.nodeName( this, "table" ) && jQuery.nodeName( elems[0], "tr" ) ) - obj = this.getElementsByTagName("tbody")[0] || this.appendChild( this.ownerDocument.createElement("tbody") ); - - var scripts = jQuery( [] ); - - jQuery.each(elems, function(){ - var elem = clone ? - jQuery( this ).clone( true )[0] : - this; - - // execute all scripts after the elements have been injected - if ( jQuery.nodeName( elem, "script" ) ) - scripts = scripts.add( elem ); - else { - // Remove any inner scripts for later evaluation - if ( elem.nodeType == 1 ) - scripts = scripts.add( jQuery( "script", elem ).remove() ); - - // Inject the elements into the document - callback.call( obj, elem ); - } - }); - - scripts.each( evalScript ); - }); - } -}; - -// Give the init function the jQuery prototype for later instantiation -jQuery.fn.init.prototype = jQuery.fn; - -function evalScript( i, elem ) { - if ( elem.src ) - jQuery.ajax({ - url: elem.src, - async: false, - dataType: "script" - }); - - else - jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || "" ); - - if ( elem.parentNode ) - elem.parentNode.removeChild( elem ); -} - -function now(){ - return +new Date; -} - -jQuery.extend = jQuery.fn.extend = function() { - // copy reference to target object - var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options; - - // Handle a deep copy situation - if ( target.constructor == Boolean ) { - deep = target; - target = arguments[1] || {}; - // skip the boolean and the target - i = 2; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target != "object" && typeof target != "function" ) - target = {}; - - // extend jQuery itself if only one argument is passed - if ( length == i ) { - target = this; - --i; - } - - for ( ; i < length; i++ ) - // Only deal with non-null/undefined values - if ( (options = arguments[ i ]) != null ) - // Extend the base object - for ( var name in options ) { - var src = target[ name ], copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) - continue; - - // Recurse if we're merging object values - if ( deep && copy && typeof copy == "object" && !copy.nodeType ) - target[ name ] = jQuery.extend( deep, - // Never move original objects, clone them - src || ( copy.length != null ? [ ] : { } ) - , copy ); - - // Don't bring in undefined values - else if ( copy !== undefined ) - target[ name ] = copy; - - } - - // Return the modified object - return target; -}; - -var expando = "jQuery" + now(), uuid = 0, windowData = {}, - // exclude the following css properties to add px - exclude = /z-?index|font-?weight|opacity|zoom|line-?height/i, - // cache defaultView - defaultView = document.defaultView || {}; - -jQuery.extend({ - noConflict: function( deep ) { - window.$ = _$; - - if ( deep ) - window.jQuery = _jQuery; - - return jQuery; - }, - - // See test/unit/core.js for details concerning this function. - isFunction: function( fn ) { - return !!fn && typeof fn != "string" && !fn.nodeName && - fn.constructor != Array && /^[\s[]?function/.test( fn + "" ); - }, - - // check if an element is in a (or is an) XML document - isXMLDoc: function( elem ) { - return elem.documentElement && !elem.body || - elem.tagName && elem.ownerDocument && !elem.ownerDocument.body; - }, - - // Evalulates a script in a global context - globalEval: function( data ) { - data = jQuery.trim( data ); - - if ( data ) { - // Inspired by code by Andrea Giammarchi - // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html - var head = document.getElementsByTagName("head")[0] || document.documentElement, - script = document.createElement("script"); - - script.type = "text/javascript"; - if ( jQuery.browser.msie ) - script.text = data; - else - script.appendChild( document.createTextNode( data ) ); - - // Use insertBefore instead of appendChild to circumvent an IE6 bug. - // This arises when a base node is used (#2709). - head.insertBefore( script, head.firstChild ); - head.removeChild( script ); - } - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toUpperCase() == name.toUpperCase(); - }, - - cache: {}, - - data: function( elem, name, data ) { - elem = elem == window ? - windowData : - elem; - - var id = elem[ expando ]; - - // Compute a unique ID for the element - if ( !id ) - id = elem[ expando ] = ++uuid; - - // Only generate the data cache if we're - // trying to access or manipulate it - if ( name && !jQuery.cache[ id ] ) - jQuery.cache[ id ] = {}; - - // Prevent overriding the named cache with undefined values - if ( data !== undefined ) - jQuery.cache[ id ][ name ] = data; - - // Return the named cache data, or the ID for the element - return name ? - jQuery.cache[ id ][ name ] : - id; - }, - - removeData: function( elem, name ) { - elem = elem == window ? - windowData : - elem; - - var id = elem[ expando ]; - - // If we want to remove a specific section of the element's data - if ( name ) { - if ( jQuery.cache[ id ] ) { - // Remove the section of cache data - delete jQuery.cache[ id ][ name ]; - - // If we've removed all the data, remove the element's cache - name = ""; - - for ( name in jQuery.cache[ id ] ) - break; - - if ( !name ) - jQuery.removeData( elem ); - } - - // Otherwise, we want to remove all of the element's data - } else { - // Clean up the element expando - try { - delete elem[ expando ]; - } catch(e){ - // IE has trouble directly removing the expando - // but it's ok with using removeAttribute - if ( elem.removeAttribute ) - elem.removeAttribute( expando ); - } - - // Completely remove the data cache - delete jQuery.cache[ id ]; - } - }, - - // args is for internal usage only - each: function( object, callback, args ) { - var name, i = 0, length = object.length; - - if ( args ) { - if ( length == undefined ) { - for ( name in object ) - if ( callback.apply( object[ name ], args ) === false ) - break; - } else - for ( ; i < length; ) - if ( callback.apply( object[ i++ ], args ) === false ) - break; - - // A special, fast, case for the most common use of each - } else { - if ( length == undefined ) { - for ( name in object ) - if ( callback.call( object[ name ], name, object[ name ] ) === false ) - break; - } else - for ( var value = object[0]; - i < length && callback.call( value, i, value ) !== false; value = object[++i] ){} - } - - return object; - }, - - prop: function( elem, value, type, i, name ) { - // Handle executable functions - if ( jQuery.isFunction( value ) ) - value = value.call( elem, i ); - - // Handle passing in a number to a CSS property - return value && value.constructor == Number && type == "curCSS" && !exclude.test( name ) ? - value + "px" : - value; - }, - - className: { - // internal only, use addClass("class") - add: function( elem, classNames ) { - jQuery.each((classNames || "").split(/\s+/), function(i, className){ - if ( elem.nodeType == 1 && !jQuery.className.has( elem.className, className ) ) - elem.className += (elem.className ? " " : "") + className; - }); - }, - - // internal only, use removeClass("class") - remove: function( elem, classNames ) { - if (elem.nodeType == 1) - elem.className = classNames != undefined ? - jQuery.grep(elem.className.split(/\s+/), function(className){ - return !jQuery.className.has( classNames, className ); - }).join(" ") : - ""; - }, - - // internal only, use hasClass("class") - has: function( elem, className ) { - return jQuery.inArray( className, (elem.className || elem).toString().split(/\s+/) ) > -1; - } - }, - - // A method for quickly swapping in/out CSS properties to get correct calculations - swap: function( elem, options, callback ) { - var old = {}; - // Remember the old values, and insert the new ones - for ( var name in options ) { - old[ name ] = elem.style[ name ]; - elem.style[ name ] = options[ name ]; - } - - callback.call( elem ); - - // Revert the old values - for ( var name in options ) - elem.style[ name ] = old[ name ]; - }, - - css: function( elem, name, force ) { - if ( name == "width" || name == "height" ) { - var val, props = { position: "absolute", visibility: "hidden", display:"block" }, which = name == "width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ]; - - function getWH() { - val = name == "width" ? elem.offsetWidth : elem.offsetHeight; - var padding = 0, border = 0; - jQuery.each( which, function() { - padding += parseFloat(jQuery.curCSS( elem, "padding" + this, true)) || 0; - border += parseFloat(jQuery.curCSS( elem, "border" + this + "Width", true)) || 0; - }); - val -= Math.round(padding + border); - } - - if ( jQuery(elem).is(":visible") ) - getWH(); - else - jQuery.swap( elem, props, getWH ); - - return Math.max(0, val); - } - - return jQuery.curCSS( elem, name, force ); - }, - - curCSS: function( elem, name, force ) { - var ret, style = elem.style; - - // A helper method for determining if an element's values are broken - function color( elem ) { - if ( !jQuery.browser.safari ) - return false; - - // defaultView is cached - var ret = defaultView.getComputedStyle( elem, null ); - return !ret || ret.getPropertyValue("color") == ""; - } - - // We need to handle opacity special in IE - if ( name == "opacity" && jQuery.browser.msie ) { - ret = jQuery.attr( style, "opacity" ); - - return ret == "" ? - "1" : - ret; - } - // Opera sometimes will give the wrong display answer, this fixes it, see #2037 - if ( jQuery.browser.opera && name == "display" ) { - var save = style.outline; - style.outline = "0 solid black"; - style.outline = save; - } - - // Make sure we're using the right name for getting the float value - if ( name.match( /float/i ) ) - name = styleFloat; - - if ( !force && style && style[ name ] ) - ret = style[ name ]; - - else if ( defaultView.getComputedStyle ) { - - // Only "float" is needed here - if ( name.match( /float/i ) ) - name = "float"; - - name = name.replace( /([A-Z])/g, "-$1" ).toLowerCase(); - - var computedStyle = defaultView.getComputedStyle( elem, null ); - - if ( computedStyle && !color( elem ) ) - ret = computedStyle.getPropertyValue( name ); - - // If the element isn't reporting its values properly in Safari - // then some display: none elements are involved - else { - var swap = [], stack = [], a = elem, i = 0; - - // Locate all of the parent display: none elements - for ( ; a && color(a); a = a.parentNode ) - stack.unshift(a); - - // Go through and make them visible, but in reverse - // (It would be better if we knew the exact display type that they had) - for ( ; i < stack.length; i++ ) - if ( color( stack[ i ] ) ) { - swap[ i ] = stack[ i ].style.display; - stack[ i ].style.display = "block"; - } - - // Since we flip the display style, we have to handle that - // one special, otherwise get the value - ret = name == "display" && swap[ stack.length - 1 ] != null ? - "none" : - ( computedStyle && computedStyle.getPropertyValue( name ) ) || ""; - - // Finally, revert the display styles back - for ( i = 0; i < swap.length; i++ ) - if ( swap[ i ] != null ) - stack[ i ].style.display = swap[ i ]; - } - - // We should always get a number back from opacity - if ( name == "opacity" && ret == "" ) - ret = "1"; - - } else if ( elem.currentStyle ) { - var camelCase = name.replace(/\-(\w)/g, function(all, letter){ - return letter.toUpperCase(); - }); - - ret = elem.currentStyle[ name ] || elem.currentStyle[ camelCase ]; - - // From the awesome hack by Dean Edwards - // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291 - - // If we're not dealing with a regular pixel number - // but a number that has a weird ending, we need to convert it to pixels - if ( !/^\d+(px)?$/i.test( ret ) && /^\d/.test( ret ) ) { - // Remember the original values - var left = style.left, rsLeft = elem.runtimeStyle.left; - - // Put in the new values to get a computed value out - elem.runtimeStyle.left = elem.currentStyle.left; - style.left = ret || 0; - ret = style.pixelLeft + "px"; - - // Revert the changed values - style.left = left; - elem.runtimeStyle.left = rsLeft; - } - } - - return ret; - }, - - clean: function( elems, context ) { - var ret = []; - context = context || document; - // !context.createElement fails in IE with an error but returns typeof 'object' - if (typeof context.createElement == 'undefined') - context = context.ownerDocument || context[0] && context[0].ownerDocument || document; - - jQuery.each(elems, function(i, elem){ - if ( !elem ) - return; - - if ( elem.constructor == Number ) - elem += ''; - - // Convert html string into DOM nodes - if ( typeof elem == "string" ) { - // Fix "XHTML"-style tags in all browsers - elem = elem.replace(/(<(\w+)[^>]*?)\/>/g, function(all, front, tag){ - return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i) ? - all : - front + "></" + tag + ">"; - }); - - // Trim whitespace, otherwise indexOf won't work as expected - var tags = jQuery.trim( elem ).toLowerCase(), div = context.createElement("div"); - - var wrap = - // option or optgroup - !tags.indexOf("<opt") && - [ 1, "<select multiple='multiple'>", "</select>" ] || - - !tags.indexOf("<leg") && - [ 1, "<fieldset>", "</fieldset>" ] || - - tags.match(/^<(thead|tbody|tfoot|colg|cap)/) && - [ 1, "<table>", "</table>" ] || - - !tags.indexOf("<tr") && - [ 2, "<table><tbody>", "</tbody></table>" ] || - - // <thead> matched above - (!tags.indexOf("<td") || !tags.indexOf("<th")) && - [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ] || - - !tags.indexOf("<col") && - [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ] || - - // IE can't serialize <link> and <script> tags normally - jQuery.browser.msie && - [ 1, "div<div>", "</div>" ] || - - [ 0, "", "" ]; - - // Go to html and back, then peel off extra wrappers - div.innerHTML = wrap[1] + elem + wrap[2]; - - // Move to the right depth - while ( wrap[0]-- ) - div = div.lastChild; - - // Remove IE's autoinserted <tbody> from table fragments - if ( jQuery.browser.msie ) { - - // String was a <table>, *may* have spurious <tbody> - var tbody = !tags.indexOf("<table") && tags.indexOf("<tbody") < 0 ? - div.firstChild && div.firstChild.childNodes : - - // String was a bare <thead> or <tfoot> - wrap[1] == "<table>" && tags.indexOf("<tbody") < 0 ? - div.childNodes : - []; - - for ( var j = tbody.length - 1; j >= 0 ; --j ) - if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length ) - tbody[ j ].parentNode.removeChild( tbody[ j ] ); - - // IE completely kills leading whitespace when innerHTML is used - if ( /^\s/.test( elem ) ) - div.insertBefore( context.createTextNode( elem.match(/^\s*/)[0] ), div.firstChild ); - - } - - elem = jQuery.makeArray( div.childNodes ); - } - - if ( elem.length === 0 && (!jQuery.nodeName( elem, "form" ) && !jQuery.nodeName( elem, "select" )) ) - return; - - if ( elem[0] == undefined || jQuery.nodeName( elem, "form" ) || elem.options ) - ret.push( elem ); - - else - ret = jQuery.merge( ret, elem ); - - }); - - return ret; - }, - - attr: function( elem, name, value ) { - // don't set attributes on text and comment nodes - if (!elem || elem.nodeType == 3 || elem.nodeType == 8) - return undefined; - - var notxml = !jQuery.isXMLDoc( elem ), - // Whether we are setting (or getting) - set = value !== undefined, - msie = jQuery.browser.msie; - - // Try to normalize/fix the name - name = notxml && jQuery.props[ name ] || name; - - // Only do all the following if this is a node (faster for style) - // IE elem.getAttribute passes even for style - if ( elem.tagName ) { - - // These attributes require special treatment - var special = /href|src|style/.test( name ); - - // Safari mis-reports the default selected property of a hidden option - // Accessing the parent's selectedIndex property fixes it - if ( name == "selected" && jQuery.browser.safari ) - elem.parentNode.selectedIndex; - - // If applicable, access the attribute via the DOM 0 way - if ( name in elem && notxml && !special ) { - if ( set ){ - // We can't allow the type property to be changed (since it causes problems in IE) - if ( name == "type" && jQuery.nodeName( elem, "input" ) && elem.parentNode ) - throw "type property can't be changed"; - - elem[ name ] = value; - } - - // browsers index elements by id/name on forms, give priority to attributes. - if( jQuery.nodeName( elem, "form" ) && elem.getAttributeNode(name) ) - return elem.getAttributeNode( name ).nodeValue; - - return elem[ name ]; - } - - if ( msie && notxml && name == "style" ) - return jQuery.attr( elem.style, "cssText", value ); - - if ( set ) - // convert the value to a string (all browsers do this but IE) see #1070 - elem.setAttribute( name, "" + value ); - - var attr = msie && notxml && special - // Some attributes require a special call on IE - ? elem.getAttribute( name, 2 ) - : elem.getAttribute( name ); - - // Non-existent attributes return null, we normalize to undefined - return attr === null ? undefined : attr; - } - - // elem is actually elem.style ... set the style - - // IE uses filters for opacity - if ( msie && name == "opacity" ) { - if ( set ) { - // IE has trouble with opacity if it does not have layout - // Force it by setting the zoom level - elem.zoom = 1; - - // Set the alpha filter to set the opacity - elem.filter = (elem.filter || "").replace( /alpha\([^)]*\)/, "" ) + - (parseInt( value ) + '' == "NaN" ? "" : "alpha(opacity=" + value * 100 + ")"); - } - - return elem.filter && elem.filter.indexOf("opacity=") >= 0 ? - (parseFloat( elem.filter.match(/opacity=([^)]*)/)[1] ) / 100) + '': - ""; - } - - name = name.replace(/-([a-z])/ig, function(all, letter){ - return letter.toUpperCase(); - }); - - if ( set ) - elem[ name ] = value; - - return elem[ name ]; - }, - - trim: function( text ) { - return (text || "").replace( /^\s+|\s+$/g, "" ); - }, - - makeArray: function( array ) { - var ret = []; - - if( array != null ){ - var i = array.length; - //the window, strings and functions also have 'length' - if( i == null || array.split || array.setInterval || array.call ) - ret[0] = array; - else - while( i ) - ret[--i] = array[i]; - } - - return ret; - }, - - inArray: function( elem, array ) { - for ( var i = 0, length = array.length; i < length; i++ ) - // Use === because on IE, window == document - if ( array[ i ] === elem ) - return i; - - return -1; - }, - - merge: function( first, second ) { - // We have to loop this way because IE & Opera overwrite the length - // expando of getElementsByTagName - var i = 0, elem, pos = first.length; - // Also, we need to make sure that the correct elements are being returned - // (IE returns comment nodes in a '*' query) - if ( jQuery.browser.msie ) { - while ( elem = second[ i++ ] ) - if ( elem.nodeType != 8 ) - first[ pos++ ] = elem; - - } else - while ( elem = second[ i++ ] ) - first[ pos++ ] = elem; - - return first; - }, - - unique: function( array ) { - var ret = [], done = {}; - - try { - - for ( var i = 0, length = array.length; i < length; i++ ) { - var id = jQuery.data( array[ i ] ); - - if ( !done[ id ] ) { - done[ id ] = true; - ret.push( array[ i ] ); - } - } - - } catch( e ) { - ret = array; - } - - return ret; - }, - - grep: function( elems, callback, inv ) { - var ret = []; - - // Go through the array, only saving the items - // that pass the validator function - for ( var i = 0, length = elems.length; i < length; i++ ) - if ( !inv != !callback( elems[ i ], i ) ) - ret.push( elems[ i ] ); - - return ret; - }, - - map: function( elems, callback ) { - var ret = []; - - // Go through the array, translating each of the items to their - // new value (or values). - for ( var i = 0, length = elems.length; i < length; i++ ) { - var value = callback( elems[ i ], i ); - - if ( value != null ) - ret[ ret.length ] = value; - } - - return ret.concat.apply( [], ret ); - } -}); - -var userAgent = navigator.userAgent.toLowerCase(); - -// Figure out what browser is being used -jQuery.browser = { - version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [])[1], - safari: /webkit/.test( userAgent ), - opera: /opera/.test( userAgent ), - msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ), - mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ) -}; - -var styleFloat = jQuery.browser.msie ? - "styleFloat" : - "cssFloat"; - -jQuery.extend({ - // Check to see if the W3C box model is being used - boxModel: !jQuery.browser.msie || document.compatMode == "CSS1Compat", - - props: { - "for": "htmlFor", - "class": "className", - "float": styleFloat, - cssFloat: styleFloat, - styleFloat: styleFloat, - readonly: "readOnly", - maxlength: "maxLength", - cellspacing: "cellSpacing" - } -}); - -jQuery.each({ - parent: function(elem){return elem.parentNode;}, - parents: function(elem){return jQuery.dir(elem,"parentNode");}, - next: function(elem){return jQuery.nth(elem,2,"nextSibling");}, - prev: function(elem){return jQuery.nth(elem,2,"previousSibling");}, - nextAll: function(elem){return jQuery.dir(elem,"nextSibling");}, - prevAll: function(elem){return jQuery.dir(elem,"previousSibling");}, - siblings: function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);}, - children: function(elem){return jQuery.sibling(elem.firstChild);}, - contents: function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);} -}, function(name, fn){ - jQuery.fn[ name ] = function( selector ) { - var ret = jQuery.map( this, fn ); - - if ( selector && typeof selector == "string" ) - ret = jQuery.multiFilter( selector, ret ); - - return this.pushStack( jQuery.unique( ret ) ); - }; -}); - -jQuery.each({ - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after", - replaceAll: "replaceWith" -}, function(name, original){ - jQuery.fn[ name ] = function() { - var args = arguments; - - return this.each(function(){ - for ( var i = 0, length = args.length; i < length; i++ ) - jQuery( args[ i ] )[ original ]( this ); - }); - }; -}); - -jQuery.each({ - removeAttr: function( name ) { - jQuery.attr( this, name, "" ); - if (this.nodeType == 1) - this.removeAttribute( name ); - }, - - addClass: function( classNames ) { - jQuery.className.add( this, classNames ); - }, - - removeClass: function( classNames ) { - jQuery.className.remove( this, classNames ); - }, - - toggleClass: function( classNames ) { - jQuery.className[ jQuery.className.has( this, classNames ) ? "remove" : "add" ]( this, classNames ); - }, - - remove: function( selector ) { - if ( !selector || jQuery.filter( selector, [ this ] ).r.length ) { - // Prevent memory leaks - jQuery( "*", this ).add(this).each(function(){ - jQuery.event.remove(this); - jQuery.removeData(this); - }); - if (this.parentNode) - this.parentNode.removeChild( this ); - } - }, - - empty: function() { - // Remove element nodes and prevent memory leaks - jQuery( ">*", this ).remove(); - - // Remove any remaining nodes - while ( this.firstChild ) - this.removeChild( this.firstChild ); - } -}, function(name, fn){ - jQuery.fn[ name ] = function(){ - return this.each( fn, arguments ); - }; -}); - -jQuery.each([ "Height", "Width" ], function(i, name){ - var type = name.toLowerCase(); - - jQuery.fn[ type ] = function( size ) { - // Get window width or height - return this[0] == window ? - // Opera reports document.body.client[Width/Height] properly in both quirks and standards - jQuery.browser.opera && document.body[ "client" + name ] || - - // Safari reports inner[Width/Height] just fine (Mozilla and Opera include scroll bar widths) - jQuery.browser.safari && window[ "inner" + name ] || - - // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode - document.compatMode == "CSS1Compat" && document.documentElement[ "client" + name ] || document.body[ "client" + name ] : - - // Get document width or height - this[0] == document ? - // Either scroll[Width/Height] or offset[Width/Height], whichever is greater - Math.max( - Math.max(document.body["scroll" + name], document.documentElement["scroll" + name]), - Math.max(document.body["offset" + name], document.documentElement["offset" + name]) - ) : - - // Get or set width or height on the element - size == undefined ? - // Get width or height on the element - (this.length ? jQuery.css( this[0], type ) : null) : - - // Set the width or height on the element (default to pixels if value is unitless) - this.css( type, size.constructor == String ? size : size + "px" ); - }; -}); - -// Helper function used by the dimensions and offset modules -function num(elem, prop) { - return elem[0] && parseInt( jQuery.curCSS(elem[0], prop, true), 10 ) || 0; -}var chars = jQuery.browser.safari && parseInt(jQuery.browser.version) < 417 ? - "(?:[\\w*_-]|\\\\.)" : - "(?:[\\w\u0128-\uFFFF*_-]|\\\\.)", - quickChild = new RegExp("^>\\s*(" + chars + "+)"), - quickID = new RegExp("^(" + chars + "+)(#)(" + chars + "+)"), - quickClass = new RegExp("^([#.]?)(" + chars + "*)"); - -jQuery.extend({ - expr: { - "": function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);}, - "#": function(a,i,m){return a.getAttribute("id")==m[2];}, - ":": { - // Position Checks - lt: function(a,i,m){return i<m[3]-0;}, - gt: function(a,i,m){return i>m[3]-0;}, - nth: function(a,i,m){return m[3]-0==i;}, - eq: function(a,i,m){return m[3]-0==i;}, - first: function(a,i){return i==0;}, - last: function(a,i,m,r){return i==r.length-1;}, - even: function(a,i){return i%2==0;}, - odd: function(a,i){return i%2;}, - - // Child Checks - "first-child": function(a){return a.parentNode.getElementsByTagName("*")[0]==a;}, - "last-child": function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;}, - "only-child": function(a){return !jQuery.nth(a.parentNode.lastChild,2,"previousSibling");}, - - // Parent Checks - parent: function(a){return a.firstChild;}, - empty: function(a){return !a.firstChild;}, - - // Text Check - contains: function(a,i,m){return (a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;}, - - // Visibility - visible: function(a){return "hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";}, - hidden: function(a){return "hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";}, - - // Form attributes - enabled: function(a){return !a.disabled;}, - disabled: function(a){return a.disabled;}, - checked: function(a){return a.checked;}, - selected: function(a){return a.selected||jQuery.attr(a,"selected");}, - - // Form elements - text: function(a){return "text"==a.type;}, - radio: function(a){return "radio"==a.type;}, - checkbox: function(a){return "checkbox"==a.type;}, - file: function(a){return "file"==a.type;}, - password: function(a){return "password"==a.type;}, - submit: function(a){return "submit"==a.type;}, - image: function(a){return "image"==a.type;}, - reset: function(a){return "reset"==a.type;}, - button: function(a){return "button"==a.type||jQuery.nodeName(a,"button");}, - input: function(a){return /input|select|textarea|button/i.test(a.nodeName);}, - - // :has() - has: function(a,i,m){return jQuery.find(m[3],a).length;}, - - // :header - header: function(a){return /h\d/i.test(a.nodeName);}, - - // :animated - animated: function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;} - } - }, - - // The regular expressions that power the parsing engine - parse: [ - // Match: [@value='test'], [@foo] - /^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/, - - // Match: :contains('foo') - /^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/, - - // Match: :even, :last-child, #id, .class - new RegExp("^([:.#]*)(" + chars + "+)") - ], - - multiFilter: function( expr, elems, not ) { - var old, cur = []; - - while ( expr && expr != old ) { - old = expr; - var f = jQuery.filter( expr, elems, not ); - expr = f.t.replace(/^\s*,\s*/, "" ); - cur = not ? elems = f.r : jQuery.merge( cur, f.r ); - } - - return cur; - }, - - find: function( t, context ) { - // Quickly handle non-string expressions - if ( typeof t != "string" ) - return [ t ]; - - // check to make sure context is a DOM element or a document - if ( context && context.nodeType != 1 && context.nodeType != 9) - return [ ]; - - // Set the correct context (if none is provided) - context = context || document; - - // Initialize the search - var ret = [context], done = [], last, nodeName; - - // Continue while a selector expression exists, and while - // we're no longer looping upon ourselves - while ( t && last != t ) { - var r = []; - last = t; - - t = jQuery.trim(t); - - var foundToken = false, - - // An attempt at speeding up child selectors that - // point to a specific element tag - re = quickChild, - - m = re.exec(t); - - if ( m ) { - nodeName = m[1].toUpperCase(); - - // Perform our own iteration and filter - for ( var i = 0; ret[i]; i++ ) - for ( var c = ret[i].firstChild; c; c = c.nextSibling ) - if ( c.nodeType == 1 && (nodeName == "*" || c.nodeName.toUpperCase() == nodeName) ) - r.push( c ); - - ret = r; - t = t.replace( re, "" ); - if ( t.indexOf(" ") == 0 ) continue; - foundToken = true; - } else { - re = /^([>+~])\s*(\w*)/i; - - if ( (m = re.exec(t)) != null ) { - r = []; - - var merge = {}; - nodeName = m[2].toUpperCase(); - m = m[1]; - - for ( var j = 0, rl = ret.length; j < rl; j++ ) { - var n = m == "~" || m == "+" ? ret[j].nextSibling : ret[j].firstChild; - for ( ; n; n = n.nextSibling ) - if ( n.nodeType == 1 ) { - var id = jQuery.data(n); - - if ( m == "~" && merge[id] ) break; - - if (!nodeName || n.nodeName.toUpperCase() == nodeName ) { - if ( m == "~" ) merge[id] = true; - r.push( n ); - } - - if ( m == "+" ) break; - } - } - - ret = r; - - // And remove the token - t = jQuery.trim( t.replace( re, "" ) ); - foundToken = true; - } - } - - // See if there's still an expression, and that we haven't already - // matched a token - if ( t && !foundToken ) { - // Handle multiple expressions - if ( !t.indexOf(",") ) { - // Clean the result set - if ( context == ret[0] ) ret.shift(); - - // Merge the result sets - done = jQuery.merge( done, ret ); - - // Reset the context - r = ret = [context]; - - // Touch up the selector string - t = " " + t.substr(1,t.length); - - } else { - // Optimize for the case nodeName#idName - var re2 = quickID; - var m = re2.exec(t); - - // Re-organize the results, so that they're consistent - if ( m ) { - m = [ 0, m[2], m[3], m[1] ]; - - } else { - // Otherwise, do a traditional filter check for - // ID, class, and element selectors - re2 = quickClass; - m = re2.exec(t); - } - - m[2] = m[2].replace(/\\/g, ""); - - var elem = ret[ret.length-1]; - - // Try to do a global search by ID, where we can - if ( m[1] == "#" && elem && elem.getElementById && !jQuery.isXMLDoc(elem) ) { - // Optimization for HTML document case - var oid = elem.getElementById(m[2]); - - // Do a quick check for the existence of the actual ID attribute - // to avoid selecting by the name attribute in IE - // also check to insure id is a string to avoid selecting an element with the name of 'id' inside a form - if ( (jQuery.browser.msie||jQuery.browser.opera) && oid && typeof oid.id == "string" && oid.id != m[2] ) - oid = jQuery('[@id="'+m[2]+'"]', elem)[0]; - - // Do a quick check for node name (where applicable) so - // that div#foo searches will be really fast - ret = r = oid && (!m[3] || jQuery.nodeName(oid, m[3])) ? [oid] : []; - } else { - // We need to find all descendant elements - for ( var i = 0; ret[i]; i++ ) { - // Grab the tag name being searched for - var tag = m[1] == "#" && m[3] ? m[3] : m[1] != "" || m[0] == "" ? "*" : m[2]; - - // Handle IE7 being really dumb about <object>s - if ( tag == "*" && ret[i].nodeName.toLowerCase() == "object" ) - tag = "param"; - - r = jQuery.merge( r, ret[i].getElementsByTagName( tag )); - } - - // It's faster to filter by class and be done with it - if ( m[1] == "." ) - r = jQuery.classFilter( r, m[2] ); - - // Same with ID filtering - if ( m[1] == "#" ) { - var tmp = []; - - // Try to find the element with the ID - for ( var i = 0; r[i]; i++ ) - if ( r[i].getAttribute("id") == m[2] ) { - tmp = [ r[i] ]; - break; - } - - r = tmp; - } - - ret = r; - } - - t = t.replace( re2, "" ); - } - - } - - // If a selector string still exists - if ( t ) { - // Attempt to filter it - var val = jQuery.filter(t,r); - ret = r = val.r; - t = jQuery.trim(val.t); - } - } - - // An error occurred with the selector; - // just return an empty set instead - if ( t ) - ret = []; - - // Remove the root context - if ( ret && context == ret[0] ) - ret.shift(); - - // And combine the results - done = jQuery.merge( done, ret ); - - return done; - }, - - classFilter: function(r,m,not){ - m = " " + m + " "; - var tmp = []; - for ( var i = 0; r[i]; i++ ) { - var pass = (" " + r[i].className + " ").indexOf( m ) >= 0; - if ( !not && pass || not && !pass ) - tmp.push( r[i] ); - } - return tmp; - }, - - filter: function(t,r,not) { - var last; - - // Look for common filter expressions - while ( t && t != last ) { - last = t; - - var p = jQuery.parse, m; - - for ( var i = 0; p[i]; i++ ) { - m = p[i].exec( t ); - - if ( m ) { - // Remove what we just matched - t = t.substring( m[0].length ); - - m[2] = m[2].replace(/\\/g, ""); - break; - } - } - - if ( !m ) - break; - - // :not() is a special case that can be optimized by - // keeping it out of the expression list - if ( m[1] == ":" && m[2] == "not" ) - // optimize if only one selector found (most common case) - r = isSimple.test( m[3] ) ? - jQuery.filter(m[3], r, true).r : - jQuery( r ).not( m[3] ); - - // We can get a big speed boost by filtering by class here - else if ( m[1] == "." ) - r = jQuery.classFilter(r, m[2], not); - - else if ( m[1] == "[" ) { - var tmp = [], type = m[3]; - - for ( var i = 0, rl = r.length; i < rl; i++ ) { - var a = r[i], z = a[ jQuery.props[m[2]] || m[2] ]; - - if ( z == null || /href|src|selected/.test(m[2]) ) - z = jQuery.attr(a,m[2]) || ''; - - if ( (type == "" && !!z || - type == "=" && z == m[5] || - type == "!=" && z != m[5] || - type == "^=" && z && !z.indexOf(m[5]) || - type == "$=" && z.substr(z.length - m[5].length) == m[5] || - (type == "*=" || type == "~=") && z.indexOf(m[5]) >= 0) ^ not ) - tmp.push( a ); - } - - r = tmp; - - // We can get a speed boost by handling nth-child here - } else if ( m[1] == ":" && m[2] == "nth-child" ) { - var merge = {}, tmp = [], - // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6' - test = /(-?)(\d*)n((?:\+|-)?\d*)/.exec( - m[3] == "even" && "2n" || m[3] == "odd" && "2n+1" || - !/\D/.test(m[3]) && "0n+" + m[3] || m[3]), - // calculate the numbers (first)n+(last) including if they are negative - first = (test[1] + (test[2] || 1)) - 0, last = test[3] - 0; - - // loop through all the elements left in the jQuery object - for ( var i = 0, rl = r.length; i < rl; i++ ) { - var node = r[i], parentNode = node.parentNode, id = jQuery.data(parentNode); - - if ( !merge[id] ) { - var c = 1; - - for ( var n = parentNode.firstChild; n; n = n.nextSibling ) - if ( n.nodeType == 1 ) - n.nodeIndex = c++; - - merge[id] = true; - } - - var add = false; - - if ( first == 0 ) { - if ( node.nodeIndex == last ) - add = true; - } else if ( (node.nodeIndex - last) % first == 0 && (node.nodeIndex - last) / first >= 0 ) - add = true; - - if ( add ^ not ) - tmp.push( node ); - } - - r = tmp; - - // Otherwise, find the expression to execute - } else { - var fn = jQuery.expr[ m[1] ]; - if ( typeof fn == "object" ) - fn = fn[ m[2] ]; - - if ( typeof fn == "string" ) - fn = eval("false||function(a,i){return " + fn + ";}"); - - // Execute it against the current filter - r = jQuery.grep( r, function(elem, i){ - return fn(elem, i, m, r); - }, not ); - } - } - - // Return an array of filtered elements (r) - // and the modified expression string (t) - return { r: r, t: t }; - }, - - dir: function( elem, dir ){ - var matched = [], - cur = elem[dir]; - while ( cur && cur != document ) { - if ( cur.nodeType == 1 ) - matched.push( cur ); - cur = cur[dir]; - } - return matched; - }, - - nth: function(cur,result,dir,elem){ - result = result || 1; - var num = 0; - - for ( ; cur; cur = cur[dir] ) - if ( cur.nodeType == 1 && ++num == result ) - break; - - return cur; - }, - - sibling: function( n, elem ) { - var r = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType == 1 && n != elem ) - r.push( n ); - } - - return r; - } -}); -/* - * A number of helper functions used for managing events. - * Many of the ideas behind this code orignated from - * Dean Edwards' addEvent library. - */ -jQuery.event = { - - // Bind an event to an element - // Original by Dean Edwards - add: function(elem, types, handler, data) { - if ( elem.nodeType == 3 || elem.nodeType == 8 ) - return; - - // For whatever reason, IE has trouble passing the window object - // around, causing it to be cloned in the process - if ( jQuery.browser.msie && elem.setInterval ) - elem = window; - - // Make sure that the function being executed has a unique ID - if ( !handler.guid ) - handler.guid = this.guid++; - - // if data is passed, bind to handler - if( data != undefined ) { - // Create temporary function pointer to original handler - var fn = handler; - - // Create unique handler function, wrapped around original handler - handler = this.proxy( fn, function() { - // Pass arguments and context to original handler - return fn.apply(this, arguments); - }); - - // Store data in unique handler - handler.data = data; - } - - // Init the element's event structure - var events = jQuery.data(elem, "events") || jQuery.data(elem, "events", {}), - handle = jQuery.data(elem, "handle") || jQuery.data(elem, "handle", function(){ - // Handle the second event of a trigger and when - // an event is called after a page has unloaded - if ( typeof jQuery != "undefined" && !jQuery.event.triggered ) - return jQuery.event.handle.apply(arguments.callee.elem, arguments); - }); - // Add elem as a property of the handle function - // This is to prevent a memory leak with non-native - // event in IE. - handle.elem = elem; - - // Handle multiple events separated by a space - // jQuery(...).bind("mouseover mouseout", fn); - jQuery.each(types.split(/\s+/), function(index, type) { - // Namespaced event handlers - var parts = type.split("."); - type = parts[0]; - handler.type = parts[1]; - - // Get the current list of functions bound to this event - var handlers = events[type]; - - // Init the event handler queue - if (!handlers) { - handlers = events[type] = {}; - - // Check for a special event handler - // Only use addEventListener/attachEvent if the special - // events handler returns false - if ( !jQuery.event.special[type] || jQuery.event.special[type].setup.call(elem) === false ) { - // Bind the global event handler to the element - if (elem.addEventListener) - elem.addEventListener(type, handle, false); - else if (elem.attachEvent) - elem.attachEvent("on" + type, handle); - } - } - - // Add the function to the element's handler list - handlers[handler.guid] = handler; - - // Keep track of which events have been used, for global triggering - jQuery.event.global[type] = true; - }); - - // Nullify elem to prevent memory leaks in IE - elem = null; - }, - - guid: 1, - global: {}, - - // Detach an event or set of events from an element - remove: function(elem, types, handler) { - // don't do events on text and comment nodes - if ( elem.nodeType == 3 || elem.nodeType == 8 ) - return; - - var events = jQuery.data(elem, "events"), ret, index; - - if ( events ) { - // Unbind all events for the element - if ( types == undefined || (typeof types == "string" && types.charAt(0) == ".") ) - for ( var type in events ) - this.remove( elem, type + (types || "") ); - else { - // types is actually an event object here - if ( types.type ) { - handler = types.handler; - types = types.type; - } - - // Handle multiple events seperated by a space - // jQuery(...).unbind("mouseover mouseout", fn); - jQuery.each(types.split(/\s+/), function(index, type){ - // Namespaced event handlers - var parts = type.split("."); - type = parts[0]; - - if ( events[type] ) { - // remove the given handler for the given type - if ( handler ) - delete events[type][handler.guid]; - - // remove all handlers for the given type - else - for ( handler in events[type] ) - // Handle the removal of namespaced events - if ( !parts[1] || events[type][handler].type == parts[1] ) - delete events[type][handler]; - - // remove generic event handler if no more handlers exist - for ( ret in events[type] ) break; - if ( !ret ) { - if ( !jQuery.event.special[type] || jQuery.event.special[type].teardown.call(elem) === false ) { - if (elem.removeEventListener) - elem.removeEventListener(type, jQuery.data(elem, "handle"), false); - else if (elem.detachEvent) - elem.detachEvent("on" + type, jQuery.data(elem, "handle")); - } - ret = null; - delete events[type]; - } - } - }); - } - - // Remove the expando if it's no longer used - for ( ret in events ) break; - if ( !ret ) { - var handle = jQuery.data( elem, "handle" ); - if ( handle ) handle.elem = null; - jQuery.removeData( elem, "events" ); - jQuery.removeData( elem, "handle" ); - } - } - }, - - trigger: function(type, data, elem, donative, extra) { - // Clone the incoming data, if any - data = jQuery.makeArray(data); - - if ( type.indexOf("!") >= 0 ) { - type = type.slice(0, -1); - var exclusive = true; - } - - // Handle a global trigger - if ( !elem ) { - // Only trigger if we've ever bound an event for it - if ( this.global[type] ) - jQuery("*").add([window, document]).trigger(type, data); - - // Handle triggering a single element - } else { - // don't do events on text and comment nodes - if ( elem.nodeType == 3 || elem.nodeType == 8 ) - return undefined; - - var val, ret, fn = jQuery.isFunction( elem[ type ] || null ), - // Check to see if we need to provide a fake event, or not - event = !data[0] || !data[0].preventDefault; - - // Pass along a fake event - if ( event ) { - data.unshift({ - type: type, - target: elem, - preventDefault: function(){}, - stopPropagation: function(){}, - timeStamp: now() - }); - data[0][expando] = true; // no need to fix fake event - } - - // Enforce the right trigger type - data[0].type = type; - if ( exclusive ) - data[0].exclusive = true; - - // Trigger the event, it is assumed that "handle" is a function - var handle = jQuery.data(elem, "handle"); - if ( handle ) - val = handle.apply( elem, data ); - - // Handle triggering native .onfoo handlers (and on links since we don't call .click() for links) - if ( (!fn || (jQuery.nodeName(elem, 'a') && type == "click")) && elem["on"+type] && elem["on"+type].apply( elem, data ) === false ) - val = false; - - // Extra functions don't get the custom event object - if ( event ) - data.shift(); - - // Handle triggering of extra function - if ( extra && jQuery.isFunction( extra ) ) { - // call the extra function and tack the current return value on the end for possible inspection - ret = extra.apply( elem, val == null ? data : data.concat( val ) ); - // if anything is returned, give it precedence and have it overwrite the previous value - if (ret !== undefined) - val = ret; - } - - // Trigger the native events (except for clicks on links) - if ( fn && donative !== false && val !== false && !(jQuery.nodeName(elem, 'a') && type == "click") ) { - this.triggered = true; - try { - elem[ type ](); - // prevent IE from throwing an error for some hidden elements - } catch (e) {} - } - - this.triggered = false; - } - - return val; - }, - - handle: function(event) { - // returned undefined or false - var val, ret, namespace, all, handlers; - - event = arguments[0] = jQuery.event.fix( event || window.event ); - - // Namespaced event handlers - namespace = event.type.split("."); - event.type = namespace[0]; - namespace = namespace[1]; - // Cache this now, all = true means, any handler - all = !namespace && !event.exclusive; - - handlers = ( jQuery.data(this, "events") || {} )[event.type]; - - for ( var j in handlers ) { - var handler = handlers[j]; - - // Filter the functions by class - if ( all || handler.type == namespace ) { - // Pass in a reference to the handler function itself - // So that we can later remove it - event.handler = handler; - event.data = handler.data; - - ret = handler.apply( this, arguments ); - - if ( val !== false ) - val = ret; - - if ( ret === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } - - return val; - }, - - fix: function(event) { - if ( event[expando] == true ) - return event; - - // store a copy of the original event object - // and "clone" to set read-only properties - var originalEvent = event; - event = { originalEvent: originalEvent }; - var props = "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" "); - for ( var i=props.length; i; i-- ) - event[ props[i] ] = originalEvent[ props[i] ]; - - // Mark it as fixed - event[expando] = true; - - // add preventDefault and stopPropagation since - // they will not work on the clone - event.preventDefault = function() { - // if preventDefault exists run it on the original event - if (originalEvent.preventDefault) - originalEvent.preventDefault(); - // otherwise set the returnValue property of the original event to false (IE) - originalEvent.returnValue = false; - }; - event.stopPropagation = function() { - // if stopPropagation exists run it on the original event - if (originalEvent.stopPropagation) - originalEvent.stopPropagation(); - // otherwise set the cancelBubble property of the original event to true (IE) - originalEvent.cancelBubble = true; - }; - - // Fix timeStamp - event.timeStamp = event.timeStamp || now(); - - // Fix target property, if necessary - if ( !event.target ) - event.target = event.srcElement || document; // Fixes #1925 where srcElement might not be defined either - - // check if target is a textnode (safari) - if ( event.target.nodeType == 3 ) - event.target = event.target.parentNode; - - // Add relatedTarget, if necessary - if ( !event.relatedTarget && event.fromElement ) - event.relatedTarget = event.fromElement == event.target ? event.toElement : event.fromElement; - - // Calculate pageX/Y if missing and clientX/Y available - if ( event.pageX == null && event.clientX != null ) { - var doc = document.documentElement, body = document.body; - event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc.clientLeft || 0); - event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc.clientTop || 0); - } - - // Add which for key events - if ( !event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode) ) - event.which = event.charCode || event.keyCode; - - // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs) - if ( !event.metaKey && event.ctrlKey ) - event.metaKey = event.ctrlKey; - - // Add which for click: 1 == left; 2 == middle; 3 == right - // Note: button is not normalized, so don't use it - if ( !event.which && event.button ) - event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) )); - - return event; - }, - - proxy: function( fn, proxy ){ - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || proxy.guid || this.guid++; - // So proxy can be declared as an argument - return proxy; - }, - - special: { - ready: { - setup: function() { - // Make sure the ready event is setup - bindReady(); - return; - }, - - teardown: function() { return; } - }, - - mouseenter: { - setup: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).bind("mouseover", jQuery.event.special.mouseenter.handler); - return true; - }, - - teardown: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).unbind("mouseover", jQuery.event.special.mouseenter.handler); - return true; - }, - - handler: function(event) { - // If we actually just moused on to a sub-element, ignore it - if ( withinElement(event, this) ) return true; - // Execute the right handlers by setting the event type to mouseenter - event.type = "mouseenter"; - return jQuery.event.handle.apply(this, arguments); - } - }, - - mouseleave: { - setup: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).bind("mouseout", jQuery.event.special.mouseleave.handler); - return true; - }, - - teardown: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).unbind("mouseout", jQuery.event.special.mouseleave.handler); - return true; - }, - - handler: function(event) { - // If we actually just moused on to a sub-element, ignore it - if ( withinElement(event, this) ) return true; - // Execute the right handlers by setting the event type to mouseleave - event.type = "mouseleave"; - return jQuery.event.handle.apply(this, arguments); - } - } - } -}; - -jQuery.fn.extend({ - bind: function( type, data, fn ) { - return type == "unload" ? this.one(type, data, fn) : this.each(function(){ - jQuery.event.add( this, type, fn || data, fn && data ); - }); - }, - - one: function( type, data, fn ) { - var one = jQuery.event.proxy( fn || data, function(event) { - jQuery(this).unbind(event, one); - return (fn || data).apply( this, arguments ); - }); - return this.each(function(){ - jQuery.event.add( this, type, one, fn && data); - }); - }, - - unbind: function( type, fn ) { - return this.each(function(){ - jQuery.event.remove( this, type, fn ); - }); - }, - - trigger: function( type, data, fn ) { - return this.each(function(){ - jQuery.event.trigger( type, data, this, true, fn ); - }); - }, - - triggerHandler: function( type, data, fn ) { - return this[0] && jQuery.event.trigger( type, data, this[0], false, fn ); - }, - - toggle: function( fn ) { - // Save reference to arguments for access in closure - var args = arguments, i = 1; - - // link all the functions, so any of them can unbind this click handler - while( i < args.length ) - jQuery.event.proxy( fn, args[i++] ); - - return this.click( jQuery.event.proxy( fn, function(event) { - // Figure out which function to execute - this.lastToggle = ( this.lastToggle || 0 ) % i; - - // Make sure that clicks stop - event.preventDefault(); - - // and execute the function - return args[ this.lastToggle++ ].apply( this, arguments ) || false; - })); - }, - - hover: function(fnOver, fnOut) { - return this.bind('mouseenter', fnOver).bind('mouseleave', fnOut); - }, - - ready: function(fn) { - // Attach the listeners - bindReady(); - - // If the DOM is already ready - if ( jQuery.isReady ) - // Execute the function immediately - fn.call( document, jQuery ); - - // Otherwise, remember the function for later - else - // Add the function to the wait list - jQuery.readyList.push( function() { return fn.call(this, jQuery); } ); - - return this; - } -}); - -jQuery.extend({ - isReady: false, - readyList: [], - // Handle when the DOM is ready - ready: function() { - // Make sure that the DOM is not already loaded - if ( !jQuery.isReady ) { - // Remember that the DOM is ready - jQuery.isReady = true; - - // If there are functions bound, to execute - if ( jQuery.readyList ) { - // Execute all of them - jQuery.each( jQuery.readyList, function(){ - this.call( document ); - }); - - // Reset the list of functions - jQuery.readyList = null; - } - - // Trigger any bound ready events - jQuery(document).triggerHandler("ready"); - } - } -}); - -var readyBound = false; - -function bindReady(){ - if ( readyBound ) return; - readyBound = true; - - // Mozilla, Opera (see further below for it) and webkit nightlies currently support this event - if ( document.addEventListener && !jQuery.browser.opera) - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", jQuery.ready, false ); - - // If IE is used and is not in a frame - // Continually check to see if the document is ready - if ( jQuery.browser.msie && window == top ) (function(){ - if (jQuery.isReady) return; - try { - // If IE is used, use the trick by Diego Perini - // http://javascript.nwbox.com/IEContentLoaded/ - document.documentElement.doScroll("left"); - } catch( error ) { - setTimeout( arguments.callee, 0 ); - return; - } - // and execute any waiting functions - jQuery.ready(); - })(); - - if ( jQuery.browser.opera ) - document.addEventListener( "DOMContentLoaded", function () { - if (jQuery.isReady) return; - for (var i = 0; i < document.styleSheets.length; i++) - if (document.styleSheets[i].disabled) { - setTimeout( arguments.callee, 0 ); - return; - } - // and execute any waiting functions - jQuery.ready(); - }, false); - - if ( jQuery.browser.safari ) { - var numStyles; - (function(){ - if (jQuery.isReady) return; - if ( document.readyState != "loaded" && document.readyState != "complete" ) { - setTimeout( arguments.callee, 0 ); - return; - } - if ( numStyles === undefined ) - numStyles = jQuery("style, link[rel=stylesheet]").length; - if ( document.styleSheets.length != numStyles ) { - setTimeout( arguments.callee, 0 ); - return; - } - // and execute any waiting functions - jQuery.ready(); - })(); - } - - // A fallback to window.onload, that will always work - jQuery.event.add( window, "load", jQuery.ready ); -} - -jQuery.each( ("blur,focus,load,resize,scroll,unload,click,dblclick," + - "mousedown,mouseup,mousemove,mouseover,mouseout,change,select," + - "submit,keydown,keypress,keyup,error").split(","), function(i, name){ - - // Handle event binding - jQuery.fn[name] = function(fn){ - return fn ? this.bind(name, fn) : this.trigger(name); - }; -}); - -// Checks if an event happened on an element within another element -// Used in jQuery.event.special.mouseenter and mouseleave handlers -var withinElement = function(event, elem) { - // Check if mouse(over|out) are still within the same parent element - var parent = event.relatedTarget; - // Traverse up the tree - while ( parent && parent != elem ) try { parent = parent.parentNode; } catch(error) { parent = elem; } - // Return true if we actually just moused on to a sub-element - return parent == elem; -}; - -// Prevent memory leaks in IE -// And prevent errors on refresh with events like mouseover in other browsers -// Window isn't included so as not to unbind existing unload events -jQuery(window).bind("unload", function() { - jQuery("*").add(document).unbind(); -}); -jQuery.fn.extend({ - // Keep a copy of the old load - _load: jQuery.fn.load, - - load: function( url, params, callback ) { - if ( typeof url != 'string' ) - return this._load( url ); - - var off = url.indexOf(" "); - if ( off >= 0 ) { - var selector = url.slice(off, url.length); - url = url.slice(0, off); - } - - callback = callback || function(){}; - - // Default to a GET request - var type = "GET"; - - // If the second parameter was provided - if ( params ) - // If it's a function - if ( jQuery.isFunction( params ) ) { - // We assume that it's the callback - callback = params; - params = null; - - // Otherwise, build a param string - } else { - params = jQuery.param( params ); - type = "POST"; - } - - var self = this; - - // Request the remote document - jQuery.ajax({ - url: url, - type: type, - dataType: "html", - data: params, - complete: function(res, status){ - // If successful, inject the HTML into all the matched elements - if ( status == "success" || status == "notmodified" ) - // See if a selector was specified - self.html( selector ? - // Create a dummy div to hold the results - jQuery("<div/>") - // inject the contents of the document in, removing the scripts - // to avoid any 'Permission Denied' errors in IE - .append(res.responseText.replace(/<script(.|\s)*?\/script>/g, "")) - - // Locate the specified elements - .find(selector) : - - // If not, just inject the full result - res.responseText ); - - self.each( callback, [res.responseText, status, res] ); - } - }); - return this; - }, - - serialize: function() { - return jQuery.param(this.serializeArray()); - }, - serializeArray: function() { - return this.map(function(){ - return jQuery.nodeName(this, "form") ? - jQuery.makeArray(this.elements) : this; - }) - .filter(function(){ - return this.name && !this.disabled && - (this.checked || /select|textarea/i.test(this.nodeName) || - /text|hidden|password/i.test(this.type)); - }) - .map(function(i, elem){ - var val = jQuery(this).val(); - return val == null ? null : - val.constructor == Array ? - jQuery.map( val, function(val, i){ - return {name: elem.name, value: val}; - }) : - {name: elem.name, value: val}; - }).get(); - } -}); - -// Attach a bunch of functions for handling common AJAX events -jQuery.each( "ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","), function(i,o){ - jQuery.fn[o] = function(f){ - return this.bind(o, f); - }; -}); - -var jsc = now(); - -jQuery.extend({ - get: function( url, data, callback, type ) { - // shift arguments if data argument was ommited - if ( jQuery.isFunction( data ) ) { - callback = data; - data = null; - } - - return jQuery.ajax({ - type: "GET", - url: url, - data: data, - success: callback, - dataType: type - }); - }, - - getScript: function( url, callback ) { - return jQuery.get(url, null, callback, "script"); - }, - - getJSON: function( url, data, callback ) { - return jQuery.get(url, data, callback, "json"); - }, - - post: function( url, data, callback, type ) { - if ( jQuery.isFunction( data ) ) { - callback = data; - data = {}; - } - - return jQuery.ajax({ - type: "POST", - url: url, - data: data, - success: callback, - dataType: type - }); - }, - - ajaxSetup: function( settings ) { - jQuery.extend( jQuery.ajaxSettings, settings ); - }, - - ajaxSettings: { - url: location.href, - global: true, - type: "GET", - timeout: 0, - contentType: "application/x-www-form-urlencoded", - processData: true, - async: true, - data: null, - username: null, - password: null, - accepts: { - xml: "application/xml, text/xml", - html: "text/html", - script: "text/javascript, application/javascript", - json: "application/json, text/javascript", - text: "text/plain", - _default: "*/*" - } - }, - - // Last-Modified header cache for next request - lastModified: {}, - - ajax: function( s ) { - // Extend the settings, but re-extend 's' so that it can be - // checked again later (in the test suite, specifically) - s = jQuery.extend(true, s, jQuery.extend(true, {}, jQuery.ajaxSettings, s)); - - var jsonp, jsre = /=\?(&|$)/g, status, data, - type = s.type.toUpperCase(); - - // convert data if not already a string - if ( s.data && s.processData && typeof s.data != "string" ) - s.data = jQuery.param(s.data); - - // Handle JSONP Parameter Callbacks - if ( s.dataType == "jsonp" ) { - if ( type == "GET" ) { - if ( !s.url.match(jsre) ) - s.url += (s.url.match(/\?/) ? "&" : "?") + (s.jsonp || "callback") + "=?"; - } else if ( !s.data || !s.data.match(jsre) ) - s.data = (s.data ? s.data + "&" : "") + (s.jsonp || "callback") + "=?"; - s.dataType = "json"; - } - - // Build temporary JSONP function - if ( s.dataType == "json" && (s.data && s.data.match(jsre) || s.url.match(jsre)) ) { - jsonp = "jsonp" + jsc++; - - // Replace the =? sequence both in the query string and the data - if ( s.data ) - s.data = (s.data + "").replace(jsre, "=" + jsonp + "$1"); - s.url = s.url.replace(jsre, "=" + jsonp + "$1"); - - // We need to make sure - // that a JSONP style response is executed properly - s.dataType = "script"; - - // Handle JSONP-style loading - window[ jsonp ] = function(tmp){ - data = tmp; - success(); - complete(); - // Garbage collect - window[ jsonp ] = undefined; - try{ delete window[ jsonp ]; } catch(e){} - if ( head ) - head.removeChild( script ); - }; - } - - if ( s.dataType == "script" && s.cache == null ) - s.cache = false; - - if ( s.cache === false && type == "GET" ) { - var ts = now(); - // try replacing _= if it is there - var ret = s.url.replace(/(\?|&)_=.*?(&|$)/, "$1_=" + ts + "$2"); - // if nothing was replaced, add timestamp to the end - s.url = ret + ((ret == s.url) ? (s.url.match(/\?/) ? "&" : "?") + "_=" + ts : ""); - } - - // If data is available, append data to url for get requests - if ( s.data && type == "GET" ) { - s.url += (s.url.match(/\?/) ? "&" : "?") + s.data; - - // IE likes to send both get and post data, prevent this - s.data = null; - } - - // Watch for a new set of requests - if ( s.global && ! jQuery.active++ ) - jQuery.event.trigger( "ajaxStart" ); - - // Matches an absolute URL, and saves the domain - var remote = /^(?:\w+:)?\/\/([^\/?#]+)/; - - // If we're requesting a remote document - // and trying to load JSON or Script with a GET - if ( s.dataType == "script" && type == "GET" - && remote.test(s.url) && remote.exec(s.url)[1] != location.host ){ - var head = document.getElementsByTagName("head")[0]; - var script = document.createElement("script"); - script.src = s.url; - if (s.scriptCharset) - script.charset = s.scriptCharset; - - // Handle Script loading - if ( !jsonp ) { - var done = false; - - // Attach handlers for all browsers - script.onload = script.onreadystatechange = function(){ - if ( !done && (!this.readyState || - this.readyState == "loaded" || this.readyState == "complete") ) { - done = true; - success(); - complete(); - head.removeChild( script ); - } - }; - } - - head.appendChild(script); - - // We handle everything using the script element injection - return undefined; - } - - var requestDone = false; - - // Create the request object; Microsoft failed to properly - // implement the XMLHttpRequest in IE7, so we use the ActiveXObject when it is available - var xhr = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(); - - // Open the socket - // Passing null username, generates a login popup on Opera (#2865) - if( s.username ) - xhr.open(type, s.url, s.async, s.username, s.password); - else - xhr.open(type, s.url, s.async); - - // Need an extra try/catch for cross domain requests in Firefox 3 - try { - // Set the correct header, if data is being sent - if ( s.data ) - xhr.setRequestHeader("Content-Type", s.contentType); - - // Set the If-Modified-Since header, if ifModified mode. - if ( s.ifModified ) - xhr.setRequestHeader("If-Modified-Since", - jQuery.lastModified[s.url] || "Thu, 01 Jan 1970 00:00:00 GMT" ); - - // Set header so the called script knows that it's an XMLHttpRequest - xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest"); - - // Set the Accepts header for the server, depending on the dataType - xhr.setRequestHeader("Accept", s.dataType && s.accepts[ s.dataType ] ? - s.accepts[ s.dataType ] + ", */*" : - s.accepts._default ); - } catch(e){} - - // Allow custom headers/mimetypes - if ( s.beforeSend && s.beforeSend(xhr, s) === false ) { - // cleanup active request counter - s.global && jQuery.active--; - // close opended socket - xhr.abort(); - return false; - } - - if ( s.global ) - jQuery.event.trigger("ajaxSend", [xhr, s]); - - // Wait for a response to come back - var onreadystatechange = function(isTimeout){ - // The transfer is complete and the data is available, or the request timed out - if ( !requestDone && xhr && (xhr.readyState == 4 || isTimeout == "timeout") ) { - requestDone = true; - - // clear poll interval - if (ival) { - clearInterval(ival); - ival = null; - } - - status = isTimeout == "timeout" && "timeout" || - !jQuery.httpSuccess( xhr ) && "error" || - s.ifModified && jQuery.httpNotModified( xhr, s.url ) && "notmodified" || - "success"; - - if ( status == "success" ) { - // Watch for, and catch, XML document parse errors - try { - // process the data (runs the xml through httpData regardless of callback) - data = jQuery.httpData( xhr, s.dataType, s.dataFilter ); - } catch(e) { - status = "parsererror"; - } - } - - // Make sure that the request was successful or notmodified - if ( status == "success" ) { - // Cache Last-Modified header, if ifModified mode. - var modRes; - try { - modRes = xhr.getResponseHeader("Last-Modified"); - } catch(e) {} // swallow exception thrown by FF if header is not available - - if ( s.ifModified && modRes ) - jQuery.lastModified[s.url] = modRes; - - // JSONP handles its own success callback - if ( !jsonp ) - success(); - } else - jQuery.handleError(s, xhr, status); - - // Fire the complete handlers - complete(); - - // Stop memory leaks - if ( s.async ) - xhr = null; - } - }; - - if ( s.async ) { - // don't attach the handler to the request, just poll it instead - var ival = setInterval(onreadystatechange, 13); - - // Timeout checker - if ( s.timeout > 0 ) - setTimeout(function(){ - // Check to see if the request is still happening - if ( xhr ) { - // Cancel the request - xhr.abort(); - - if( !requestDone ) - onreadystatechange( "timeout" ); - } - }, s.timeout); - } - - // Send the data - try { - xhr.send(s.data); - } catch(e) { - jQuery.handleError(s, xhr, null, e); - } - - // firefox 1.5 doesn't fire statechange for sync requests - if ( !s.async ) - onreadystatechange(); - - function success(){ - // If a local callback was specified, fire it and pass it the data - if ( s.success ) - s.success( data, status ); - - // Fire the global callback - if ( s.global ) - jQuery.event.trigger( "ajaxSuccess", [xhr, s] ); - } - - function complete(){ - // Process result - if ( s.complete ) - s.complete(xhr, status); - - // The request was completed - if ( s.global ) - jQuery.event.trigger( "ajaxComplete", [xhr, s] ); - - // Handle the global AJAX counter - if ( s.global && ! --jQuery.active ) - jQuery.event.trigger( "ajaxStop" ); - } - - // return XMLHttpRequest to allow aborting the request etc. - return xhr; - }, - - handleError: function( s, xhr, status, e ) { - // If a local callback was specified, fire it - if ( s.error ) s.error( xhr, status, e ); - - // Fire the global callback - if ( s.global ) - jQuery.event.trigger( "ajaxError", [xhr, s, e] ); - }, - - // Counter for holding the number of active queries - active: 0, - - // Determines if an XMLHttpRequest was successful or not - httpSuccess: function( xhr ) { - try { - // IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450 - return !xhr.status && location.protocol == "file:" || - ( xhr.status >= 200 && xhr.status < 300 ) || xhr.status == 304 || xhr.status == 1223 || - jQuery.browser.safari && xhr.status == undefined; - } catch(e){} - return false; - }, - - // Determines if an XMLHttpRequest returns NotModified - httpNotModified: function( xhr, url ) { - try { - var xhrRes = xhr.getResponseHeader("Last-Modified"); - - // Firefox always returns 200. check Last-Modified date - return xhr.status == 304 || xhrRes == jQuery.lastModified[url] || - jQuery.browser.safari && xhr.status == undefined; - } catch(e){} - return false; - }, - - httpData: function( xhr, type, filter ) { - var ct = xhr.getResponseHeader("content-type"), - xml = type == "xml" || !type && ct && ct.indexOf("xml") >= 0, - data = xml ? xhr.responseXML : xhr.responseText; - - if ( xml && data.documentElement.tagName == "parsererror" ) - throw "parsererror"; - - // Allow a pre-filtering function to sanitize the response - if( filter ) - data = filter( data, type ); - - // If the type is "script", eval it in global context - if ( type == "script" ) - jQuery.globalEval( data ); - - // Get the JavaScript object, if JSON is used. - if ( type == "json" ) - data = eval("(" + data + ")"); - - return data; - }, - - // Serialize an array of form elements or a set of - // key/values into a query string - param: function( a ) { - var s = []; - - // If an array was passed in, assume that it is an array - // of form elements - if ( a.constructor == Array || a.jquery ) - // Serialize the form elements - jQuery.each( a, function(){ - s.push( encodeURIComponent(this.name) + "=" + encodeURIComponent( this.value ) ); - }); - - // Otherwise, assume that it's an object of key/value pairs - else - // Serialize the key/values - for ( var j in a ) - // If the value is an array then the key names need to be repeated - if ( a[j] && a[j].constructor == Array ) - jQuery.each( a[j], function(){ - s.push( encodeURIComponent(j) + "=" + encodeURIComponent( this ) ); - }); - else - s.push( encodeURIComponent(j) + "=" + encodeURIComponent( jQuery.isFunction(a[j]) ? a[j]() : a[j] ) ); - - // Return the resulting serialization - return s.join("&").replace(/%20/g, "+"); - } - -}); -jQuery.fn.extend({ - show: function(speed,callback){ - return speed ? - this.animate({ - height: "show", width: "show", opacity: "show" - }, speed, callback) : - - this.filter(":hidden").each(function(){ - this.style.display = this.oldblock || ""; - if ( jQuery.css(this,"display") == "none" ) { - var elem = jQuery("<" + this.tagName + " />").appendTo("body"); - this.style.display = elem.css("display"); - // handle an edge condition where css is - div { display:none; } or similar - if (this.style.display == "none") - this.style.display = "block"; - elem.remove(); - } - }).end(); - }, - - hide: function(speed,callback){ - return speed ? - this.animate({ - height: "hide", width: "hide", opacity: "hide" - }, speed, callback) : - - this.filter(":visible").each(function(){ - this.oldblock = this.oldblock || jQuery.css(this,"display"); - this.style.display = "none"; - }).end(); - }, - - // Save the old toggle function - _toggle: jQuery.fn.toggle, - - toggle: function( fn, fn2 ){ - return jQuery.isFunction(fn) && jQuery.isFunction(fn2) ? - this._toggle.apply( this, arguments ) : - fn ? - this.animate({ - height: "toggle", width: "toggle", opacity: "toggle" - }, fn, fn2) : - this.each(function(){ - jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ](); - }); - }, - - slideDown: function(speed,callback){ - return this.animate({height: "show"}, speed, callback); - }, - - slideUp: function(speed,callback){ - return this.animate({height: "hide"}, speed, callback); - }, - - slideToggle: function(speed, callback){ - return this.animate({height: "toggle"}, speed, callback); - }, - - fadeIn: function(speed, callback){ - return this.animate({opacity: "show"}, speed, callback); - }, - - fadeOut: function(speed, callback){ - return this.animate({opacity: "hide"}, speed, callback); - }, - - fadeTo: function(speed,to,callback){ - return this.animate({opacity: to}, speed, callback); - }, - - animate: function( prop, speed, easing, callback ) { - var optall = jQuery.speed(speed, easing, callback); - - return this[ optall.queue === false ? "each" : "queue" ](function(){ - if ( this.nodeType != 1) - return false; - - var opt = jQuery.extend({}, optall), p, - hidden = jQuery(this).is(":hidden"), self = this; - - for ( p in prop ) { - if ( prop[p] == "hide" && hidden || prop[p] == "show" && !hidden ) - return opt.complete.call(this); - - if ( p == "height" || p == "width" ) { - // Store display property - opt.display = jQuery.css(this, "display"); - - // Make sure that nothing sneaks out - opt.overflow = this.style.overflow; - } - } - - if ( opt.overflow != null ) - this.style.overflow = "hidden"; - - opt.curAnim = jQuery.extend({}, prop); - - jQuery.each( prop, function(name, val){ - var e = new jQuery.fx( self, opt, name ); - - if ( /toggle|show|hide/.test(val) ) - e[ val == "toggle" ? hidden ? "show" : "hide" : val ]( prop ); - else { - var parts = val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/), - start = e.cur(true) || 0; - - if ( parts ) { - var end = parseFloat(parts[2]), - unit = parts[3] || "px"; - - // We need to compute starting value - if ( unit != "px" ) { - self.style[ name ] = (end || 1) + unit; - start = ((end || 1) / e.cur(true)) * start; - self.style[ name ] = start + unit; - } - - // If a +=/-= token was provided, we're doing a relative animation - if ( parts[1] ) - end = ((parts[1] == "-=" ? -1 : 1) * end) + start; - - e.custom( start, end, unit ); - } else - e.custom( start, val, "" ); - } - }); - - // For JS strict compliance - return true; - }); - }, - - queue: function(type, fn){ - if ( jQuery.isFunction(type) || ( type && type.constructor == Array )) { - fn = type; - type = "fx"; - } - - if ( !type || (typeof type == "string" && !fn) ) - return queue( this[0], type ); - - return this.each(function(){ - if ( fn.constructor == Array ) - queue(this, type, fn); - else { - queue(this, type).push( fn ); - - if ( queue(this, type).length == 1 ) - fn.call(this); - } - }); - }, - - stop: function(clearQueue, gotoEnd){ - var timers = jQuery.timers; - - if (clearQueue) - this.queue([]); - - this.each(function(){ - // go in reverse order so anything added to the queue during the loop is ignored - for ( var i = timers.length - 1; i >= 0; i-- ) - if ( timers[i].elem == this ) { - if (gotoEnd) - // force the next step to be the last - timers[i](true); - timers.splice(i, 1); - } - }); - - // start the next in the queue if the last step wasn't forced - if (!gotoEnd) - this.dequeue(); - - return this; - } - -}); - -var queue = function( elem, type, array ) { - if ( elem ){ - - type = type || "fx"; - - var q = jQuery.data( elem, type + "queue" ); - - if ( !q || array ) - q = jQuery.data( elem, type + "queue", jQuery.makeArray(array) ); - - } - return q; -}; - -jQuery.fn.dequeue = function(type){ - type = type || "fx"; - - return this.each(function(){ - var q = queue(this, type); - - q.shift(); - - if ( q.length ) - q[0].call( this ); - }); -}; - -jQuery.extend({ - - speed: function(speed, easing, fn) { - var opt = speed && speed.constructor == Object ? speed : { - complete: fn || !fn && easing || - jQuery.isFunction( speed ) && speed, - duration: speed, - easing: fn && easing || easing && easing.constructor != Function && easing - }; - - opt.duration = (opt.duration && opt.duration.constructor == Number ? - opt.duration : - jQuery.fx.speeds[opt.duration]) || jQuery.fx.speeds.def; - - // Queueing - opt.old = opt.complete; - opt.complete = function(){ - if ( opt.queue !== false ) - jQuery(this).dequeue(); - if ( jQuery.isFunction( opt.old ) ) - opt.old.call( this ); - }; - - return opt; - }, - - easing: { - linear: function( p, n, firstNum, diff ) { - return firstNum + diff * p; - }, - swing: function( p, n, firstNum, diff ) { - return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum; - } - }, - - timers: [], - timerId: null, - - fx: function( elem, options, prop ){ - this.options = options; - this.elem = elem; - this.prop = prop; - - if ( !options.orig ) - options.orig = {}; - } - -}); - -jQuery.fx.prototype = { - - // Simple function for setting a style value - update: function(){ - if ( this.options.step ) - this.options.step.call( this.elem, this.now, this ); - - (jQuery.fx.step[this.prop] || jQuery.fx.step._default)( this ); - - // Set display property to block for height/width animations - if ( this.prop == "height" || this.prop == "width" ) - this.elem.style.display = "block"; - }, - - // Get the current size - cur: function(force){ - if ( this.elem[this.prop] != null && this.elem.style[this.prop] == null ) - return this.elem[ this.prop ]; - - var r = parseFloat(jQuery.css(this.elem, this.prop, force)); - return r && r > -10000 ? r : parseFloat(jQuery.curCSS(this.elem, this.prop)) || 0; - }, - - // Start an animation from one number to another - custom: function(from, to, unit){ - this.startTime = now(); - this.start = from; - this.end = to; - this.unit = unit || this.unit || "px"; - this.now = this.start; - this.pos = this.state = 0; - this.update(); - - var self = this; - function t(gotoEnd){ - return self.step(gotoEnd); - } - - t.elem = this.elem; - - jQuery.timers.push(t); - - if ( jQuery.timerId == null ) { - jQuery.timerId = setInterval(function(){ - var timers = jQuery.timers; - - for ( var i = 0; i < timers.length; i++ ) - if ( !timers[i]() ) - timers.splice(i--, 1); - - if ( !timers.length ) { - clearInterval( jQuery.timerId ); - jQuery.timerId = null; - } - }, 13); - } - }, - - // Simple 'show' function - show: function(){ - // Remember where we started, so that we can go back to it later - this.options.orig[this.prop] = jQuery.attr( this.elem.style, this.prop ); - this.options.show = true; - - // Begin the animation - this.custom(0, this.cur()); - - // Make sure that we start at a small width/height to avoid any - // flash of content - if ( this.prop == "width" || this.prop == "height" ) - this.elem.style[this.prop] = "1px"; - - // Start by showing the element - jQuery(this.elem).show(); - }, - - // Simple 'hide' function - hide: function(){ - // Remember where we started, so that we can go back to it later - this.options.orig[this.prop] = jQuery.attr( this.elem.style, this.prop ); - this.options.hide = true; - - // Begin the animation - this.custom(this.cur(), 0); - }, - - // Each step of an animation - step: function(gotoEnd){ - var t = now(); - - if ( gotoEnd || t > this.options.duration + this.startTime ) { - this.now = this.end; - this.pos = this.state = 1; - this.update(); - - this.options.curAnim[ this.prop ] = true; - - var done = true; - for ( var i in this.options.curAnim ) - if ( this.options.curAnim[i] !== true ) - done = false; - - if ( done ) { - if ( this.options.display != null ) { - // Reset the overflow - this.elem.style.overflow = this.options.overflow; - - // Reset the display - this.elem.style.display = this.options.display; - if ( jQuery.css(this.elem, "display") == "none" ) - this.elem.style.display = "block"; - } - - // Hide the element if the "hide" operation was done - if ( this.options.hide ) - this.elem.style.display = "none"; - - // Reset the properties, if the item has been hidden or shown - if ( this.options.hide || this.options.show ) - for ( var p in this.options.curAnim ) - jQuery.attr(this.elem.style, p, this.options.orig[p]); - } - - if ( done ) - // Execute the complete function - this.options.complete.call( this.elem ); - - return false; - } else { - var n = t - this.startTime; - this.state = n / this.options.duration; - - // Perform the easing function, defaults to swing - this.pos = jQuery.easing[this.options.easing || (jQuery.easing.swing ? "swing" : "linear")](this.state, n, 0, 1, this.options.duration); - this.now = this.start + ((this.end - this.start) * this.pos); - - // Perform the next step of the animation - this.update(); - } - - return true; - } - -}; - -jQuery.extend( jQuery.fx, { - speeds:{ - slow: 600, - fast: 200, - // Default speed - def: 400 - }, - step: { - scrollLeft: function(fx){ - fx.elem.scrollLeft = fx.now; - }, - - scrollTop: function(fx){ - fx.elem.scrollTop = fx.now; - }, - - opacity: function(fx){ - jQuery.attr(fx.elem.style, "opacity", fx.now); - }, - - _default: function(fx){ - fx.elem.style[ fx.prop ] = fx.now + fx.unit; - } - } -}); -// The Offset Method -// Originally By Brandon Aaron, part of the Dimension Plugin -// http://jquery.com/plugins/project/dimensions -jQuery.fn.offset = function() { - var left = 0, top = 0, elem = this[0], results; - - if ( elem ) with ( jQuery.browser ) { - var parent = elem.parentNode, - offsetChild = elem, - offsetParent = elem.offsetParent, - doc = elem.ownerDocument, - safari2 = safari && parseInt(version) < 522 && !/adobeair/i.test(userAgent), - css = jQuery.curCSS, - fixed = css(elem, "position") == "fixed"; - - // Use getBoundingClientRect if available - if ( elem.getBoundingClientRect ) { - var box = elem.getBoundingClientRect(); - - // Add the document scroll offsets - add(box.left + Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft), - box.top + Math.max(doc.documentElement.scrollTop, doc.body.scrollTop)); - - // IE adds the HTML element's border, by default it is medium which is 2px - // IE 6 and 7 quirks mode the border width is overwritable by the following css html { border: 0; } - // IE 7 standards mode, the border is always 2px - // This border/offset is typically represented by the clientLeft and clientTop properties - // However, in IE6 and 7 quirks mode the clientLeft and clientTop properties are not updated when overwriting it via CSS - // Therefore this method will be off by 2px in IE while in quirksmode - add( -doc.documentElement.clientLeft, -doc.documentElement.clientTop ); - - // Otherwise loop through the offsetParents and parentNodes - } else { - - // Initial element offsets - add( elem.offsetLeft, elem.offsetTop ); - - // Get parent offsets - while ( offsetParent ) { - // Add offsetParent offsets - add( offsetParent.offsetLeft, offsetParent.offsetTop ); - - // Mozilla and Safari > 2 does not include the border on offset parents - // However Mozilla adds the border for table or table cells - if ( mozilla && !/^t(able|d|h)$/i.test(offsetParent.tagName) || safari && !safari2 ) - border( offsetParent ); - - // Add the document scroll offsets if position is fixed on any offsetParent - if ( !fixed && css(offsetParent, "position") == "fixed" ) - fixed = true; - - // Set offsetChild to previous offsetParent unless it is the body element - offsetChild = /^body$/i.test(offsetParent.tagName) ? offsetChild : offsetParent; - // Get next offsetParent - offsetParent = offsetParent.offsetParent; - } - - // Get parent scroll offsets - while ( parent && parent.tagName && !/^body|html$/i.test(parent.tagName) ) { - // Remove parent scroll UNLESS that parent is inline or a table to work around Opera inline/table scrollLeft/Top bug - if ( !/^inline|table.*$/i.test(css(parent, "display")) ) - // Subtract parent scroll offsets - add( -parent.scrollLeft, -parent.scrollTop ); - - // Mozilla does not add the border for a parent that has overflow != visible - if ( mozilla && css(parent, "overflow") != "visible" ) - border( parent ); - - // Get next parent - parent = parent.parentNode; - } - - // Safari <= 2 doubles body offsets with a fixed position element/offsetParent or absolutely positioned offsetChild - // Mozilla doubles body offsets with a non-absolutely positioned offsetChild - if ( (safari2 && (fixed || css(offsetChild, "position") == "absolute")) || - (mozilla && css(offsetChild, "position") != "absolute") ) - add( -doc.body.offsetLeft, -doc.body.offsetTop ); - - // Add the document scroll offsets if position is fixed - if ( fixed ) - add(Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft), - Math.max(doc.documentElement.scrollTop, doc.body.scrollTop)); - } - - // Return an object with top and left properties - results = { top: top, left: left }; - } - - function border(elem) { - add( jQuery.curCSS(elem, "borderLeftWidth", true), jQuery.curCSS(elem, "borderTopWidth", true) ); - } - - function add(l, t) { - left += parseInt(l, 10) || 0; - top += parseInt(t, 10) || 0; - } - - return results; -}; - - -jQuery.fn.extend({ - position: function() { - var left = 0, top = 0, results; - - if ( this[0] ) { - // Get *real* offsetParent - var offsetParent = this.offsetParent(), - - // Get correct offsets - offset = this.offset(), - parentOffset = /^body|html$/i.test(offsetParent[0].tagName) ? { top: 0, left: 0 } : offsetParent.offset(); - - // Subtract element margins - // note: when an element has margin: auto the offsetLeft and marginLeft - // are the same in Safari causing offset.left to incorrectly be 0 - offset.top -= num( this, 'marginTop' ); - offset.left -= num( this, 'marginLeft' ); - - // Add offsetParent borders - parentOffset.top += num( offsetParent, 'borderTopWidth' ); - parentOffset.left += num( offsetParent, 'borderLeftWidth' ); - - // Subtract the two offsets - results = { - top: offset.top - parentOffset.top, - left: offset.left - parentOffset.left - }; - } - - return results; - }, - - offsetParent: function() { - var offsetParent = this[0].offsetParent; - while ( offsetParent && (!/^body|html$/i.test(offsetParent.tagName) && jQuery.css(offsetParent, 'position') == 'static') ) - offsetParent = offsetParent.offsetParent; - return jQuery(offsetParent); - } -}); - - -// Create scrollLeft and scrollTop methods -jQuery.each( ['Left', 'Top'], function(i, name) { - var method = 'scroll' + name; - - jQuery.fn[ method ] = function(val) { - if (!this[0]) return; - - return val != undefined ? - - // Set the scroll offset - this.each(function() { - this == window || this == document ? - window.scrollTo( - !i ? val : jQuery(window).scrollLeft(), - i ? val : jQuery(window).scrollTop() - ) : - this[ method ] = val; - }) : - - // Return the scroll offset - this[0] == window || this[0] == document ? - self[ i ? 'pageYOffset' : 'pageXOffset' ] || - jQuery.boxModel && document.documentElement[ method ] || - document.body[ method ] : - this[0][ method ]; - }; -}); -// Create innerHeight, innerWidth, outerHeight and outerWidth methods -jQuery.each([ "Height", "Width" ], function(i, name){ - - var tl = i ? "Left" : "Top", // top or left - br = i ? "Right" : "Bottom"; // bottom or right - - // innerHeight and innerWidth - jQuery.fn["inner" + name] = function(){ - return this[ name.toLowerCase() ]() + - num(this, "padding" + tl) + - num(this, "padding" + br); - }; - - // outerHeight and outerWidth - jQuery.fn["outer" + name] = function(margin) { - return this["inner" + name]() + - num(this, "border" + tl + "Width") + - num(this, "border" + br + "Width") + - (margin ? - num(this, "margin" + tl) + num(this, "margin" + br) : 0); - }; - -});})(); diff --git a/forum/skins/default/media/js/.svn/text-base/jquery-1.2.6.min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery-1.2.6.min.js.svn-base deleted file mode 100644 index 82b98e1d76664db1090d5622d804553c5ac66297..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery-1.2.6.min.js.svn-base +++ /dev/null @@ -1,32 +0,0 @@ -/* - * jQuery 1.2.6 - New Wave Javascript - * - * Copyright (c) 2008 John Resig (jquery.com) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * $Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008) $ - * $Rev: 5685 $ - */ -(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3])return jQuery().find(selector);return jQuery(elem);}selector=[];}}else -return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else -return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else -selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery.browser.msie&&!option.attributes.value.specified?option.text:option.value;if(one)return value;values.push(value);}}return values;}else -return(this[0].value||"").replace(/\r/g,"");}return undefined;}if(value.constructor==Number)value+='';return this.each(function(){if(this.nodeType!=1)return;if(value.constructor==Array&&/radio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else -this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else -return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script"))scripts=scripts.add(elem);else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else -jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==i){target=this;--i;}for(;i<length;i++)if((options=arguments[i])!=null)for(var name in options){var src=target[name],copy=options[name];if(target===copy)continue;if(deep&©&&typeof copy=="object"&&!copy.nodeType)target[name]=jQuery.extend(deep,src||(copy.length!=null?[]:{}),copy);else if(copy!==undefined)target[name]=copy;}return target;};var expando="jQuery"+now(),uuid=0,windowData={},exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,defaultView=document.defaultView||{};jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window.jQuery=_jQuery;return jQuery;},isFunction:function(fn){return!!fn&&typeof fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/^[\s[]?function/.test(fn+"");},isXMLDoc:function(elem){return elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&&!elem.ownerDocument.body;},globalEval:function(data){data=jQuery.trim(data);if(data){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.browser.msie)script.text=data;else -script.appendChild(document.createTextNode(data));head.insertBefore(script,head.firstChild);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])jQuery.cache[id]={};if(data!==undefined)jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando);}delete jQuery.cache[id];}},each:function(object,callback,args){var name,i=0,length=object.length;if(args){if(length==undefined){for(name in object)if(callback.apply(object[name],args)===false)break;}else -for(;i<length;)if(callback.apply(object[i++],args)===false)break;}else{if(length==undefined){for(name in object)if(callback.call(object[name],name,object[name])===false)break;}else -for(var value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}return object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=value.call(elem,i);return value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?value+"px":value;},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className))elem.className+=(elem.className?" ":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)elem.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return!jQuery.className.has(classNames,className);}).join(" "):"";},has:function(elem,className){return jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else -jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari)return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem))ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode)stack.unshift(a);for(;i<stack.length;i++)if(color(stack[i])){swap[i]=stack[i].style.display;stack[i].style.display="block";}ret=name=="display"&&swap[stack.length-1]!=null?"none":(computedStyle&&computedStyle.getPropertyValue(name))||"";for(i=0;i<swap.length;i++)if(swap[i]!=null)stack[i].style.display=swap[i];}if(name=="opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}}return ret;},clean:function(elems,context){var ret=[];context=context||document;if(typeof context.createElement=='undefined')context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;jQuery.each(elems,function(i,elem){if(!elem)return;if(elem.constructor==Number)elem+='';if(typeof elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else -ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;return elem[name];}if(msie&¬xml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call)ret[0]=array;else -while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i<length;i++)if(array[i]===elem)return i;return-1;},merge:function(first,second){var i=0,elem,pos=first.length;if(jQuery.browser.msie){while(elem=second[i++])if(elem.nodeType!=8)first[pos++]=elem;}else -while(elem=second[i++])first[pos++]=elem;return first;},unique:function(array){var ret=[],done={};try{for(var i=0,length=array.length;i<length;i++){var id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e){ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++)if(!inv!=!callback(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var ret=[];for(var i=0,length=elems.length;i<length;i++){var value=callback(elems[i],i);if(value!=null)ret[ret.length]=value;}return ret.concat.apply([],ret);}});var userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)};var styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat";jQuery.extend({boxModel:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing"}});jQuery.each({parent:function(elem){return elem.parentNode;},parents:function(elem){return jQuery.dir(elem,"parentNode");},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof selector=="string")ret=jQuery.multiFilter(selector,ret);return this.pushStack(jQuery.unique(ret));};});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(){var args=arguments;return this.each(function(){for(var i=0,length=args.length;i<length;i++)jQuery(args[i])[original](this);});};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames){jQuery.className[jQuery.className.has(this,classNames)?"remove":"add"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).add(this).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery(">*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return i<m[3]-0;},gt:function(a,i,m){return i>m[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j<rl;j++){var n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild;for(;n;n=n.nextSibling)if(n.nodeType==1){var id=jQuery.data(n);if(m=="~"&&merge[id])break;if(!nodeName||n.nodeName.toUpperCase()==nodeName){if(m=="~")merge[id]=true;r.push(n);}if(m=="+")break;}}ret=r;t=jQuery.trim(t.replace(re,""));foundToken=true;}}if(t&&!foundToken){if(!t.indexOf(",")){if(context==ret[0])ret.shift();done=jQuery.merge(done,ret);r=ret=[context];t=" "+t.substr(1,t.length);}else{var re2=quickID;var m=re2.exec(t);if(m){m=[0,m[2],m[3],m[1]];}else{re2=quickClass;m=re2.exec(t);}m[2]=m[2].replace(/\\/g,"");var elem=ret[ret.length-1];if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){var oid=elem.getElementById(m[2]);if((jQuery.browser.msie||jQuery.browser.opera)&&oid&&typeof oid.id=="string"&&oid.id!=m[2])oid=jQuery('[@id="'+m[2]+'"]',elem)[0];ret=r=oid&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[];}else{for(var i=0;ret[i];i++){var tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];if(tag=="*"&&ret[i].nodeName.toLowerCase()=="object")tag="param";r=jQuery.merge(r,ret[i].getElementsByTagName(tag));}if(m[1]==".")r=jQuery.classFilter(r,m[2]);if(m[1]=="#"){var tmp=[];for(var i=0;r[i];i++)if(r[i].getAttribute("id")==m[2]){tmp=[r[i]];break;}r=tmp;}ret=r;}t=t.replace(re2,"");}}if(t){var val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}if(t)ret=[];if(ret&&context==ret[0])ret.shift();done=jQuery.merge(done,ret);return done;},classFilter:function(r,m,not){m=" "+m+" ";var tmp=[];for(var i=0;r[i];i++){var pass=(" "+r[i].className+" ").indexOf(m)>=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i<rl;i++){var a=r[i],z=a[jQuery.props[m[2]]||m[2]];if(z==null||/href|src|selected/.test(m[2]))z=jQuery.attr(a,m[2])||'';if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i<rl;i++){var node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode);if(!merge[id]){var c=1;for(var n=parentNode.firstChild;n;n=n.nextSibling)if(n.nodeType==1)n.nodeIndex=c++;merge[id]=true;}var add=false;if(first==0){if(node.nodeIndex==last)add=true;}else if((node.nodeIndex-last)%first==0&&(node.nodeIndex-last)/first>=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered)return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else -for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;}data[0].type=type;if(exclusive)data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle)val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}return val;},fix:function(event){if(event[expando]==true)return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--)event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i<args.length)jQuery.event.proxy(fn,args[i++]);return this.click(jQuery.event.proxy(fn,function(event){this.lastToggle=(this.lastToggle||0)%i;event.preventDefault();return args[this.lastToggle++].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else -jQuery.readyList.push(function(){return fn.call(this,jQuery);});return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.call(document);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",jQuery.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)return;for(var i=0;i<document.styleSheets.length;i++)if(document.styleSheets[i].disabled){setTimeout(arguments.callee,0);return;}jQuery.ready();},false);if(jQuery.browser.safari){var numStyles;(function(){if(jQuery.isReady)return;if(document.readyState!="loaded"&&document.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(numStyles===undefined)numStyles=jQuery("style, link[rel=stylesheet]").length;if(document.styleSheets.length!=numStyles){setTimeout(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"load",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,select,"+"submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};});var withinElement=function(event,elem){var parent=event.relatedTarget;while(parent&&parent!=elem)try{parent=parent.parentNode;}catch(error){parent=elem;}return parent==elem;};jQuery(window).bind("unload",function(){jQuery("*").add(document).unbind();});jQuery.fn.extend({_load:jQuery.fn.load,load:function(url,params,callback){if(typeof url!='string')return this._load(url);var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else -xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else -jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(filter)data=filter(data,type);if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else -for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else -s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else -e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));}return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--,1);if(!timers.length){clearInterval(jQuery.timerId);jQuery.timerId=null;}},13);}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.show=true;this.custom(0,this.cur());if(this.prop=="width"||this.prop=="height")this.elem.style[this.prop]="1px";jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now();if(gotoEnd||t>this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done)this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;}return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})(); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.ajaxfileupload.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.ajaxfileupload.js.svn-base deleted file mode 100644 index 752927768ffff32d2c40ca5d6478953e732d13d7..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.ajaxfileupload.js.svn-base +++ /dev/null @@ -1,195 +0,0 @@ -jQuery.extend({ - createUploadIframe: function(id, uri){ - //create frame - var frameId = 'jUploadFrame' + id; - if(window.ActiveXObject) { - var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />'); - if(typeof uri== 'boolean'){ - io.src = 'javascript:false'; - } - else if(typeof uri== 'string'){ - io.src = uri; - } - } - else { - var io = document.createElement('iframe'); - io.id = frameId; - io.name = frameId; - } - io.style.position = 'absolute'; - io.style.top = '-1000px'; - io.style.left = '-1000px'; - - document.body.appendChild(io); - return io; - }, - createUploadForm: function(id, fileElementId) - { - //create form - var formId = 'jUploadForm' + id; - var fileId = 'jUploadFile' + id; - var form = $('<form action="" method="POST" name="' + formId + '" id="' + formId - + '" enctype="multipart/form-data"></form>'); - var oldElement = $('#' + fileElementId); - var newElement = $(oldElement).clone(); - $(oldElement).attr('id', fileId); - $(oldElement).before(newElement); - $(oldElement).appendTo(form); - //set attributes - $(form).css('position', 'absolute'); - $(form).css('top', '-1200px'); - $(form).css('left', '-1200px'); - $(form).appendTo('body'); - return form; - }, - - ajaxFileUpload: function(s) { - // TODO introduce global settings, allowing the client to modify them for all requests, not only timeout - s = jQuery.extend({}, jQuery.ajaxSettings, s); - var id = new Date().getTime() - var form = jQuery.createUploadForm(id, s.fileElementId); - var io = jQuery.createUploadIframe(id, s.secureuri); - var frameId = 'jUploadFrame' + id; - var formId = 'jUploadForm' + id; - // Watch for a new set of requests - if ( s.global && ! jQuery.active++ ) - { - jQuery.event.trigger( "ajaxStart" ); - } - var requestDone = false; - // Create the request object - var xml = {} - if ( s.global ) - jQuery.event.trigger("ajaxSend", [xml, s]); - // Wait for a response to come back - var uploadCallback = function(isTimeout) - { - var io = document.getElementById(frameId); - try { - if(io.contentWindow){ - xml.responseText = io.contentWindow.document.body ? - io.contentWindow.document.body.innerText : null; - xml.responseXML = io.contentWindow.document.XMLDocument ? - io.contentWindow.document.XMLDocument : io.contentWindow.document; - - } - else if(io.contentDocument) - { - xml.responseText = io.contentDocument.document.body ? - io.contentDocument.document.body.textContent || document.body.innerText : null; - xml.responseXML = io.contentDocument.document.XMLDocument ? - io.contentDocument.document.XMLDocument : io.contentDocument.document; - } - } - catch(e) - { - jQuery.handleError(s, xml, null, e); - } - if ( xml || isTimeout == "timeout") - { - requestDone = true; - var status; - try { - status = isTimeout != "timeout" ? "success" : "error"; - // Make sure that the request was successful or notmodified - if ( status != "error" ) - { - // process the data (runs the xml through httpData regardless of callback) - var data = jQuery.uploadHttpData( xml, s.dataType ); - // If a local callback was specified, fire it and pass it the data - if ( s.success ) - s.success( data, status ); - - // Fire the global callback - if( s.global ) - jQuery.event.trigger( "ajaxSuccess", [xml, s] ); - } else - jQuery.handleError(s, xml, status); - } catch(e) - { - status = "error"; - jQuery.handleError(s, xml, status, e); - } - - // The request was completed - if( s.global ) - jQuery.event.trigger( "ajaxComplete", [xml, s] ); - - // Handle the global AJAX counter - if ( s.global && ! --jQuery.active ) - jQuery.event.trigger( "ajaxStop" ); - - // Process result - if ( s.complete ) - s.complete(xml, status); - - jQuery(io).unbind(); - - setTimeout(function() - { try - { - $(io).remove(); - $(form).remove(); - - } catch(e) { - jQuery.handleError(s, xml, null, e); - } - }, 100) - xml = null; - } - } - // Timeout checker - if ( s.timeout > 0 ) { - setTimeout(function(){ - // Check to see if the request is still happening - if( !requestDone ) uploadCallback( "timeout" ); - }, s.timeout); - } - try - { - // var io = $('#' + frameId); - var form = $('#' + formId); - $(form).attr('action', s.url); - $(form).attr('method', 'POST'); - $(form).attr('target', frameId); - if(form.encoding) - { - form.encoding = 'multipart/form-data'; - } - else - { - form.enctype = 'multipart/form-data'; - } - $(form).submit(); - - } catch(e) - { - jQuery.handleError(s, xml, null, e); - } - if(window.attachEvent){ - document.getElementById(frameId).attachEvent('onload', uploadCallback); - } - else{ - document.getElementById(frameId).addEventListener('load', uploadCallback, false); - } - return {abort: function () {}}; - - }, - - uploadHttpData: function( r, type ) { - var data = !type; - data = type == "xml" || data ? r.responseXML : r.responseText; - // If the type is "script", eval it in global context - if ( type == "script" ) - jQuery.globalEval( data ); - // Get the JavaScript object, if JSON is used. - if ( type == "json" ) - eval( "data = " + data ); - // evaluate scripts within html - if ( type == "html" ) - jQuery("<div>").html(data).evalScripts(); - //alert($('param', data).each(function(){alert($(this).attr('value'));})); - return data; - } -}) - diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.caret.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.caret.js.svn-base deleted file mode 100644 index d22d511ba6a3c1091c083b5ba98330e214af43f0..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.caret.js.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -/* - * - * Copyright (c) 2010 C. F., Wong (<a href="http://cloudgen.w0ng.hk">Cloudgen Examplet Store</a>) - * Licensed under the MIT License: - * http://www.opensource.org/licenses/mit-license.php - * - */ -(function(k,e,i,j){k.fn.caret=function(b,l){var a,c,f=this[0],d=k.browser.msie;if(typeof b==="object"&&typeof b.start==="number"&&typeof b.end==="number"){a=b.start;c=b.end}else if(typeof b==="number"&&typeof l==="number"){a=b;c=l}else if(typeof b==="string")if((a=f.value.indexOf(b))>-1)c=a+b[e];else a=null;else if(Object.prototype.toString.call(b)==="[object RegExp]"){b=b.exec(f.value);if(b!=null){a=b.index;c=a+b[0][e]}}if(typeof a!="undefined"){if(d){d=this[0].createTextRange();d.collapse(true); -d.moveStart("character",a);d.moveEnd("character",c-a);d.select()}else{this[0].selectionStart=a;this[0].selectionEnd=c}this[0].focus();return this}else{if(d){c=document.selection;if(this[0].tagName.toLowerCase()!="textarea"){d=this.val();a=c[i]()[j]();a.moveEnd("character",d[e]);var g=a.text==""?d[e]:d.lastIndexOf(a.text);a=c[i]()[j]();a.moveStart("character",-d[e]);var h=a.text[e]}else{a=c[i]();c=a[j]();c.moveToElementText(this[0]);c.setEndPoint("EndToEnd",a);g=c.text[e]-a.text[e];h=g+a.text[e]}}else{g= -f.selectionStart;h=f.selectionEnd}a=f.value.substring(g,h);return{start:g,end:h,text:a,replace:function(m){return f.value.substring(0,g)+m+f.value.substring(h,f.value[e])}}}}})(jQuery,"length","createRange","duplicate"); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.flot.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.flot.js.svn-base deleted file mode 100644 index 83b619290bf43a37774e1b912b73946bebfd10a5..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.flot.js.svn-base +++ /dev/null @@ -1,2421 +0,0 @@ -/* Javascript plotting library for jQuery, v. 0.5. - * - * Released under the MIT license by IOLA, December 2007. - * - */ - -(function($) { - function Plot(target_, data_, options_) { - // data is on the form: - // [ series1, series2 ... ] - // where series is either just the data as [ [x1, y1], [x2, y2], ... ] - // or { data: [ [x1, y1], [x2, y2], ... ], label: "some label" } - - var series = [], - options = { - // the color theme used for graphs - colors: ["#edc240", "#afd8f8", "#cb4b4b", "#4da74d", "#9440ed"], - legend: { - show: true, - noColumns: 1, // number of colums in legend table - labelFormatter: null, // fn: string -> string - labelBoxBorderColor: "#ccc", // border color for the little label boxes - container: null, // container (as jQuery object) to put legend in, null means default on top of graph - position: "ne", // position of default legend container within plot - margin: 5, // distance from grid edge to default legend container within plot - backgroundColor: null, // null means auto-detect - backgroundOpacity: 0.85 // set to 0 to avoid background - }, - xaxis: { - mode: null, // null or "time" - min: null, // min. value to show, null means set automatically - max: null, // max. value to show, null means set automatically - autoscaleMargin: null, // margin in % to add if auto-setting min/max - ticks: null, // either [1, 3] or [[1, "a"], 3] or (fn: axis info -> ticks) or app. number of ticks for auto-ticks - tickFormatter: null, // fn: number -> string - labelWidth: null, // size of tick labels in pixels - labelHeight: null, - - // mode specific options - tickDecimals: null, // no. of decimals, null means auto - tickSize: null, // number or [number, "unit"] - minTickSize: null, // number or [number, "unit"] - monthNames: null, // list of names of months - timeformat: null // format string to use - }, - yaxis: { - autoscaleMargin: 0.02 - }, - x2axis: { - autoscaleMargin: null - }, - y2axis: { - autoscaleMargin: 0.02 - }, - points: { - show: false, - radius: 3, - lineWidth: 2, // in pixels - fill: true, - fillColor: "#ffffff" - }, - lines: { - // we don't put in show: false so we can see - // whether lines were actively disabled - lineWidth: 2, // in pixels - fill: false, - fillColor: null, - steps: false - }, - bars: { - show: false, - lineWidth: 2, // in pixels - barWidth: 1, // in units of the x axis - fill: true, - fillColor: null, - align: "left", // or "center" - horizontal: false // when horizontal, left is now top - }, - threshold: null, // or { below: number, color: color spec} - grid: { - color: "#545454", // primary color used for outline and labels - backgroundColor: null, // null for transparent, else color - tickColor: "#dddddd", // color used for the ticks - labelMargin: 5, // in pixels - borderWidth: 2, // in pixels - borderColor: null, // set if different from the grid color - markings: null, // array of ranges or fn: axes -> array of ranges - markingsColor: "#f4f4f4", - markingsLineWidth: 2, - // interactive stuff - clickable: false, - hoverable: false, - autoHighlight: true, // highlight in case mouse is near - mouseActiveRadius: 10 // how far the mouse can be away to activate an item - }, - selection: { - mode: null, // one of null, "x", "y" or "xy" - color: "#e8cfac" - }, - crosshair: { - mode: null, // one of null, "x", "y" or "xy", - color: "#aa0000" - }, - shadowSize: 3 - }, - canvas = null, // the canvas for the plot itself - overlay = null, // canvas for interactive stuff on top of plot - eventHolder = null, // jQuery object that events should be bound to - ctx = null, octx = null, - target = $(target_), - axes = { xaxis: {}, yaxis: {}, x2axis: {}, y2axis: {} }, - plotOffset = { left: 0, right: 0, top: 0, bottom: 0}, - canvasWidth = 0, canvasHeight = 0, - plotWidth = 0, plotHeight = 0, - // dedicated to storing data for buggy standard compliance cases - workarounds = {}; - - this.setData = setData; - this.setupGrid = setupGrid; - this.draw = draw; - this.clearSelection = clearSelection; - this.setSelection = setSelection; - this.getCanvas = function() { return canvas; }; - this.getPlotOffset = function() { return plotOffset; }; - this.getData = function() { return series; }; - this.getAxes = function() { return axes; }; - this.setCrosshair = setCrosshair; - this.clearCrosshair = function () { setCrosshair(null); }; - this.highlight = highlight; - this.unhighlight = unhighlight; - - // initialize - parseOptions(options_); - setData(data_); - constructCanvas(); - setupGrid(); - draw(); - - - function setData(d) { - series = parseData(d); - - fillInSeriesOptions(); - processData(); - } - - function parseData(d) { - var res = []; - for (var i = 0; i < d.length; ++i) { - var s; - if (d[i].data) { - s = {}; - for (var v in d[i]) - s[v] = d[i][v]; - } - else { - s = { data: d[i] }; - } - res.push(s); - } - - return res; - } - - function parseOptions(o) { - $.extend(true, options, o); - if (options.grid.borderColor == null) - options.grid.borderColor = options.grid.color - // backwards compatibility, to be removed in future - if (options.xaxis.noTicks && options.xaxis.ticks == null) - options.xaxis.ticks = options.xaxis.noTicks; - if (options.yaxis.noTicks && options.yaxis.ticks == null) - options.yaxis.ticks = options.yaxis.noTicks; - if (options.grid.coloredAreas) - options.grid.markings = options.grid.coloredAreas; - if (options.grid.coloredAreasColor) - options.grid.markingsColor = options.grid.coloredAreasColor; - } - - function fillInSeriesOptions() { - var i; - - // collect what we already got of colors - var neededColors = series.length, - usedColors = [], - assignedColors = []; - for (i = 0; i < series.length; ++i) { - var sc = series[i].color; - if (sc != null) { - --neededColors; - if (typeof sc == "number") - assignedColors.push(sc); - else - usedColors.push(parseColor(series[i].color)); - } - } - - // we might need to generate more colors if higher indices - // are assigned - for (i = 0; i < assignedColors.length; ++i) { - neededColors = Math.max(neededColors, assignedColors[i] + 1); - } - - // produce colors as needed - var colors = [], variation = 0; - i = 0; - while (colors.length < neededColors) { - var c; - if (options.colors.length == i) // check degenerate case - c = new Color(100, 100, 100); - else - c = parseColor(options.colors[i]); - - // vary color if needed - var sign = variation % 2 == 1 ? -1 : 1; - var factor = 1 + sign * Math.ceil(variation / 2) * 0.2; - c.scale(factor, factor, factor); - - // FIXME: if we're getting to close to something else, - // we should probably skip this one - colors.push(c); - - ++i; - if (i >= options.colors.length) { - i = 0; - ++variation; - } - } - - // fill in the options - var colori = 0, s; - for (i = 0; i < series.length; ++i) { - s = series[i]; - - // assign colors - if (s.color == null) { - s.color = colors[colori].toString(); - ++colori; - } - else if (typeof s.color == "number") - s.color = colors[s.color].toString(); - - // copy the rest - s.lines = $.extend(true, {}, options.lines, s.lines); - s.points = $.extend(true, {}, options.points, s.points); - s.bars = $.extend(true, {}, options.bars, s.bars); - - // turn on lines automatically in case nothing is set - if (s.lines.show == null && !s.bars.show && !s.points.show) - s.lines.show = true; - if (s.shadowSize == null) - s.shadowSize = options.shadowSize; - - if (!s.xaxis) - s.xaxis = axes.xaxis; - - if (s.xaxis == 1) - s.xaxis = axes.xaxis; - else if (s.xaxis == 2) - s.xaxis = axes.x2axis; - - if (!s.yaxis) - s.yaxis = axes.yaxis; - - if (s.yaxis == 1) - s.yaxis = axes.yaxis; - else if (s.yaxis == 2) - s.yaxis = axes.y2axis; - - if (!s.threshold) - s.threshold = options.threshold; - s.subseries = null; - } - } - - function processData() { - var topSentry = Number.POSITIVE_INFINITY, - bottomSentry = Number.NEGATIVE_INFINITY, - axis, i, j, k, m, s; - - for (axis in axes) { - axes[axis].datamin = topSentry; - axes[axis].datamax = bottomSentry; - axes[axis].min = options[axis].min; - axes[axis].max = options[axis].max; - axes[axis].used = false; - } - - for (i = 0; i < series.length; ++i) { - s = series[i]; - s.datapoints = { points: [], incr: 2 }; - - var data = s.data, - points = s.datapoints.points, - axisx = s.xaxis, axisy = s.yaxis, - xmin = topSentry, xmax = bottomSentry, - ymin = topSentry, ymax = bottomSentry, - x, y, p, incr, format = []; - - // determine the increment - if (s.bars.show) { - s.datapoints.incr = 3; - format.push({ d: 0 }); - } - - /* - // examine data to find out how to copy - for (j = 0; j < data.length; ++j) { - }*/ - - - axisx.used = axisy.used = true; - incr = s.datapoints.incr; - - for (j = k = 0; j < data.length; ++j, k += incr) { - p = data[j]; - x = null; - y = null; - - if (data[j] != null) { - x = p[0]; - y = p[1]; - } - - // convert to number - if (x != null && !isNaN(x = +x)) { - if (x < xmin) - xmin = x; - if (x > xmax) - xmax = x - } - else - x = null; - - if (y != null && !isNaN(y = +y)) { - if (y < ymin) - ymin = y; - if (y > ymax) - ymax = y; - } - else - y = null; - - if (x == null || y == null) - x = y = null; // make sure everything is cleared - - for (m = 2; m < incr; ++m) - points[k + m] = p[m] == null ? format[m-2].d : p[m]; - - points[k + 1] = y; - points[k] = x; - } - - if (s.bars.show) { - // make sure we got room for the bar on the dancing floor - var delta = s.bars.align == "left" ? 0 : -s.bars.barWidth/2; - if(s.bars.horizontal) { - ymin += delta; - ymax += delta + s.bars.barWidth; - } - else { - xmin += delta; - xmax += delta + s.bars.barWidth; - } - } - - axisx.datamin = Math.min(axisx.datamin, xmin); - axisx.datamax = Math.max(axisx.datamax, xmax); - axisy.datamin = Math.min(axisy.datamin, ymin); - axisy.datamax = Math.max(axisy.datamax, ymax); - - - // step charts - if (s.lines.show && s.lines.steps) { - p = []; - // copy, inserting extra points to make steps - for (j = k = 0; j < points.length; j += incr, k += incr) { - x = points[j]; - y = points[j + 1]; - if (j > 0 - && points[j - incr] != null - && x != null - && points[j - incr + 1] != y) { - p[k] = x; - p[k + 1] = points[j - incr + 1]; - k += incr; - } - - p[k] = x; - p[k + 1] = y; - } - s.datapoints.linespoints = p; - } - - // possibly split data points because of threshold - if (s.threshold) { - var orig = $.extend({}, s), thresholded = $.extend({}, s); - orig.datapoints = { points: [], incr: incr }; - thresholded.datapoints = { points: [], incr: incr }; - - thresholded.color = s.threshold.color; - - var below = s.threshold.below, - origpoints = orig.datapoints.points, - threspoints = thresholded.datapoints.points; - - // ordinary points - for (j = 0; j < points.length; j += incr) { - x = points[j]; - y = points[j + 1]; - - if (y < below) - p = threspoints; - else - p = origpoints; - - p.push(x); - p.push(y); - } - - // possibly split lines - if (s.lines.show) { - var lp = s.datapoints.linespoints || points; - - origpoints = []; - threspoints = []; - p = origpoints; - - for (j = 0; j < lp.length; j += incr) { - x = lp[j]; - y = lp[j + 1]; - - var prevp = p; - if (y != null) { - if (y < below) - p = threspoints; - else - p = origpoints; - } - - if (p != prevp && x != null && j > 0 && lp[j - incr] != null) { - // find intersection and add it to both - k = (x - lp[j - incr]) / (y - lp[j - incr + 1]) * (below - y) + x; - prevp.push(k); - prevp.push(below); - p.push(null); // start new segment - p.push(null); - p.push(k); - p.push(below); - } - - p.push(x); - p.push(y); - } - - orig.datapoints.linespoints = origpoints - thresholded.datapoints.linespoints = threspoints; - } - - s.subseries = [orig, thresholded]; - } - } - } - - function constructCanvas() { - function makeCanvas(width, height) { - var c = document.createElement('canvas'); - c.width = width; - c.height = height; - if ($.browser.msie) // excanvas hack - c = window.G_vmlCanvasManager.initElement(c); - return c; - } - - canvasWidth = target.width(); - canvasHeight = target.height(); - target.html(""); // clear target - if (target.css("position") == 'static') - target.css("position", "relative"); // for positioning labels and overlay - - if (canvasWidth <= 0 || canvasHeight <= 0) - throw "Invalid dimensions for plot, width = " + canvasWidth + ", height = " + canvasHeight; - - // the canvas - canvas = $(makeCanvas(canvasWidth, canvasHeight)).appendTo(target).get(0); - ctx = canvas.getContext("2d"); - - // overlay canvas for interactive features - overlay = $(makeCanvas(canvasWidth, canvasHeight)).css({ position: 'absolute', left: 0, top: 0 }).appendTo(target).get(0); - octx = overlay.getContext("2d"); - - // we include the canvas in the event holder too, because IE 7 - // sometimes has trouble with the stacking order - eventHolder = $([overlay, canvas]); - - // bind events - if (options.selection.mode != null || options.crosshair.mode != null - || options.grid.hoverable) { - // FIXME: temp. work-around until jQuery bug 4398 is fixed - eventHolder.each(function () { - this.onmousemove = onMouseMove; - }); - - if (options.selection.mode != null) - eventHolder.mousedown(onMouseDown); - } - - if (options.crosshair.mode != null) - eventHolder.mouseout(onMouseOut); - - if (options.grid.clickable) - eventHolder.click(onClick); - } - - function setupGrid() { - function setupAxis(axis, options) { - setRange(axis, options); - prepareTickGeneration(axis, options); - setTicks(axis, options); - // add transformation helpers - if (axis == axes.xaxis || axis == axes.x2axis) { - // data point to canvas coordinate - axis.p2c = function (p) { return (p - axis.min) * axis.scale; }; - // canvas coordinate to data point - axis.c2p = function (c) { return axis.min + c / axis.scale; }; - } - else { - axis.p2c = function (p) { return (axis.max - p) * axis.scale; }; - axis.c2p = function (p) { return axis.max - p / axis.scale; }; - } - } - - for (var axis in axes) - setupAxis(axes[axis], options[axis]); - - setSpacing(); - insertLabels(); - insertLegend(); - } - - function setRange(axis, axisOptions) { - var min = axisOptions.min != null ? +axisOptions.min : axis.datamin, - max = axisOptions.max != null ? +axisOptions.max : axis.datamax; - - // degenerate case - if (min == Number.POSITIVE_INFINITY) - min = 0; - if (max == Number.NEGATIVE_INFINITY) - max = 1; - - if (max - min == 0.0) { - // degenerate case - var widen = max == 0 ? 1 : 0.01; - - if (axisOptions.min == null) - min -= widen; - // alway widen max if we couldn't widen min to ensure we - // don't fall into min == max which doesn't work - if (axisOptions.max == null || axisOptions.min != null) - max += widen; - } - else { - // consider autoscaling - var margin = axisOptions.autoscaleMargin; - if (margin != null) { - if (axisOptions.min == null) { - min -= (max - min) * margin; - // make sure we don't go below zero if all values - // are positive - if (min < 0 && axis.datamin >= 0) - min = 0; - } - if (axisOptions.max == null) { - max += (max - min) * margin; - if (max > 0 && axis.datamax <= 0) - max = 0; - } - } - } - axis.min = min; - axis.max = max; - } - - function prepareTickGeneration(axis, axisOptions) { - // estimate number of ticks - var noTicks; - if (typeof axisOptions.ticks == "number" && axisOptions.ticks > 0) - noTicks = axisOptions.ticks; - else if (axis == axes.xaxis || axis == axes.x2axis) - noTicks = canvasWidth / 100; - else - noTicks = canvasHeight / 60; - - var delta = (axis.max - axis.min) / noTicks; - var size, generator, unit, formatter, i, magn, norm; - - if (axisOptions.mode == "time") { - // pretty handling of time - - // map of app. size of time units in milliseconds - var timeUnitSize = { - "second": 1000, - "minute": 60 * 1000, - "hour": 60 * 60 * 1000, - "day": 24 * 60 * 60 * 1000, - "month": 30 * 24 * 60 * 60 * 1000, - "year": 365.2425 * 24 * 60 * 60 * 1000 - }; - - - // the allowed tick sizes, after 1 year we use - // an integer algorithm - var spec = [ - [1, "second"], [2, "second"], [5, "second"], [10, "second"], - [30, "second"], - [1, "minute"], [2, "minute"], [5, "minute"], [10, "minute"], - [30, "minute"], - [1, "hour"], [2, "hour"], [4, "hour"], - [8, "hour"], [12, "hour"], - [1, "day"], [2, "day"], [3, "day"], - [0.25, "month"], [0.5, "month"], [1, "month"], - [2, "month"], [3, "month"], [6, "month"], - [1, "year"] - ]; - - var minSize = 0; - if (axisOptions.minTickSize != null) { - if (typeof axisOptions.tickSize == "number") - minSize = axisOptions.tickSize; - else - minSize = axisOptions.minTickSize[0] * timeUnitSize[axisOptions.minTickSize[1]]; - } - - for (i = 0; i < spec.length - 1; ++i) - if (delta < (spec[i][0] * timeUnitSize[spec[i][1]] - + spec[i + 1][0] * timeUnitSize[spec[i + 1][1]]) / 2 - && spec[i][0] * timeUnitSize[spec[i][1]] >= minSize) - break; - size = spec[i][0]; - unit = spec[i][1]; - - // special-case the possibility of several years - if (unit == "year") { - magn = Math.pow(10, Math.floor(Math.log(delta / timeUnitSize.year) / Math.LN10)); - norm = (delta / timeUnitSize.year) / magn; - if (norm < 1.5) - size = 1; - else if (norm < 3) - size = 2; - else if (norm < 7.5) - size = 5; - else - size = 10; - - size *= magn; - } - - if (axisOptions.tickSize) { - size = axisOptions.tickSize[0]; - unit = axisOptions.tickSize[1]; - } - - generator = function(axis) { - var ticks = [], - tickSize = axis.tickSize[0], unit = axis.tickSize[1], - d = new Date(axis.min); - - var step = tickSize * timeUnitSize[unit]; - - if (unit == "second") - d.setUTCSeconds(floorInBase(d.getUTCSeconds(), tickSize)); - if (unit == "minute") - d.setUTCMinutes(floorInBase(d.getUTCMinutes(), tickSize)); - if (unit == "hour") - d.setUTCHours(floorInBase(d.getUTCHours(), tickSize)); - if (unit == "month") - d.setUTCMonth(floorInBase(d.getUTCMonth(), tickSize)); - if (unit == "year") - d.setUTCFullYear(floorInBase(d.getUTCFullYear(), tickSize)); - - // reset smaller components - d.setUTCMilliseconds(0); - if (step >= timeUnitSize.minute) - d.setUTCSeconds(0); - if (step >= timeUnitSize.hour) - d.setUTCMinutes(0); - if (step >= timeUnitSize.day) - d.setUTCHours(0); - if (step >= timeUnitSize.day * 4) - d.setUTCDate(1); - if (step >= timeUnitSize.year) - d.setUTCMonth(0); - - - var carry = 0, v = Number.NaN, prev; - do { - prev = v; - v = d.getTime(); - ticks.push({ v: v, label: axis.tickFormatter(v, axis) }); - if (unit == "month") { - if (tickSize < 1) { - // a bit complicated - we'll divide the month - // up but we need to take care of fractions - // so we don't end up in the middle of a day - d.setUTCDate(1); - var start = d.getTime(); - d.setUTCMonth(d.getUTCMonth() + 1); - var end = d.getTime(); - d.setTime(v + carry * timeUnitSize.hour + (end - start) * tickSize); - carry = d.getUTCHours(); - d.setUTCHours(0); - } - else - d.setUTCMonth(d.getUTCMonth() + tickSize); - } - else if (unit == "year") { - d.setUTCFullYear(d.getUTCFullYear() + tickSize); - } - else - d.setTime(v + step); - } while (v < axis.max && v != prev); - - return ticks; - }; - - formatter = function (v, axis) { - var d = new Date(v); - - // first check global format - if (axisOptions.timeformat != null) - return $.plot.formatDate(d, axisOptions.timeformat, axisOptions.monthNames); - - var t = axis.tickSize[0] * timeUnitSize[axis.tickSize[1]]; - var span = axis.max - axis.min; - - if (t < timeUnitSize.minute) - fmt = "%h:%M:%S"; - else if (t < timeUnitSize.day) { - if (span < 2 * timeUnitSize.day) - fmt = "%h:%M"; - else - fmt = "%b %d %h:%M"; - } - else if (t < timeUnitSize.month) - fmt = "%b %d"; - else if (t < timeUnitSize.year) { - if (span < timeUnitSize.year) - fmt = "%b"; - else - fmt = "%b %y"; - } - else - fmt = "%y"; - - return $.plot.formatDate(d, fmt, axisOptions.monthNames); - }; - } - else { - // pretty rounding of base-10 numbers - var maxDec = axisOptions.tickDecimals; - var dec = -Math.floor(Math.log(delta) / Math.LN10); - if (maxDec != null && dec > maxDec) - dec = maxDec; - - magn = Math.pow(10, -dec); - norm = delta / magn; // norm is between 1.0 and 10.0 - - if (norm < 1.5) - size = 1; - else if (norm < 3) { - size = 2; - // special case for 2.5, requires an extra decimal - if (norm > 2.25 && (maxDec == null || dec + 1 <= maxDec)) { - size = 2.5; - ++dec; - } - } - else if (norm < 7.5) - size = 5; - else - size = 10; - - size *= magn; - - if (axisOptions.minTickSize != null && size < axisOptions.minTickSize) - size = axisOptions.minTickSize; - - if (axisOptions.tickSize != null) - size = axisOptions.tickSize; - - axis.tickDecimals = Math.max(0, (maxDec != null) ? maxDec : dec); - - generator = function (axis) { - var ticks = []; - - // spew out all possible ticks - var start = floorInBase(axis.min, axis.tickSize), - i = 0, v = Number.NaN, prev; - do { - prev = v; - v = start + i * axis.tickSize; - ticks.push({ v: v, label: axis.tickFormatter(v, axis) }); - ++i; - } while (v < axis.max && v != prev); - return ticks; - }; - - formatter = function (v, axis) { - return v.toFixed(axis.tickDecimals); - }; - } - - axis.tickSize = unit ? [size, unit] : size; - axis.tickGenerator = generator; - if ($.isFunction(axisOptions.tickFormatter)) - axis.tickFormatter = function (v, axis) { return "" + axisOptions.tickFormatter(v, axis); }; - else - axis.tickFormatter = formatter; - if (axisOptions.labelWidth != null) - axis.labelWidth = axisOptions.labelWidth; - if (axisOptions.labelHeight != null) - axis.labelHeight = axisOptions.labelHeight; - } - - function setTicks(axis, axisOptions) { - axis.ticks = []; - - if (!axis.used) - return; - - if (axisOptions.ticks == null) - axis.ticks = axis.tickGenerator(axis); - else if (typeof axisOptions.ticks == "number") { - if (axisOptions.ticks > 0) - axis.ticks = axis.tickGenerator(axis); - } - else if (axisOptions.ticks) { - var ticks = axisOptions.ticks; - - if ($.isFunction(ticks)) - // generate the ticks - ticks = ticks({ min: axis.min, max: axis.max }); - - // clean up the user-supplied ticks, copy them over - var i, v; - for (i = 0; i < ticks.length; ++i) { - var label = null; - var t = ticks[i]; - if (typeof t == "object") { - v = t[0]; - if (t.length > 1) - label = t[1]; - } - else - v = t; - if (label == null) - label = axis.tickFormatter(v, axis); - axis.ticks[i] = { v: v, label: label }; - } - } - - if (axisOptions.autoscaleMargin != null && axis.ticks.length > 0) { - // snap to ticks - if (axisOptions.min == null) - axis.min = Math.min(axis.min, axis.ticks[0].v); - if (axisOptions.max == null && axis.ticks.length > 1) - axis.max = Math.min(axis.max, axis.ticks[axis.ticks.length - 1].v); - } - } - - function setSpacing() { - function measureXLabels(axis) { - // to avoid measuring the widths of the labels, we - // construct fixed-size boxes and put the labels inside - // them, we don't need the exact figures and the - // fixed-size box content is easy to center - if (axis.labelWidth == null) - axis.labelWidth = canvasWidth / 6; - - // measure x label heights - if (axis.labelHeight == null) { - labels = []; - for (i = 0; i < axis.ticks.length; ++i) { - l = axis.ticks[i].label; - if (l) - labels.push('<div class="tickLabel" style="float:left;width:' + axis.labelWidth + 'px">' + l + '</div>'); - } - - axis.labelHeight = 0; - if (labels.length > 0) { - var dummyDiv = $('<div style="position:absolute;top:-10000px;width:10000px;font-size:smaller">' - + labels.join("") + '<div style="clear:left"></div></div>').appendTo(target); - axis.labelHeight = dummyDiv.height(); - dummyDiv.remove(); - } - } - } - - function measureYLabels(axis) { - if (axis.labelWidth == null || axis.labelHeight == null) { - var i, labels = [], l; - // calculate y label dimensions - for (i = 0; i < axis.ticks.length; ++i) { - l = axis.ticks[i].label; - if (l) - labels.push('<div class="tickLabel">' + l + '</div>'); - } - - if (labels.length > 0) { - var dummyDiv = $('<div style="position:absolute;top:-10000px;font-size:smaller">' - + labels.join("") + '</div>').appendTo(target); - if (axis.labelWidth == null) - axis.labelWidth = dummyDiv.width(); - if (axis.labelHeight == null) - axis.labelHeight = dummyDiv.find("div").height(); - dummyDiv.remove(); - } - - if (axis.labelWidth == null) - axis.labelWidth = 0; - if (axis.labelHeight == null) - axis.labelHeight = 0; - } - } - - measureXLabels(axes.xaxis); - measureYLabels(axes.yaxis); - measureXLabels(axes.x2axis); - measureYLabels(axes.y2axis); - - // get the most space needed around the grid for things - // that may stick out - var maxOutset = options.grid.borderWidth; - for (i = 0; i < series.length; ++i) - maxOutset = Math.max(maxOutset, 2 * (series[i].points.radius + series[i].points.lineWidth/2)); - - plotOffset.left = plotOffset.right = plotOffset.top = plotOffset.bottom = maxOutset; - - var margin = options.grid.labelMargin + options.grid.borderWidth; - - if (axes.xaxis.labelHeight > 0) - plotOffset.bottom = Math.max(maxOutset, axes.xaxis.labelHeight + margin); - if (axes.yaxis.labelWidth > 0) - plotOffset.left = Math.max(maxOutset, axes.yaxis.labelWidth + margin); - - if (axes.x2axis.labelHeight > 0) - plotOffset.top = Math.max(maxOutset, axes.x2axis.labelHeight + margin); - - if (axes.y2axis.labelWidth > 0) - plotOffset.right = Math.max(maxOutset, axes.y2axis.labelWidth + margin); - - plotWidth = canvasWidth - plotOffset.left - plotOffset.right; - plotHeight = canvasHeight - plotOffset.bottom - plotOffset.top; - - // precompute how much the axis is scaling a point in canvas space - axes.xaxis.scale = plotWidth / (axes.xaxis.max - axes.xaxis.min); - axes.yaxis.scale = plotHeight / (axes.yaxis.max - axes.yaxis.min); - axes.x2axis.scale = plotWidth / (axes.x2axis.max - axes.x2axis.min); - axes.y2axis.scale = plotHeight / (axes.y2axis.max - axes.y2axis.min); - } - - function draw() { - drawGrid(); - for (var i = 0; i < series.length; ++i) { - var s = series[i]; - if (s.subseries) - for (var j = 0; j < s.subseries.length; ++j) - drawSeries(s.subseries[j]); - else - drawSeries(s); - } - } - - function extractRange(ranges, coord) { - var firstAxis = coord + "axis", - secondaryAxis = coord + "2axis", - axis, from, to, reverse; - - if (ranges[firstAxis]) { - axis = axes[firstAxis]; - from = ranges[firstAxis].from; - to = ranges[firstAxis].to; - } - else if (ranges[secondaryAxis]) { - axis = axes[secondaryAxis]; - from = ranges[secondaryAxis].from; - to = ranges[secondaryAxis].to; - } - else { - // backwards-compat stuff - to be removed in future - axis = axes[firstAxis]; - from = ranges[coord + "1"]; - to = ranges[coord + "2"]; - } - - // auto-reverse as an added bonus - if (from != null && to != null && from > to) - return { from: to, to: from, axis: axis }; - - return { from: from, to: to, axis: axis }; - } - - function drawGrid() { - var i; - - ctx.save(); - ctx.clearRect(0, 0, canvasWidth, canvasHeight); - ctx.translate(plotOffset.left, plotOffset.top); - - // draw background, if any - if (options.grid.backgroundColor) { - ctx.fillStyle = getColorOrGradient(options.grid.backgroundColor, plotHeight, 0, "rgba(255, 255, 255, 0)"); - ctx.fillRect(0, 0, plotWidth, plotHeight); - } - - // draw markings - var markings = options.grid.markings; - if (markings) { - if ($.isFunction(markings)) - // xmin etc. are backwards-compatible, to be removed in future - markings = markings({ xmin: axes.xaxis.min, xmax: axes.xaxis.max, ymin: axes.yaxis.min, ymax: axes.yaxis.max, xaxis: axes.xaxis, yaxis: axes.yaxis, x2axis: axes.x2axis, y2axis: axes.y2axis }); - - for (i = 0; i < markings.length; ++i) { - var m = markings[i], - xrange = extractRange(m, "x"), - yrange = extractRange(m, "y"); - - // fill in missing - if (xrange.from == null) - xrange.from = xrange.axis.min; - if (xrange.to == null) - xrange.to = xrange.axis.max; - if (yrange.from == null) - yrange.from = yrange.axis.min; - if (yrange.to == null) - yrange.to = yrange.axis.max; - - // clip - if (xrange.to < xrange.axis.min || xrange.from > xrange.axis.max || - yrange.to < yrange.axis.min || yrange.from > yrange.axis.max) - continue; - - xrange.from = Math.max(xrange.from, xrange.axis.min); - xrange.to = Math.min(xrange.to, xrange.axis.max); - yrange.from = Math.max(yrange.from, yrange.axis.min); - yrange.to = Math.min(yrange.to, yrange.axis.max); - - if (xrange.from == xrange.to && yrange.from == yrange.to) - continue; - - // then draw - xrange.from = xrange.axis.p2c(xrange.from); - xrange.to = xrange.axis.p2c(xrange.to); - yrange.from = yrange.axis.p2c(yrange.from); - yrange.to = yrange.axis.p2c(yrange.to); - - if (xrange.from == xrange.to || yrange.from == yrange.to) { - // draw line - ctx.strokeStyle = m.color || options.grid.markingsColor; - ctx.beginPath(); - ctx.lineWidth = m.lineWidth || options.grid.markingsLineWidth; - //ctx.moveTo(Math.floor(xrange.from), yrange.from); - //ctx.lineTo(Math.floor(xrange.to), yrange.to); - ctx.moveTo(xrange.from, yrange.from); - ctx.lineTo(xrange.to, yrange.to); - ctx.stroke(); - } - else { - // fill area - ctx.fillStyle = m.color || options.grid.markingsColor; - ctx.fillRect(xrange.from, yrange.to, - xrange.to - xrange.from, - yrange.from - yrange.to); - } - } - } - - // draw the inner grid - ctx.lineWidth = 1; - ctx.strokeStyle = options.grid.tickColor; - ctx.beginPath(); - var v, axis = axes.xaxis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axes.xaxis.max) - continue; // skip those lying on the axes - - ctx.moveTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, 0); - ctx.lineTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, plotHeight); - } - - axis = axes.yaxis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axis.max) - continue; - - ctx.moveTo(0, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - ctx.lineTo(plotWidth, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - } - - axis = axes.x2axis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axis.max) - continue; - - ctx.moveTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, -5); - ctx.lineTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, 5); - } - - axis = axes.y2axis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axis.max) - continue; - - ctx.moveTo(plotWidth-5, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - ctx.lineTo(plotWidth+5, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - } - - ctx.stroke(); - - if (options.grid.borderWidth) { - // draw border - var bw = options.grid.borderWidth; - ctx.lineWidth = bw; - ctx.strokeStyle = options.grid.borderColor; - ctx.strokeRect(-bw/2, -bw/2, plotWidth + bw, plotHeight + bw); - } - - ctx.restore(); - } - - function insertLabels() { - target.find(".tickLabels").remove(); - - var html = ['<div class="tickLabels" style="font-size:smaller;color:' + options.grid.color + '">']; - - function addLabels(axis, labelGenerator) { - for (var i = 0; i < axis.ticks.length; ++i) { - var tick = axis.ticks[i]; - if (!tick.label || tick.v < axis.min || tick.v > axis.max) - continue; - html.push(labelGenerator(tick, axis)); - } - } - - var margin = options.grid.labelMargin + options.grid.borderWidth; - - addLabels(axes.xaxis, function (tick, axis) { - return '<div style="position:absolute;top:' + (plotOffset.top + plotHeight + margin) + 'px;left:' + Math.round(plotOffset.left + axis.p2c(tick.v) - axis.labelWidth/2) + 'px;width:' + axis.labelWidth + 'px;text-align:center" class="tickLabel">' + tick.label + "</div>"; - }); - - - addLabels(axes.yaxis, function (tick, axis) { - return '<div style="position:absolute;top:' + Math.round(plotOffset.top + axis.p2c(tick.v) - axis.labelHeight/2) + 'px;right:' + (plotOffset.right + plotWidth + margin) + 'px;width:' + axis.labelWidth + 'px;text-align:right" class="tickLabel">' + tick.label + "</div>"; - }); - - addLabels(axes.x2axis, function (tick, axis) { - return '<div style="position:absolute;bottom:' + (plotOffset.bottom + plotHeight + margin) + 'px;left:' + Math.round(plotOffset.left + axis.p2c(tick.v) - axis.labelWidth/2) + 'px;width:' + axis.labelWidth + 'px;text-align:center" class="tickLabel">' + tick.label + "</div>"; - }); - - addLabels(axes.y2axis, function (tick, axis) { - return '<div style="position:absolute;top:' + Math.round(plotOffset.top + axis.p2c(tick.v) - axis.labelHeight/2) + 'px;left:' + (plotOffset.left + plotWidth + margin) +'px;width:' + axis.labelWidth + 'px;text-align:left" class="tickLabel">' + tick.label + "</div>"; - }); - - html.push('</div>'); - - target.append(html.join("")); - } - - function drawSeries(series) { - if (series.lines.show) - drawSeriesLines(series); - if (series.bars.show) - drawSeriesBars(series); - if (series.points.show) - drawSeriesPoints(series); - } - - function drawSeriesLines(series) { - function plotLine(datapoints, xoffset, yoffset, axisx, axisy) { - var points = datapoints.linespoints || datapoints.points, - incr = datapoints.incr, - prevx = null, prevy = null; - - ctx.beginPath(); - for (var i = incr; i < points.length; i += incr) { - var x1 = points[i - incr], y1 = points[i - incr + 1], - x2 = points[i], y2 = points[i + 1]; - - if (x1 == null || x2 == null) - continue; - - // clip with ymin - if (y1 <= y2 && y1 < axisy.min) { - if (y2 < axisy.min) - continue; // line segment is outside - // compute new intersection point - x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.min; - } - else if (y2 <= y1 && y2 < axisy.min) { - if (y1 < axisy.min) - continue; - x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.min; - } - - // clip with ymax - if (y1 >= y2 && y1 > axisy.max) { - if (y2 > axisy.max) - continue; - x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.max; - } - else if (y2 >= y1 && y2 > axisy.max) { - if (y1 > axisy.max) - continue; - x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.max; - } - - // clip with xmin - if (x1 <= x2 && x1 < axisx.min) { - if (x2 < axisx.min) - continue; - y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.min; - } - else if (x2 <= x1 && x2 < axisx.min) { - if (x1 < axisx.min) - continue; - y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.min; - } - - // clip with xmax - if (x1 >= x2 && x1 > axisx.max) { - if (x2 > axisx.max) - continue; - y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.max; - } - else if (x2 >= x1 && x2 > axisx.max) { - if (x1 > axisx.max) - continue; - y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.max; - } - - if (x1 != prevx || y1 != prevy) - ctx.moveTo(axisx.p2c(x1) + xoffset, axisy.p2c(y1) + yoffset); - - prevx = x2; - prevy = y2; - ctx.lineTo(axisx.p2c(x2) + xoffset, axisy.p2c(y2) + yoffset); - } - ctx.stroke(); - } - - function plotLineArea(datapoints, axisx, axisy) { - var points = datapoints.linespoints || datapoints.points, - incr = datapoints.incr, - bottom = Math.min(Math.max(0, axisy.min), axisy.max), - top, lastX = 0, areaOpen = false; - - for (var i = incr; i < points.length; i += incr) { - var x1 = points[i - incr], y1 = points[i - incr + 1], - x2 = points[i], y2 = points[i + 1]; - - if (areaOpen && x1 != null && x2 == null) { - // close area - ctx.lineTo(axisx.p2c(lastX), axisy.p2c(bottom)); - ctx.fill(); - areaOpen = false; - continue; - } - - if (x1 == null || x2 == null) - continue; - - // clip x values - - // clip with xmin - if (x1 <= x2 && x1 < axisx.min) { - if (x2 < axisx.min) - continue; - y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.min; - } - else if (x2 <= x1 && x2 < axisx.min) { - if (x1 < axisx.min) - continue; - y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.min; - } - - // clip with xmax - if (x1 >= x2 && x1 > axisx.max) { - if (x2 > axisx.max) - continue; - y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.max; - } - else if (x2 >= x1 && x2 > axisx.max) { - if (x1 > axisx.max) - continue; - y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.max; - } - - if (!areaOpen) { - // open area - ctx.beginPath(); - ctx.moveTo(axisx.p2c(x1), axisy.p2c(bottom)); - areaOpen = true; - } - - // now first check the case where both is outside - if (y1 >= axisy.max && y2 >= axisy.max) { - ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.max)); - ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.max)); - lastX = x2; - continue; - } - else if (y1 <= axisy.min && y2 <= axisy.min) { - ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.min)); - ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.min)); - lastX = x2; - continue; - } - - // else it's a bit more complicated, there might - // be two rectangles and two triangles we need to fill - // in; to find these keep track of the current x values - var x1old = x1, x2old = x2; - - // and clip the y values, without shortcutting - - // clip with ymin - if (y1 <= y2 && y1 < axisy.min && y2 >= axisy.min) { - x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.min; - } - else if (y2 <= y1 && y2 < axisy.min && y1 >= axisy.min) { - x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.min; - } - - // clip with ymax - if (y1 >= y2 && y1 > axisy.max && y2 <= axisy.max) { - x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.max; - } - else if (y2 >= y1 && y2 > axisy.max && y1 <= axisy.max) { - x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.max; - } - - - // if the x value was changed we got a rectangle - // to fill - if (x1 != x1old) { - if (y1 <= axisy.min) - top = axisy.min; - else - top = axisy.max; - - ctx.lineTo(axisx.p2c(x1old), axisy.p2c(top)); - ctx.lineTo(axisx.p2c(x1), axisy.p2c(top)); - } - - // fill the triangles - ctx.lineTo(axisx.p2c(x1), axisy.p2c(y1)); - ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2)); - - // fill the other rectangle if it's there - if (x2 != x2old) { - if (y2 <= axisy.min) - top = axisy.min; - else - top = axisy.max; - - ctx.lineTo(axisx.p2c(x2), axisy.p2c(top)); - ctx.lineTo(axisx.p2c(x2old), axisy.p2c(top)); - } - - lastX = Math.max(x2, x2old); - } - - if (areaOpen) { - ctx.lineTo(axisx.p2c(lastX), axisy.p2c(bottom)); - ctx.fill(); - } - } - - ctx.save(); - ctx.translate(plotOffset.left, plotOffset.top); - ctx.lineJoin = "round"; - - var lw = series.lines.lineWidth, - sw = series.shadowSize; - // FIXME: consider another form of shadow when filling is turned on - if (lw > 0 && sw > 0) { - // draw shadow as a thick and thin line with transparency - ctx.lineWidth = sw; - ctx.strokeStyle = "rgba(0,0,0,0.1)"; - var xoffset = 1; - plotLine(series.datapoints, xoffset, Math.sqrt((lw/2 + sw/2)*(lw/2 + sw/2) - xoffset*xoffset), series.xaxis, series.yaxis); - ctx.lineWidth = sw/2; - plotLine(series.datapoints, xoffset, Math.sqrt((lw/2 + sw/4)*(lw/2 + sw/4) - xoffset*xoffset), series.xaxis, series.yaxis); - } - - ctx.lineWidth = lw; - ctx.strokeStyle = series.color; - var fillStyle = getFillStyle(series.lines, series.color, 0, plotHeight); - if (fillStyle) { - ctx.fillStyle = fillStyle; - plotLineArea(series.datapoints, series.xaxis, series.yaxis); - } - - if (lw > 0) - plotLine(series.datapoints, 0, 0, series.xaxis, series.yaxis); - ctx.restore(); - } - - function drawSeriesPoints(series) { - function plotPoints(datapoints, radius, fillStyle, offset, circumference, axisx, axisy) { - var points = datapoints.points, incr = datapoints.incr; - - for (var i = 0; i < points.length; i += incr) { - var x = points[i], y = points[i + 1]; - if (x == null || x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) - continue; - - ctx.beginPath(); - ctx.arc(axisx.p2c(x), axisy.p2c(y) + offset, radius, 0, circumference, true); - if (fillStyle) { - ctx.fillStyle = fillStyle; - ctx.fill(); - } - ctx.stroke(); - } - } - - ctx.save(); - ctx.translate(plotOffset.left, plotOffset.top); - - var lw = series.lines.lineWidth, - sw = series.shadowSize, - radius = series.points.radius; - if (lw > 0 && sw > 0) { - // draw shadow in two steps - var w = sw / 2; - ctx.lineWidth = w; - ctx.strokeStyle = "rgba(0,0,0,0.1)"; - plotPoints(series.datapoints, radius, null, w + w/2, 2 * Math.PI, - series.xaxis, series.yaxis); - - ctx.strokeStyle = "rgba(0,0,0,0.2)"; - plotPoints(series.datapoints, radius, null, w/2, 2 * Math.PI, - series.xaxis, series.yaxis); - } - - ctx.lineWidth = lw; - ctx.strokeStyle = series.color; - plotPoints(series.datapoints, radius, - getFillStyle(series.points, series.color), 0, 2 * Math.PI, - series.xaxis, series.yaxis); - ctx.restore(); - } - - function drawBar(x, y, b, barLeft, barRight, offset, fillStyleCallback, axisx, axisy, c, horizontal) { - var left, right, bottom, top, - drawLeft, drawRight, drawTop, drawBottom, - tmp; - - if (horizontal) { - drawBottom = drawRight = drawTop = true; - drawLeft = false; - left = b; - right = x; - top = y + barLeft; - bottom = y + barRight; - - // account for negative bars - if (right < left) { - tmp = right; - right = left; - left = tmp; - drawLeft = true; - drawRight = false; - } - } - else { - drawLeft = drawRight = drawTop = true; - drawBottom = false; - left = x + barLeft; - right = x + barRight; - bottom = b; - top = y; - - // account for negative bars - if (top < bottom) { - tmp = top; - top = bottom; - bottom = tmp; - drawBottom = true; - drawTop = false; - } - } - - // clip - if (right < axisx.min || left > axisx.max || - top < axisy.min || bottom > axisy.max) - return; - - if (left < axisx.min) { - left = axisx.min; - drawLeft = false; - } - - if (right > axisx.max) { - right = axisx.max; - drawRight = false; - } - - if (bottom < axisy.min) { - bottom = axisy.min; - drawBottom = false; - } - - if (top > axisy.max) { - top = axisy.max; - drawTop = false; - } - - left = axisx.p2c(left); - bottom = axisy.p2c(bottom); - right = axisx.p2c(right); - top = axisy.p2c(top); - - // fill the bar - if (fillStyleCallback) { - c.beginPath(); - c.moveTo(left, bottom); - c.lineTo(left, top); - c.lineTo(right, top); - c.lineTo(right, bottom); - c.fillStyle = fillStyleCallback(bottom, top); - c.fill(); - } - - // draw outline - if (drawLeft || drawRight || drawTop || drawBottom) { - c.beginPath(); - - // FIXME: inline moveTo is buggy with excanvas - c.moveTo(left, bottom + offset); - if (drawLeft) - c.lineTo(left, top + offset); - else - c.moveTo(left, top + offset); - if (drawTop) - c.lineTo(right, top + offset); - else - c.moveTo(right, top + offset); - if (drawRight) - c.lineTo(right, bottom + offset); - else - c.moveTo(right, bottom + offset); - if (drawBottom) - c.lineTo(left, bottom + offset); - else - c.moveTo(left, bottom + offset); - c.stroke(); - } - } - - function drawSeriesBars(series) { - function plotBars(datapoints, barLeft, barRight, offset, fillStyleCallback, axisx, axisy) { - var points = datapoints.points, incr = datapoints.incr; - - for (var i = 0; i < points.length; i += incr) { - if (points[i] == null) - continue; - drawBar(points[i], points[i + 1], points[i + 2], barLeft, barRight, offset, fillStyleCallback, axisx, axisy, ctx, series.bars.horizontal); - } - } - - ctx.save(); - ctx.translate(plotOffset.left, plotOffset.top); - - // FIXME: figure out a way to add shadows (for instance along the right edge) - ctx.lineWidth = series.bars.lineWidth; - ctx.strokeStyle = series.color; - var barLeft = series.bars.align == "left" ? 0 : -series.bars.barWidth/2; - var fillStyleCallback = series.bars.fill ? function (bottom, top) { return getFillStyle(series.bars, series.color, bottom, top); } : null; - plotBars(series.datapoints, barLeft, barLeft + series.bars.barWidth, 0, fillStyleCallback, series.xaxis, series.yaxis); - ctx.restore(); - } - - function getFillStyle(filloptions, seriesColor, bottom, top) { - var fill = filloptions.fill; - if (!fill) - return null; - - if (filloptions.fillColor) - return getColorOrGradient(filloptions.fillColor, bottom, top, seriesColor); - - var c = parseColor(seriesColor); - c.a = typeof fill == "number" ? fill : 0.4; - c.normalize(); - return c.toString(); - } - - function insertLegend() { - target.find(".legend").remove(); - - if (!options.legend.show) - return; - - var fragments = [], rowStarted = false, - lf = options.legend.labelFormatter, s, label; - for (i = 0; i < series.length; ++i) { - s = series[i]; - label = s.label; - if (!label) - continue; - - if (i % options.legend.noColumns == 0) { - if (rowStarted) - fragments.push('</tr>'); - fragments.push('<tr>'); - rowStarted = true; - } - - if (lf) - label = lf(label, s); - - fragments.push( - '<td class="legendColorBox"><div style="border:1px solid ' + options.legend.labelBoxBorderColor + ';padding:1px"><div style="width:4px;height:0;border:5px solid ' + s.color + ';overflow:hidden"></div></div></td>' + - '<td class="legendLabel">' + label + '</td>'); - } - if (rowStarted) - fragments.push('</tr>'); - - if (fragments.length == 0) - return; - - var table = '<table style="font-size:smaller;color:' + options.grid.color + '">' + fragments.join("") + '</table>'; - if (options.legend.container != null) - $(options.legend.container).html(table); - else { - var pos = "", - p = options.legend.position, - m = options.legend.margin; - if (m[0] == null) - m = [m, m]; - if (p.charAt(0) == "n") - pos += 'top:' + (m[1] + plotOffset.top) + 'px;'; - else if (p.charAt(0) == "s") - pos += 'bottom:' + (m[1] + plotOffset.bottom) + 'px;'; - if (p.charAt(1) == "e") - pos += 'right:' + (m[0] + plotOffset.right) + 'px;'; - else if (p.charAt(1) == "w") - pos += 'left:' + (m[0] + plotOffset.left) + 'px;'; - var legend = $('<div class="legend">' + table.replace('style="', 'style="position:absolute;' + pos +';') + '</div>').appendTo(target); - if (options.legend.backgroundOpacity != 0.0) { - // put in the transparent background - // separately to avoid blended labels and - // label boxes - var c = options.legend.backgroundColor; - if (c == null) { - var tmp; - if (options.grid.backgroundColor && typeof options.grid.backgroundColor == "string") - tmp = options.grid.backgroundColor; - else - tmp = extractColor(legend); - c = parseColor(tmp).adjust(null, null, null, 1).toString(); - } - var div = legend.children(); - $('<div style="position:absolute;width:' + div.width() + 'px;height:' + div.height() + 'px;' + pos +'background-color:' + c + ';"> </div>').prependTo(legend).css('opacity', options.legend.backgroundOpacity); - } - } - } - - - // interactive features - - var lastMousePos = { pageX: null, pageY: null }, - selection = { - first: { x: -1, y: -1}, second: { x: -1, y: -1}, - show: false, active: false }, - crosshair = { pos: { x: -1, y: -1 } }, - highlights = [], - clickIsMouseUp = false, - redrawTimeout = null, - hoverTimeout = null; - - // Returns the data item the mouse is over, or null if none is found - function findNearbyItem(mouseX, mouseY, seriesFilter) { - var maxDistance = options.grid.mouseActiveRadius, - lowestDistance = maxDistance * maxDistance + 1, - item = null, foundPoint = false, i, j; - - for (var i = 0; i < series.length; ++i) { - if (!seriesFilter(series[i])) - continue; - - var s = series[i], - axisx = s.xaxis, - axisy = s.yaxis, - points = s.datapoints.points, - incr = s.datapoints.incr, - mx = axisx.c2p(mouseX), // precompute some stuff to make the loop faster - my = axisy.c2p(mouseY), - maxx = maxDistance / axisx.scale, - maxy = maxDistance / axisy.scale; - - if (s.lines.show || s.points.show) { - for (j = 0; j < points.length; j += incr) { - var x = points[j], y = points[j + 1]; - if (x == null) - continue; - - // For points and lines, the cursor must be within a - // certain distance to the data point - if (x - mx > maxx || x - mx < -maxx || - y - my > maxy || y - my < -maxy) - continue; - - // We have to calculate distances in pixels, not in - // data units, because the scales of the axes may be different - var dx = Math.abs(axisx.p2c(x) - mouseX), - dy = Math.abs(axisy.p2c(y) - mouseY), - dist = dx * dx + dy * dy; // no idea in taking sqrt - if (dist < lowestDistance) { - lowestDistance = dist; - item = [i, j / incr]; - } - } - } - - if (s.bars.show && !item) { // no other point can be nearby - var barLeft = s.bars.align == "left" ? 0 : -s.bars.barWidth/2, - barRight = barLeft + s.bars.barWidth; - - for (j = 0; j < points.length; j += incr) { - var x = points[j], y = points[j + 1], b = points[j + 2]; - if (x == null) - continue; - - // for a bar graph, the cursor must be inside the bar - if (series[i].bars.horizontal ? - (mx <= Math.max(b, x) && mx >= Math.min(b, x) && - my >= y + barLeft && my <= y + barRight) : - (mx >= x + barLeft && mx <= x + barRight && - my >= Math.min(b, y) && my <= Math.max(b, y))) - item = [i, j / incr]; - } - } - } - - if (item) { - i = item[0]; - j = item[1]; - - return { datapoint: series[i].data[j], - dataIndex: j, - series: series[i], - seriesIndex: i } - } - - return null; - } - - function onMouseMove(ev) { - // FIXME: temp. work-around until jQuery bug 4398 is fixed - var e = ev || window.event; - if (e.pageX == null && e.clientX != null) { - var de = document.documentElement, b = document.body; - lastMousePos.pageX = e.clientX + (de && de.scrollLeft || b.scrollLeft || 0) - (de.clientLeft || 0); - lastMousePos.pageY = e.clientY + (de && de.scrollTop || b.scrollTop || 0) - (de.clientTop || 0); - } - else { - lastMousePos.pageX = e.pageX; - lastMousePos.pageY = e.pageY; - } - - if (options.grid.hoverable) - triggerClickHoverEvent("plothover", lastMousePos, - function (s) { return s["hoverable"] != false; }); - - if (options.crosshair.mode != null) { - if (!selection.active) { - setPositionFromEvent(crosshair.pos, lastMousePos); - triggerRedrawOverlay(); - } - else - crosshair.pos.x = -1; // hide the crosshair while selecting - } - - if (selection.active) { - target.trigger("plotselecting", [ selectionIsSane() ? getSelectionForEvent() : null ]); - - updateSelection(lastMousePos); - } - } - - function onMouseDown(e) { - if (e.which != 1) // only accept left-click - return; - - // cancel out any text selections - document.body.focus(); - - // prevent text selection and drag in old-school browsers - if (document.onselectstart !== undefined && workarounds.onselectstart == null) { - workarounds.onselectstart = document.onselectstart; - document.onselectstart = function () { return false; }; - } - if (document.ondrag !== undefined && workarounds.ondrag == null) { - workarounds.ondrag = document.ondrag; - document.ondrag = function () { return false; }; - } - - setSelectionPos(selection.first, e); - - lastMousePos.pageX = null; - selection.active = true; - $(document).one("mouseup", onSelectionMouseUp); - } - - function onMouseOut(ev) { - if (options.crosshair.mode != null && crosshair.pos.x != -1) { - crosshair.pos.x = -1; - triggerRedrawOverlay(); - } - } - - function onClick(e) { - if (clickIsMouseUp) { - clickIsMouseUp = false; - return; - } - - triggerClickHoverEvent("plotclick", e, - function (s) { return s["clickable"] != false; }); - } - - /* - function userPositionInCanvasSpace(pos) { - return { x: parseInt(pos.x != null ? axes.xaxis.p2c(pos.x) : axes.x2axis.p2c(pos.x2)), - y: parseInt(pos.y != null ? axes.yaxis.p2c(pos.y) : axes.y2axis.p2c(pos.y2)) }; - } - - function positionInDivSpace(pos) { - var cpos = userPositionInCanvasSpace(pos); - return { x: cpos.x + plotOffset.left, - y: cpos.y + plotOffset.top }; - }*/ - - // trigger click or hover event (they send the same parameters - // so we share their code) - function triggerClickHoverEvent(eventname, event, seriesFilter) { - var offset = eventHolder.offset(), - pos = { pageX: event.pageX, pageY: event.pageY }, - canvasX = event.pageX - offset.left - plotOffset.left, - canvasY = event.pageY - offset.top - plotOffset.top; - - if (axes.xaxis.used) - pos.x = axes.xaxis.c2p(canvasX); - if (axes.yaxis.used) - pos.y = axes.yaxis.c2p(canvasY); - if (axes.x2axis.used) - pos.x2 = axes.x2axis.c2p(canvasX); - if (axes.y2axis.used) - pos.y2 = axes.y2axis.c2p(canvasY); - - var item = findNearbyItem(canvasX, canvasY, seriesFilter); - - if (item) { - // fill in mouse pos for any listeners out there - item.pageX = parseInt(item.series.xaxis.p2c(item.datapoint[0]) + offset.left + plotOffset.left); - item.pageY = parseInt(item.series.yaxis.p2c(item.datapoint[1]) + offset.top + plotOffset.top); - } - - if (options.grid.autoHighlight) { - // clear auto-highlights - for (var i = 0; i < highlights.length; ++i) { - var h = highlights[i]; - if (h.auto == eventname && - !(item && h.series == item.series && h.point == item.datapoint)) - unhighlight(h.series, h.point); - } - - if (item) - highlight(item.series, item.datapoint, eventname); - } - - target.trigger(eventname, [ pos, item ]); - } - - function triggerRedrawOverlay() { - if (!redrawTimeout) - redrawTimeout = setTimeout(redrawOverlay, 30); - } - - function redrawOverlay() { - redrawTimeout = null; - - // redraw highlights - octx.save(); - octx.clearRect(0, 0, canvasWidth, canvasHeight); - octx.translate(plotOffset.left, plotOffset.top); - - var i, hi; - for (i = 0; i < highlights.length; ++i) { - hi = highlights[i]; - - if (hi.series.bars.show) - drawBarHighlight(hi.series, hi.point); - else - drawPointHighlight(hi.series, hi.point); - } - - // redraw selection - if (selection.show && selectionIsSane()) { - octx.strokeStyle = parseColor(options.selection.color).scale(null, null, null, 0.8).toString(); - octx.lineWidth = 1; - ctx.lineJoin = "round"; - octx.fillStyle = parseColor(options.selection.color).scale(null, null, null, 0.4).toString(); - - var x = Math.min(selection.first.x, selection.second.x), - y = Math.min(selection.first.y, selection.second.y), - w = Math.abs(selection.second.x - selection.first.x), - h = Math.abs(selection.second.y - selection.first.y); - - octx.fillRect(x, y, w, h); - octx.strokeRect(x, y, w, h); - } - - // redraw crosshair - var pos = crosshair.pos, mode = options.crosshair.mode; - if (mode != null && pos.x != -1) { - octx.strokeStyle = parseColor(options.crosshair.color).scale(null, null, null, 0.8).toString(); - octx.lineWidth = 1; - ctx.lineJoin = "round"; - - octx.beginPath(); - if (mode.indexOf("x") != -1) { - octx.moveTo(pos.x, 0); - octx.lineTo(pos.x, plotHeight); - } - if (mode.indexOf("y") != -1) { - octx.moveTo(0, pos.y); - octx.lineTo(plotWidth, pos.y); - } - octx.stroke(); - - } - octx.restore(); - } - - function highlight(s, point, auto) { - if (typeof s == "number") - s = series[s]; - - if (typeof point == "number") - point = s.data[point]; - - var i = indexOfHighlight(s, point); - if (i == -1) { - highlights.push({ series: s, point: point, auto: auto }); - - triggerRedrawOverlay(); - } - else if (!auto) - highlights[i].auto = false; - } - - function unhighlight(s, point) { - if (typeof s == "number") - s = series[s]; - - if (typeof point == "number") - point = s.data[point]; - - var i = indexOfHighlight(s, point); - if (i != -1) { - highlights.splice(i, 1); - - triggerRedrawOverlay(); - } - } - - function indexOfHighlight(s, p) { - for (var i = 0; i < highlights.length; ++i) { - var h = highlights[i]; - if (h.series == s && h.point[0] == p[0] - && h.point[1] == p[1]) - return i; - } - return -1; - } - - function drawPointHighlight(series, point) { - var x = point[0], y = point[1], - axisx = series.xaxis, axisy = series.yaxis; - - if (x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) - return; - - var pointRadius = series.points.radius + series.points.lineWidth / 2; - octx.lineWidth = pointRadius; - octx.strokeStyle = parseColor(series.color).scale(1, 1, 1, 0.5).toString(); - var radius = 1.5 * pointRadius; - octx.beginPath(); - octx.arc(axisx.p2c(x), axisy.p2c(y), radius, 0, 2 * Math.PI, true); - octx.stroke(); - } - - function drawBarHighlight(series, point) { - octx.lineWidth = series.bars.lineWidth; - octx.strokeStyle = parseColor(series.color).scale(1, 1, 1, 0.5).toString(); - var fillStyle = parseColor(series.color).scale(1, 1, 1, 0.5).toString(); - var barLeft = series.bars.align == "left" ? 0 : -series.bars.barWidth/2; - drawBar(point[0], point[1], point[2] || 0, barLeft, barLeft + series.bars.barWidth, - 0, function () { return fillStyle; }, series.xaxis, series.yaxis, octx, series.bars.horizontal); - } - - function setPositionFromEvent(pos, e) { - var offset = eventHolder.offset(); - pos.x = clamp(0, e.pageX - offset.left - plotOffset.left, plotWidth); - pos.y = clamp(0, e.pageY - offset.top - plotOffset.top, plotHeight); - } - - function setCrosshair(pos) { - if (pos == null) - crosshair.pos.x = -1; - else { - crosshair.pos.x = clamp(0, pos.x != null ? axes.xaxis.p2c(pos.x) : axes.x2axis.p2c(pos.x2), plotWidth); - crosshair.pos.y = clamp(0, pos.y != null ? axes.yaxis.p2c(pos.y) : axes.y2axis.p2c(pos.y2), plotHeight); - } - triggerRedrawOverlay(); - } - - function getSelectionForEvent() { - var x1 = Math.min(selection.first.x, selection.second.x), - x2 = Math.max(selection.first.x, selection.second.x), - y1 = Math.max(selection.first.y, selection.second.y), - y2 = Math.min(selection.first.y, selection.second.y); - - var r = {}; - if (axes.xaxis.used) - r.xaxis = { from: axes.xaxis.c2p(x1), to: axes.xaxis.c2p(x2) }; - if (axes.x2axis.used) - r.x2axis = { from: axes.x2axis.c2p(x1), to: axes.x2axis.c2p(x2) }; - if (axes.yaxis.used) - r.yaxis = { from: axes.yaxis.c2p(y1), to: axes.yaxis.c2p(y2) }; - if (axes.y2axis.used) - r.y2axis = { from: axes.y2axis.c2p(y1), to: axes.y2axis.c2p(y2) }; - return r; - } - - function triggerSelectedEvent() { - var r = getSelectionForEvent(); - - target.trigger("plotselected", [ r ]); - - // backwards-compat stuff, to be removed in future - if (axes.xaxis.used && axes.yaxis.used) - target.trigger("selected", [ { x1: r.xaxis.from, y1: r.yaxis.from, x2: r.xaxis.to, y2: r.yaxis.to } ]); - } - - function onSelectionMouseUp(e) { - // revert drag stuff for old-school browsers - if (document.onselectstart !== undefined) - document.onselectstart = workarounds.onselectstart; - if (document.ondrag !== undefined) - document.ondrag = workarounds.ondrag; - - // no more draggy-dee-drag - selection.active = false; - updateSelection(e); - - if (selectionIsSane()) { - triggerSelectedEvent(); - clickIsMouseUp = true; - } - else { - // this counts as a clear - target.trigger("plotunselected", [ ]); - target.trigger("plotselecting", [ null ]); - } - - return false; - } - - function setSelectionPos(pos, e) { - setPositionFromEvent(pos, e); - - if (options.selection.mode == "y") { - if (pos == selection.first) - pos.x = 0; - else - pos.x = plotWidth; - } - - if (options.selection.mode == "x") { - if (pos == selection.first) - pos.y = 0; - else - pos.y = plotHeight; - } - } - - function updateSelection(pos) { - if (pos.pageX == null) - return; - - setSelectionPos(selection.second, pos); - if (selectionIsSane()) { - selection.show = true; - triggerRedrawOverlay(); - } - else - clearSelection(true); - } - - function clearSelection(preventEvent) { - if (selection.show) { - selection.show = false; - triggerRedrawOverlay(); - if (!preventEvent) - target.trigger("plotunselected", [ ]); - } - } - - function setSelection(ranges, preventEvent) { - var range; - - if (options.selection.mode == "y") { - selection.first.x = 0; - selection.second.x = plotWidth; - } - else { - range = extractRange(ranges, "x"); - - selection.first.x = range.axis.p2c(range.from); - selection.second.x = range.axis.p2c(range.to); - } - - if (options.selection.mode == "x") { - selection.first.y = 0; - selection.second.y = plotHeight; - } - else { - range = extractRange(ranges, "y"); - - selection.first.y = range.axis.p2c(range.from); - selection.second.y = range.axis.p2c(range.to); - } - - selection.show = true; - triggerRedrawOverlay(); - if (!preventEvent) - triggerSelectedEvent(); - } - - function selectionIsSane() { - var minSize = 5; - return Math.abs(selection.second.x - selection.first.x) >= minSize && - Math.abs(selection.second.y - selection.first.y) >= minSize; - } - - function getColorOrGradient(spec, bottom, top, defaultColor) { - if (typeof spec == "string") - return spec; - else { - // assume this is a gradient spec; IE currently only - // supports a simple vertical gradient properly, so that's - // what we support too - var gradient = ctx.createLinearGradient(0, top, 0, bottom); - - for (var i = 0, l = spec.colors.length; i < l; ++i) { - var c = spec.colors[i]; - gradient.addColorStop(i / (l - 1), typeof c == "string" ? c : parseColor(defaultColor).scale(c.brightness, c.brightness, c.brightness, c.opacity)); - } - - return gradient; - } - } - } - - $.plot = function(target, data, options) { - var plot = new Plot(target, data, options); - /*var t0 = new Date(); - var t1 = new Date(); - var tstr = "time used (msecs): " + (t1.getTime() - t0.getTime()) - if (window.console) - console.log(tstr); - else - alert(tstr);*/ - return plot; - }; - - // returns a string with the date d formatted according to fmt - $.plot.formatDate = function(d, fmt, monthNames) { - var leftPad = function(n) { - n = "" + n; - return n.length == 1 ? "0" + n : n; - }; - - var r = []; - var escape = false; - if (monthNames == null) - monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; - for (var i = 0; i < fmt.length; ++i) { - var c = fmt.charAt(i); - - if (escape) { - switch (c) { - case 'h': c = "" + d.getUTCHours(); break; - case 'H': c = leftPad(d.getUTCHours()); break; - case 'M': c = leftPad(d.getUTCMinutes()); break; - case 'S': c = leftPad(d.getUTCSeconds()); break; - case 'd': c = "" + d.getUTCDate(); break; - case 'm': c = "" + (d.getUTCMonth() + 1); break; - case 'y': c = "" + d.getUTCFullYear(); break; - case 'b': c = "" + monthNames[d.getUTCMonth()]; break; - } - r.push(c); - escape = false; - } - else { - if (c == "%") - escape = true; - else - r.push(c); - } - } - return r.join(""); - }; - - // round to nearby lower multiple of base - function floorInBase(n, base) { - return base * Math.floor(n / base); - } - - function clamp(min, value, max) { - if (value < min) - return min; - else if (value > max) - return max; - else - return value; - } - - // color helpers, inspiration from the jquery color animation - // plugin by John Resig - function Color (r, g, b, a) { - - var rgba = ['r','g','b','a']; - var x = 4; //rgba.length - - while (-1<--x) { - this[rgba[x]] = arguments[x] || ((x==3) ? 1.0 : 0); - } - - this.toString = function() { - if (this.a >= 1.0) { - return "rgb("+[this.r,this.g,this.b].join(",")+")"; - } else { - return "rgba("+[this.r,this.g,this.b,this.a].join(",")+")"; - } - }; - - this.scale = function(rf, gf, bf, af) { - x = 4; //rgba.length - while (-1<--x) { - if (arguments[x] != null) - this[rgba[x]] *= arguments[x]; - } - return this.normalize(); - }; - - this.adjust = function(rd, gd, bd, ad) { - x = 4; //rgba.length - while (-1<--x) { - if (arguments[x] != null) - this[rgba[x]] += arguments[x]; - } - return this.normalize(); - }; - - this.clone = function() { - return new Color(this.r, this.b, this.g, this.a); - }; - - var limit = function(val,minVal,maxVal) { - return Math.max(Math.min(val, maxVal), minVal); - }; - - this.normalize = function() { - this.r = clamp(0, parseInt(this.r), 255); - this.g = clamp(0, parseInt(this.g), 255); - this.b = clamp(0, parseInt(this.b), 255); - this.a = clamp(0, this.a, 1); - return this; - }; - - this.normalize(); - } - - var lookupColors = { - aqua:[0,255,255], - azure:[240,255,255], - beige:[245,245,220], - black:[0,0,0], - blue:[0,0,255], - brown:[165,42,42], - cyan:[0,255,255], - darkblue:[0,0,139], - darkcyan:[0,139,139], - darkgrey:[169,169,169], - darkgreen:[0,100,0], - darkkhaki:[189,183,107], - darkmagenta:[139,0,139], - darkolivegreen:[85,107,47], - darkorange:[255,140,0], - darkorchid:[153,50,204], - darkred:[139,0,0], - darksalmon:[233,150,122], - darkviolet:[148,0,211], - fuchsia:[255,0,255], - gold:[255,215,0], - green:[0,128,0], - indigo:[75,0,130], - khaki:[240,230,140], - lightblue:[173,216,230], - lightcyan:[224,255,255], - lightgreen:[144,238,144], - lightgrey:[211,211,211], - lightpink:[255,182,193], - lightyellow:[255,255,224], - lime:[0,255,0], - magenta:[255,0,255], - maroon:[128,0,0], - navy:[0,0,128], - olive:[128,128,0], - orange:[255,165,0], - pink:[255,192,203], - purple:[128,0,128], - violet:[128,0,128], - red:[255,0,0], - silver:[192,192,192], - white:[255,255,255], - yellow:[255,255,0] - }; - - function extractColor(element) { - var color, elem = element; - do { - color = elem.css("background-color").toLowerCase(); - // keep going until we find an element that has color, or - // we hit the body - if (color != '' && color != 'transparent') - break; - elem = elem.parent(); - } while (!$.nodeName(elem.get(0), "body")); - - // catch Safari's way of signalling transparent - if (color == "rgba(0, 0, 0, 0)") - return "transparent"; - - return color; - } - - // parse string, returns Color - function parseColor(str) { - var result; - - // Look for rgb(num,num,num) - if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(str)) - return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10)); - - // Look for rgba(num,num,num,num) - if (result = /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str)) - return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10), parseFloat(result[4])); - - // Look for rgb(num%,num%,num%) - if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(str)) - return new Color(parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55); - - // Look for rgba(num%,num%,num%,num) - if (result = /rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str)) - return new Color(parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55, parseFloat(result[4])); - - // Look for #a0b1c2 - if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(str)) - return new Color(parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)); - - // Look for #fff - if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(str)) - return new Color(parseInt(result[1]+result[1], 16), parseInt(result[2]+result[2], 16), parseInt(result[3]+result[3], 16)); - - // Otherwise, we're most likely dealing with a named color - var name = $.trim(str).toLowerCase(); - if (name == "transparent") - return new Color(255, 255, 255, 0); - else { - result = lookupColors[name]; - return new Color(result[0], result[1], result[2]); - } - } - -})(jQuery); diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.flot.min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.flot.min.js.svn-base deleted file mode 100644 index 31f465b830995a8db2e41f057f0ad9b1ab911ac9..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.flot.min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -(function(){jQuery.color={};jQuery.color.make=function(G,H,J,I){var A={};A.r=G||0;A.g=H||0;A.b=J||0;A.a=I!=null?I:1;A.add=function(C,D){for(var E=0;E<C.length;++E){A[C.charAt(E)]+=D}return A.normalize()};A.scale=function(C,D){for(var E=0;E<C.length;++E){A[C.charAt(E)]*=D}return A.normalize()};A.toString=function(){if(A.a>=1){return"rgb("+[A.r,A.g,A.b].join(",")+")"}else{return"rgba("+[A.r,A.g,A.b,A.a].join(",")+")"}};A.normalize=function(){function C(E,D,F){return D<E?E:(D>F?F:D)}A.r=C(0,parseInt(A.r),255);A.g=C(0,parseInt(A.g),255);A.b=C(0,parseInt(A.b),255);A.a=C(0,A.a,1);return A};A.clone=function(){return jQuery.color.make(A.r,A.b,A.g,A.a)};return A.normalize()};jQuery.color.extract=function(E,F){var A;do{A=E.css(F).toLowerCase();if(A!=""&&A!="transparent"){break}E=E.parent()}while(!jQuery.nodeName(E.get(0),"body"));if(A=="rgba(0, 0, 0, 0)"){A="transparent"}return jQuery.color.parse(A)};jQuery.color.parse=function(A){var F,H=jQuery.color.make;if(F=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(A)){return H(parseInt(F[1],10),parseInt(F[2],10),parseInt(F[3],10))}if(F=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(A)){return H(parseInt(F[1],10),parseInt(F[2],10),parseInt(F[3],10),parseFloat(F[4]))}if(F=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(A)){return H(parseFloat(F[1])*2.55,parseFloat(F[2])*2.55,parseFloat(F[3])*2.55)}if(F=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(A)){return H(parseFloat(F[1])*2.55,parseFloat(F[2])*2.55,parseFloat(F[3])*2.55,parseFloat(F[4]))}if(F=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(A)){return H(parseInt(F[1],16),parseInt(F[2],16),parseInt(F[3],16))}if(F=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(A)){return H(parseInt(F[1]+F[1],16),parseInt(F[2]+F[2],16),parseInt(F[3]+F[3],16))}var G=jQuery.trim(A).toLowerCase();if(G=="transparent"){return H(255,255,255,0)}else{F=B[G];return H(F[0],F[1],F[2])}};var B={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})();(function(C){function B(l,W,X,E){var O=[],g={colors:["#edc240","#afd8f8","#cb4b4b","#4da74d","#9440ed"],legend:{show:true,noColumns:1,labelFormatter:null,labelBoxBorderColor:"#ccc",container:null,position:"ne",margin:5,backgroundColor:null,backgroundOpacity:0.85},xaxis:{mode:null,transform:null,inverseTransform:null,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,tickDecimals:null,tickSize:null,minTickSize:null,monthNames:null,timeformat:null,twelveHourClock:false},yaxis:{autoscaleMargin:0.02},x2axis:{autoscaleMargin:null},y2axis:{autoscaleMargin:0.02},series:{points:{show:false,radius:3,lineWidth:2,fill:true,fillColor:"#ffffff"},lines:{lineWidth:2,fill:false,fillColor:null,steps:false},bars:{show:false,lineWidth:2,barWidth:1,fill:true,fillColor:null,align:"left",horizontal:false},shadowSize:3},grid:{show:true,aboveData:false,color:"#545454",backgroundColor:null,tickColor:"rgba(0,0,0,0.15)",labelMargin:5,borderWidth:2,borderColor:null,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:false,hoverable:false,autoHighlight:true,mouseActiveRadius:10},hooks:{}},P=null,AC=null,AD=null,Y=null,AJ=null,s={xaxis:{},yaxis:{},x2axis:{},y2axis:{}},e={left:0,right:0,top:0,bottom:0},y=0,Q=0,I=0,t=0,L={processOptions:[],processRawData:[],processDatapoints:[],draw:[],bindEvents:[],drawOverlay:[]},G=this;G.setData=f;G.setupGrid=k;G.draw=AH;G.getPlaceholder=function(){return l};G.getCanvas=function(){return P};G.getPlotOffset=function(){return e};G.width=function(){return I};G.height=function(){return t};G.offset=function(){var AK=AD.offset();AK.left+=e.left;AK.top+=e.top;return AK};G.getData=function(){return O};G.getAxes=function(){return s};G.getOptions=function(){return g};G.highlight=AE;G.unhighlight=x;G.triggerRedrawOverlay=q;G.pointOffset=function(AK){return{left:parseInt(T(AK,"xaxis").p2c(+AK.x)+e.left),top:parseInt(T(AK,"yaxis").p2c(+AK.y)+e.top)}};G.hooks=L;b(G);r(X);c();f(W);k();AH();AG();function Z(AM,AK){AK=[G].concat(AK);for(var AL=0;AL<AM.length;++AL){AM[AL].apply(this,AK)}}function b(){for(var AK=0;AK<E.length;++AK){var AL=E[AK];AL.init(G);if(AL.options){C.extend(true,g,AL.options)}}}function r(AK){C.extend(true,g,AK);if(g.grid.borderColor==null){g.grid.borderColor=g.grid.color}if(g.xaxis.noTicks&&g.xaxis.ticks==null){g.xaxis.ticks=g.xaxis.noTicks}if(g.yaxis.noTicks&&g.yaxis.ticks==null){g.yaxis.ticks=g.yaxis.noTicks}if(g.grid.coloredAreas){g.grid.markings=g.grid.coloredAreas}if(g.grid.coloredAreasColor){g.grid.markingsColor=g.grid.coloredAreasColor}if(g.lines){C.extend(true,g.series.lines,g.lines)}if(g.points){C.extend(true,g.series.points,g.points)}if(g.bars){C.extend(true,g.series.bars,g.bars)}if(g.shadowSize){g.series.shadowSize=g.shadowSize}for(var AL in L){if(g.hooks[AL]&&g.hooks[AL].length){L[AL]=L[AL].concat(g.hooks[AL])}}Z(L.processOptions,[g])}function f(AK){O=M(AK);U();m()}function M(AN){var AL=[];for(var AK=0;AK<AN.length;++AK){var AM=C.extend(true,{},g.series);if(AN[AK].data){AM.data=AN[AK].data;delete AN[AK].data;C.extend(true,AM,AN[AK]);AN[AK].data=AM.data}else{AM.data=AN[AK]}AL.push(AM)}return AL}function T(AM,AK){var AL=AM[AK];if(!AL||AL==1){return s[AK]}if(typeof AL=="number"){return s[AK.charAt(0)+AL+AK.slice(1)]}return AL}function U(){var AP;var AV=O.length,AK=[],AN=[];for(AP=0;AP<O.length;++AP){var AS=O[AP].color;if(AS!=null){--AV;if(typeof AS=="number"){AN.push(AS)}else{AK.push(C.color.parse(O[AP].color))}}}for(AP=0;AP<AN.length;++AP){AV=Math.max(AV,AN[AP]+1)}var AL=[],AO=0;AP=0;while(AL.length<AV){var AR;if(g.colors.length==AP){AR=C.color.make(100,100,100)}else{AR=C.color.parse(g.colors[AP])}var AM=AO%2==1?-1:1;AR.scale("rgb",1+AM*Math.ceil(AO/2)*0.2);AL.push(AR);++AP;if(AP>=g.colors.length){AP=0;++AO}}var AQ=0,AW;for(AP=0;AP<O.length;++AP){AW=O[AP];if(AW.color==null){AW.color=AL[AQ].toString();++AQ}else{if(typeof AW.color=="number"){AW.color=AL[AW.color].toString()}}if(AW.lines.show==null){var AU,AT=true;for(AU in AW){if(AW[AU].show){AT=false;break}}if(AT){AW.lines.show=true}}AW.xaxis=T(AW,"xaxis");AW.yaxis=T(AW,"yaxis")}}function m(){var AW=Number.POSITIVE_INFINITY,AQ=Number.NEGATIVE_INFINITY,Ac,Aa,AZ,AV,AL,AR,Ab,AX,AP,AO,AK,Ai,Af,AT;for(AK in s){s[AK].datamin=AW;s[AK].datamax=AQ;s[AK].used=false}function AN(Al,Ak,Aj){if(Ak<Al.datamin){Al.datamin=Ak}if(Aj>Al.datamax){Al.datamax=Aj}}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];AR.datapoints={points:[]};Z(L.processRawData,[AR,AR.data,AR.datapoints])}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];var Ah=AR.data,Ae=AR.datapoints.format;if(!Ae){Ae=[];Ae.push({x:true,number:true,required:true});Ae.push({y:true,number:true,required:true});if(AR.bars.show){Ae.push({y:true,number:true,required:false,defaultValue:0})}AR.datapoints.format=Ae}if(AR.datapoints.pointsize!=null){continue}if(AR.datapoints.pointsize==null){AR.datapoints.pointsize=Ae.length}AX=AR.datapoints.pointsize;Ab=AR.datapoints.points;insertSteps=AR.lines.show&&AR.lines.steps;AR.xaxis.used=AR.yaxis.used=true;for(Aa=AZ=0;Aa<Ah.length;++Aa,AZ+=AX){AT=Ah[Aa];var AM=AT==null;if(!AM){for(AV=0;AV<AX;++AV){Ai=AT[AV];Af=Ae[AV];if(Af){if(Af.number&&Ai!=null){Ai=+Ai;if(isNaN(Ai)){Ai=null}}if(Ai==null){if(Af.required){AM=true}if(Af.defaultValue!=null){Ai=Af.defaultValue}}}Ab[AZ+AV]=Ai}}if(AM){for(AV=0;AV<AX;++AV){Ai=Ab[AZ+AV];if(Ai!=null){Af=Ae[AV];if(Af.x){AN(AR.xaxis,Ai,Ai)}if(Af.y){AN(AR.yaxis,Ai,Ai)}}Ab[AZ+AV]=null}}else{if(insertSteps&&AZ>0&&Ab[AZ-AX]!=null&&Ab[AZ-AX]!=Ab[AZ]&&Ab[AZ-AX+1]!=Ab[AZ+1]){for(AV=0;AV<AX;++AV){Ab[AZ+AX+AV]=Ab[AZ+AV]}Ab[AZ+1]=Ab[AZ-AX+1];AZ+=AX}}}}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];Z(L.processDatapoints,[AR,AR.datapoints])}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];Ab=AR.datapoints.points,AX=AR.datapoints.pointsize;var AS=AW,AY=AW,AU=AQ,Ad=AQ;for(Aa=0;Aa<Ab.length;Aa+=AX){if(Ab[Aa]==null){continue}for(AV=0;AV<AX;++AV){Ai=Ab[Aa+AV];Af=Ae[AV];if(!Af){continue}if(Af.x){if(Ai<AS){AS=Ai}if(Ai>AU){AU=Ai}}if(Af.y){if(Ai<AY){AY=Ai}if(Ai>Ad){Ad=Ai}}}}if(AR.bars.show){var Ag=AR.bars.align=="left"?0:-AR.bars.barWidth/2;if(AR.bars.horizontal){AY+=Ag;Ad+=Ag+AR.bars.barWidth}else{AS+=Ag;AU+=Ag+AR.bars.barWidth}}AN(AR.xaxis,AS,AU);AN(AR.yaxis,AY,Ad)}for(AK in s){if(s[AK].datamin==AW){s[AK].datamin=null}if(s[AK].datamax==AQ){s[AK].datamax=null}}}function c(){function AK(AM,AL){var AN=document.createElement("canvas");AN.width=AM;AN.height=AL;if(C.browser.msie){AN=window.G_vmlCanvasManager.initElement(AN)}return AN}y=l.width();Q=l.height();l.html("");if(l.css("position")=="static"){l.css("position","relative")}if(y<=0||Q<=0){throw"Invalid dimensions for plot, width = "+y+", height = "+Q}if(C.browser.msie){window.G_vmlCanvasManager.init_(document)}P=C(AK(y,Q)).appendTo(l).get(0);Y=P.getContext("2d");AC=C(AK(y,Q)).css({position:"absolute",left:0,top:0}).appendTo(l).get(0);AJ=AC.getContext("2d");AJ.stroke()}function AG(){AD=C([AC,P]);if(g.grid.hoverable){AD.mousemove(D)}if(g.grid.clickable){AD.click(d)}Z(L.bindEvents,[AD])}function k(){function AL(AT,AU){function AP(AV){return AV}var AS,AO,AQ=AU.transform||AP,AR=AU.inverseTransform;if(AT==s.xaxis||AT==s.x2axis){AS=AT.scale=I/(AQ(AT.max)-AQ(AT.min));AO=AQ(AT.min);if(AQ==AP){AT.p2c=function(AV){return(AV-AO)*AS}}else{AT.p2c=function(AV){return(AQ(AV)-AO)*AS}}if(!AR){AT.c2p=function(AV){return AO+AV/AS}}else{AT.c2p=function(AV){return AR(AO+AV/AS)}}}else{AS=AT.scale=t/(AQ(AT.max)-AQ(AT.min));AO=AQ(AT.max);if(AQ==AP){AT.p2c=function(AV){return(AO-AV)*AS}}else{AT.p2c=function(AV){return(AO-AQ(AV))*AS}}if(!AR){AT.c2p=function(AV){return AO-AV/AS}}else{AT.c2p=function(AV){return AR(AO-AV/AS)}}}}function AN(AR,AT){var AQ,AS=[],AP;AR.labelWidth=AT.labelWidth;AR.labelHeight=AT.labelHeight;if(AR==s.xaxis||AR==s.x2axis){if(AR.labelWidth==null){AR.labelWidth=y/(AR.ticks.length>0?AR.ticks.length:1)}if(AR.labelHeight==null){AS=[];for(AQ=0;AQ<AR.ticks.length;++AQ){AP=AR.ticks[AQ].label;if(AP){AS.push('<div class="tickLabel" style="float:left;width:'+AR.labelWidth+'px">'+AP+"</div>")}}if(AS.length>0){var AO=C('<div style="position:absolute;top:-10000px;width:10000px;font-size:smaller">'+AS.join("")+'<div style="clear:left"></div></div>').appendTo(l);AR.labelHeight=AO.height();AO.remove()}}}else{if(AR.labelWidth==null||AR.labelHeight==null){for(AQ=0;AQ<AR.ticks.length;++AQ){AP=AR.ticks[AQ].label;if(AP){AS.push('<div class="tickLabel">'+AP+"</div>")}}if(AS.length>0){var AO=C('<div style="position:absolute;top:-10000px;font-size:smaller">'+AS.join("")+"</div>").appendTo(l);if(AR.labelWidth==null){AR.labelWidth=AO.width()}if(AR.labelHeight==null){AR.labelHeight=AO.find("div").height()}AO.remove()}}}if(AR.labelWidth==null){AR.labelWidth=0}if(AR.labelHeight==null){AR.labelHeight=0}}function AM(){var AP=g.grid.borderWidth;for(i=0;i<O.length;++i){AP=Math.max(AP,2*(O[i].points.radius+O[i].points.lineWidth/2))}e.left=e.right=e.top=e.bottom=AP;var AO=g.grid.labelMargin+g.grid.borderWidth;if(s.xaxis.labelHeight>0){e.bottom=Math.max(AP,s.xaxis.labelHeight+AO)}if(s.yaxis.labelWidth>0){e.left=Math.max(AP,s.yaxis.labelWidth+AO)}if(s.x2axis.labelHeight>0){e.top=Math.max(AP,s.x2axis.labelHeight+AO)}if(s.y2axis.labelWidth>0){e.right=Math.max(AP,s.y2axis.labelWidth+AO)}I=y-e.left-e.right;t=Q-e.bottom-e.top}var AK;for(AK in s){K(s[AK],g[AK])}if(g.grid.show){for(AK in s){F(s[AK],g[AK]);p(s[AK],g[AK]);AN(s[AK],g[AK])}AM()}else{e.left=e.right=e.top=e.bottom=0;I=y;t=Q}for(AK in s){AL(s[AK],g[AK])}if(g.grid.show){h()}AI()}function K(AN,AQ){var AM=+(AQ.min!=null?AQ.min:AN.datamin),AK=+(AQ.max!=null?AQ.max:AN.datamax),AP=AK-AM;if(AP==0){var AL=AK==0?1:0.01;if(AQ.min==null){AM-=AL}if(AQ.max==null||AQ.min!=null){AK+=AL}}else{var AO=AQ.autoscaleMargin;if(AO!=null){if(AQ.min==null){AM-=AP*AO;if(AM<0&&AN.datamin!=null&&AN.datamin>=0){AM=0}}if(AQ.max==null){AK+=AP*AO;if(AK>0&&AN.datamax!=null&&AN.datamax<=0){AK=0}}}}AN.min=AM;AN.max=AK}function F(AP,AS){var AO;if(typeof AS.ticks=="number"&&AS.ticks>0){AO=AS.ticks}else{if(AP==s.xaxis||AP==s.x2axis){AO=0.3*Math.sqrt(y)}else{AO=0.3*Math.sqrt(Q)}}var AX=(AP.max-AP.min)/AO,AZ,AT,AV,AW,AR,AM,AL;if(AS.mode=="time"){var AU={second:1000,minute:60*1000,hour:60*60*1000,day:24*60*60*1000,month:30*24*60*60*1000,year:365.2425*24*60*60*1000};var AY=[[1,"second"],[2,"second"],[5,"second"],[10,"second"],[30,"second"],[1,"minute"],[2,"minute"],[5,"minute"],[10,"minute"],[30,"minute"],[1,"hour"],[2,"hour"],[4,"hour"],[8,"hour"],[12,"hour"],[1,"day"],[2,"day"],[3,"day"],[0.25,"month"],[0.5,"month"],[1,"month"],[2,"month"],[3,"month"],[6,"month"],[1,"year"]];var AN=0;if(AS.minTickSize!=null){if(typeof AS.tickSize=="number"){AN=AS.tickSize}else{AN=AS.minTickSize[0]*AU[AS.minTickSize[1]]}}for(AR=0;AR<AY.length-1;++AR){if(AX<(AY[AR][0]*AU[AY[AR][1]]+AY[AR+1][0]*AU[AY[AR+1][1]])/2&&AY[AR][0]*AU[AY[AR][1]]>=AN){break}}AZ=AY[AR][0];AV=AY[AR][1];if(AV=="year"){AM=Math.pow(10,Math.floor(Math.log(AX/AU.year)/Math.LN10));AL=(AX/AU.year)/AM;if(AL<1.5){AZ=1}else{if(AL<3){AZ=2}else{if(AL<7.5){AZ=5}else{AZ=10}}}AZ*=AM}if(AS.tickSize){AZ=AS.tickSize[0];AV=AS.tickSize[1]}AT=function(Ac){var Ah=[],Af=Ac.tickSize[0],Ai=Ac.tickSize[1],Ag=new Date(Ac.min);var Ab=Af*AU[Ai];if(Ai=="second"){Ag.setUTCSeconds(A(Ag.getUTCSeconds(),Af))}if(Ai=="minute"){Ag.setUTCMinutes(A(Ag.getUTCMinutes(),Af))}if(Ai=="hour"){Ag.setUTCHours(A(Ag.getUTCHours(),Af))}if(Ai=="month"){Ag.setUTCMonth(A(Ag.getUTCMonth(),Af))}if(Ai=="year"){Ag.setUTCFullYear(A(Ag.getUTCFullYear(),Af))}Ag.setUTCMilliseconds(0);if(Ab>=AU.minute){Ag.setUTCSeconds(0)}if(Ab>=AU.hour){Ag.setUTCMinutes(0)}if(Ab>=AU.day){Ag.setUTCHours(0)}if(Ab>=AU.day*4){Ag.setUTCDate(1)}if(Ab>=AU.year){Ag.setUTCMonth(0)}var Ak=0,Aj=Number.NaN,Ad;do{Ad=Aj;Aj=Ag.getTime();Ah.push({v:Aj,label:Ac.tickFormatter(Aj,Ac)});if(Ai=="month"){if(Af<1){Ag.setUTCDate(1);var Aa=Ag.getTime();Ag.setUTCMonth(Ag.getUTCMonth()+1);var Ae=Ag.getTime();Ag.setTime(Aj+Ak*AU.hour+(Ae-Aa)*Af);Ak=Ag.getUTCHours();Ag.setUTCHours(0)}else{Ag.setUTCMonth(Ag.getUTCMonth()+Af)}}else{if(Ai=="year"){Ag.setUTCFullYear(Ag.getUTCFullYear()+Af)}else{Ag.setTime(Aj+Ab)}}}while(Aj<Ac.max&&Aj!=Ad);return Ah};AW=function(Aa,Ad){var Af=new Date(Aa);if(AS.timeformat!=null){return C.plot.formatDate(Af,AS.timeformat,AS.monthNames)}var Ab=Ad.tickSize[0]*AU[Ad.tickSize[1]];var Ac=Ad.max-Ad.min;var Ae=(AS.twelveHourClock)?" %p":"";if(Ab<AU.minute){fmt="%h:%M:%S"+Ae}else{if(Ab<AU.day){if(Ac<2*AU.day){fmt="%h:%M"+Ae}else{fmt="%b %d %h:%M"+Ae}}else{if(Ab<AU.month){fmt="%b %d"}else{if(Ab<AU.year){if(Ac<AU.year){fmt="%b"}else{fmt="%b %y"}}else{fmt="%y"}}}}return C.plot.formatDate(Af,fmt,AS.monthNames)}}else{var AK=AS.tickDecimals;var AQ=-Math.floor(Math.log(AX)/Math.LN10);if(AK!=null&&AQ>AK){AQ=AK}AM=Math.pow(10,-AQ);AL=AX/AM;if(AL<1.5){AZ=1}else{if(AL<3){AZ=2;if(AL>2.25&&(AK==null||AQ+1<=AK)){AZ=2.5;++AQ}}else{if(AL<7.5){AZ=5}else{AZ=10}}}AZ*=AM;if(AS.minTickSize!=null&&AZ<AS.minTickSize){AZ=AS.minTickSize}if(AS.tickSize!=null){AZ=AS.tickSize}AP.tickDecimals=Math.max(0,(AK!=null)?AK:AQ);AT=function(Ac){var Ae=[];var Af=A(Ac.min,Ac.tickSize),Ab=0,Aa=Number.NaN,Ad;do{Ad=Aa;Aa=Af+Ab*Ac.tickSize;Ae.push({v:Aa,label:Ac.tickFormatter(Aa,Ac)});++Ab}while(Aa<Ac.max&&Aa!=Ad);return Ae};AW=function(Aa,Ab){return Aa.toFixed(Ab.tickDecimals)}}AP.tickSize=AV?[AZ,AV]:AZ;AP.tickGenerator=AT;if(C.isFunction(AS.tickFormatter)){AP.tickFormatter=function(Aa,Ab){return""+AS.tickFormatter(Aa,Ab)}}else{AP.tickFormatter=AW}}function p(AO,AQ){AO.ticks=[];if(!AO.used){return }if(AQ.ticks==null){AO.ticks=AO.tickGenerator(AO)}else{if(typeof AQ.ticks=="number"){if(AQ.ticks>0){AO.ticks=AO.tickGenerator(AO)}}else{if(AQ.ticks){var AP=AQ.ticks;if(C.isFunction(AP)){AP=AP({min:AO.min,max:AO.max})}var AN,AK;for(AN=0;AN<AP.length;++AN){var AL=null;var AM=AP[AN];if(typeof AM=="object"){AK=AM[0];if(AM.length>1){AL=AM[1]}}else{AK=AM}if(AL==null){AL=AO.tickFormatter(AK,AO)}AO.ticks[AN]={v:AK,label:AL}}}}}if(AQ.autoscaleMargin!=null&&AO.ticks.length>0){if(AQ.min==null){AO.min=Math.min(AO.min,AO.ticks[0].v)}if(AQ.max==null&&AO.ticks.length>1){AO.max=Math.max(AO.max,AO.ticks[AO.ticks.length-1].v)}}}function AH(){Y.clearRect(0,0,y,Q);var AL=g.grid;if(AL.show&&!AL.aboveData){S()}for(var AK=0;AK<O.length;++AK){AA(O[AK])}Z(L.draw,[Y]);if(AL.show&&AL.aboveData){S()}}function N(AL,AR){var AO=AR+"axis",AK=AR+"2axis",AN,AQ,AP,AM;if(AL[AO]){AN=s[AO];AQ=AL[AO].from;AP=AL[AO].to}else{if(AL[AK]){AN=s[AK];AQ=AL[AK].from;AP=AL[AK].to}else{AN=s[AO];AQ=AL[AR+"1"];AP=AL[AR+"2"]}}if(AQ!=null&&AP!=null&&AQ>AP){return{from:AP,to:AQ,axis:AN}}return{from:AQ,to:AP,axis:AN}}function S(){var AO;Y.save();Y.translate(e.left,e.top);if(g.grid.backgroundColor){Y.fillStyle=R(g.grid.backgroundColor,t,0,"rgba(255, 255, 255, 0)");Y.fillRect(0,0,I,t)}var AL=g.grid.markings;if(AL){if(C.isFunction(AL)){AL=AL({xmin:s.xaxis.min,xmax:s.xaxis.max,ymin:s.yaxis.min,ymax:s.yaxis.max,xaxis:s.xaxis,yaxis:s.yaxis,x2axis:s.x2axis,y2axis:s.y2axis})}for(AO=0;AO<AL.length;++AO){var AK=AL[AO],AQ=N(AK,"x"),AN=N(AK,"y");if(AQ.from==null){AQ.from=AQ.axis.min}if(AQ.to==null){AQ.to=AQ.axis.max}if(AN.from==null){AN.from=AN.axis.min}if(AN.to==null){AN.to=AN.axis.max}if(AQ.to<AQ.axis.min||AQ.from>AQ.axis.max||AN.to<AN.axis.min||AN.from>AN.axis.max){continue}AQ.from=Math.max(AQ.from,AQ.axis.min);AQ.to=Math.min(AQ.to,AQ.axis.max);AN.from=Math.max(AN.from,AN.axis.min);AN.to=Math.min(AN.to,AN.axis.max);if(AQ.from==AQ.to&&AN.from==AN.to){continue}AQ.from=AQ.axis.p2c(AQ.from);AQ.to=AQ.axis.p2c(AQ.to);AN.from=AN.axis.p2c(AN.from);AN.to=AN.axis.p2c(AN.to);if(AQ.from==AQ.to||AN.from==AN.to){Y.beginPath();Y.strokeStyle=AK.color||g.grid.markingsColor;Y.lineWidth=AK.lineWidth||g.grid.markingsLineWidth;Y.moveTo(AQ.from,AN.from);Y.lineTo(AQ.to,AN.to);Y.stroke()}else{Y.fillStyle=AK.color||g.grid.markingsColor;Y.fillRect(AQ.from,AN.to,AQ.to-AQ.from,AN.from-AN.to)}}}Y.lineWidth=1;Y.strokeStyle=g.grid.tickColor;Y.beginPath();var AM,AP=s.xaxis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=s.xaxis.max){continue}Y.moveTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,0);Y.lineTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,t)}AP=s.yaxis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=AP.max){continue}Y.moveTo(0,Math.floor(AP.p2c(AM))+Y.lineWidth/2);Y.lineTo(I,Math.floor(AP.p2c(AM))+Y.lineWidth/2)}AP=s.x2axis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=AP.max){continue}Y.moveTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,-5);Y.lineTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,5)}AP=s.y2axis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=AP.max){continue}Y.moveTo(I-5,Math.floor(AP.p2c(AM))+Y.lineWidth/2);Y.lineTo(I+5,Math.floor(AP.p2c(AM))+Y.lineWidth/2)}Y.stroke();if(g.grid.borderWidth){var AR=g.grid.borderWidth;Y.lineWidth=AR;Y.strokeStyle=g.grid.borderColor;Y.strokeRect(-AR/2,-AR/2,I+AR,t+AR)}Y.restore()}function h(){l.find(".tickLabels").remove();var AK=['<div class="tickLabels" style="font-size:smaller;color:'+g.grid.color+'">'];function AM(AP,AQ){for(var AO=0;AO<AP.ticks.length;++AO){var AN=AP.ticks[AO];if(!AN.label||AN.v<AP.min||AN.v>AP.max){continue}AK.push(AQ(AN,AP))}}var AL=g.grid.labelMargin+g.grid.borderWidth;AM(s.xaxis,function(AN,AO){return'<div style="position:absolute;top:'+(e.top+t+AL)+"px;left:"+Math.round(e.left+AO.p2c(AN.v)-AO.labelWidth/2)+"px;width:"+AO.labelWidth+'px;text-align:center" class="tickLabel">'+AN.label+"</div>"});AM(s.yaxis,function(AN,AO){return'<div style="position:absolute;top:'+Math.round(e.top+AO.p2c(AN.v)-AO.labelHeight/2)+"px;right:"+(e.right+I+AL)+"px;width:"+AO.labelWidth+'px;text-align:right" class="tickLabel">'+AN.label+"</div>"});AM(s.x2axis,function(AN,AO){return'<div style="position:absolute;bottom:'+(e.bottom+t+AL)+"px;left:"+Math.round(e.left+AO.p2c(AN.v)-AO.labelWidth/2)+"px;width:"+AO.labelWidth+'px;text-align:center" class="tickLabel">'+AN.label+"</div>"});AM(s.y2axis,function(AN,AO){return'<div style="position:absolute;top:'+Math.round(e.top+AO.p2c(AN.v)-AO.labelHeight/2)+"px;left:"+(e.left+I+AL)+"px;width:"+AO.labelWidth+'px;text-align:left" class="tickLabel">'+AN.label+"</div>"});AK.push("</div>");l.append(AK.join(""))}function AA(AK){if(AK.lines.show){a(AK)}if(AK.bars.show){n(AK)}if(AK.points.show){o(AK)}}function a(AN){function AM(AY,AZ,AR,Ad,Ac){var Ae=AY.points,AS=AY.pointsize,AW=null,AV=null;Y.beginPath();for(var AX=AS;AX<Ae.length;AX+=AS){var AU=Ae[AX-AS],Ab=Ae[AX-AS+1],AT=Ae[AX],Aa=Ae[AX+1];if(AU==null||AT==null){continue}if(Ab<=Aa&&Ab<Ac.min){if(Aa<Ac.min){continue}AU=(Ac.min-Ab)/(Aa-Ab)*(AT-AU)+AU;Ab=Ac.min}else{if(Aa<=Ab&&Aa<Ac.min){if(Ab<Ac.min){continue}AT=(Ac.min-Ab)/(Aa-Ab)*(AT-AU)+AU;Aa=Ac.min}}if(Ab>=Aa&&Ab>Ac.max){if(Aa>Ac.max){continue}AU=(Ac.max-Ab)/(Aa-Ab)*(AT-AU)+AU;Ab=Ac.max}else{if(Aa>=Ab&&Aa>Ac.max){if(Ab>Ac.max){continue}AT=(Ac.max-Ab)/(Aa-Ab)*(AT-AU)+AU;Aa=Ac.max}}if(AU<=AT&&AU<Ad.min){if(AT<Ad.min){continue}Ab=(Ad.min-AU)/(AT-AU)*(Aa-Ab)+Ab;AU=Ad.min}else{if(AT<=AU&&AT<Ad.min){if(AU<Ad.min){continue}Aa=(Ad.min-AU)/(AT-AU)*(Aa-Ab)+Ab;AT=Ad.min}}if(AU>=AT&&AU>Ad.max){if(AT>Ad.max){continue}Ab=(Ad.max-AU)/(AT-AU)*(Aa-Ab)+Ab;AU=Ad.max}else{if(AT>=AU&&AT>Ad.max){if(AU>Ad.max){continue}Aa=(Ad.max-AU)/(AT-AU)*(Aa-Ab)+Ab;AT=Ad.max}}if(AU!=AW||Ab!=AV){Y.moveTo(Ad.p2c(AU)+AZ,Ac.p2c(Ab)+AR)}AW=AT;AV=Aa;Y.lineTo(Ad.p2c(AT)+AZ,Ac.p2c(Aa)+AR)}Y.stroke()}function AO(AX,Ae,Ac){var Af=AX.points,AR=AX.pointsize,AS=Math.min(Math.max(0,Ac.min),Ac.max),Aa,AV=0,Ad=false;for(var AW=AR;AW<Af.length;AW+=AR){var AU=Af[AW-AR],Ab=Af[AW-AR+1],AT=Af[AW],AZ=Af[AW+1];if(Ad&&AU!=null&&AT==null){Y.lineTo(Ae.p2c(AV),Ac.p2c(AS));Y.fill();Ad=false;continue}if(AU==null||AT==null){continue}if(AU<=AT&&AU<Ae.min){if(AT<Ae.min){continue}Ab=(Ae.min-AU)/(AT-AU)*(AZ-Ab)+Ab;AU=Ae.min}else{if(AT<=AU&&AT<Ae.min){if(AU<Ae.min){continue}AZ=(Ae.min-AU)/(AT-AU)*(AZ-Ab)+Ab;AT=Ae.min}}if(AU>=AT&&AU>Ae.max){if(AT>Ae.max){continue}Ab=(Ae.max-AU)/(AT-AU)*(AZ-Ab)+Ab;AU=Ae.max}else{if(AT>=AU&&AT>Ae.max){if(AU>Ae.max){continue}AZ=(Ae.max-AU)/(AT-AU)*(AZ-Ab)+Ab;AT=Ae.max}}if(!Ad){Y.beginPath();Y.moveTo(Ae.p2c(AU),Ac.p2c(AS));Ad=true}if(Ab>=Ac.max&&AZ>=Ac.max){Y.lineTo(Ae.p2c(AU),Ac.p2c(Ac.max));Y.lineTo(Ae.p2c(AT),Ac.p2c(Ac.max));AV=AT;continue}else{if(Ab<=Ac.min&&AZ<=Ac.min){Y.lineTo(Ae.p2c(AU),Ac.p2c(Ac.min));Y.lineTo(Ae.p2c(AT),Ac.p2c(Ac.min));AV=AT;continue}}var Ag=AU,AY=AT;if(Ab<=AZ&&Ab<Ac.min&&AZ>=Ac.min){AU=(Ac.min-Ab)/(AZ-Ab)*(AT-AU)+AU;Ab=Ac.min}else{if(AZ<=Ab&&AZ<Ac.min&&Ab>=Ac.min){AT=(Ac.min-Ab)/(AZ-Ab)*(AT-AU)+AU;AZ=Ac.min}}if(Ab>=AZ&&Ab>Ac.max&&AZ<=Ac.max){AU=(Ac.max-Ab)/(AZ-Ab)*(AT-AU)+AU;Ab=Ac.max}else{if(AZ>=Ab&&AZ>Ac.max&&Ab<=Ac.max){AT=(Ac.max-Ab)/(AZ-Ab)*(AT-AU)+AU;AZ=Ac.max}}if(AU!=Ag){if(Ab<=Ac.min){Aa=Ac.min}else{Aa=Ac.max}Y.lineTo(Ae.p2c(Ag),Ac.p2c(Aa));Y.lineTo(Ae.p2c(AU),Ac.p2c(Aa))}Y.lineTo(Ae.p2c(AU),Ac.p2c(Ab));Y.lineTo(Ae.p2c(AT),Ac.p2c(AZ));if(AT!=AY){if(AZ<=Ac.min){Aa=Ac.min}else{Aa=Ac.max}Y.lineTo(Ae.p2c(AT),Ac.p2c(Aa));Y.lineTo(Ae.p2c(AY),Ac.p2c(Aa))}AV=Math.max(AT,AY)}if(Ad){Y.lineTo(Ae.p2c(AV),Ac.p2c(AS));Y.fill()}}Y.save();Y.translate(e.left,e.top);Y.lineJoin="round";var AP=AN.lines.lineWidth,AK=AN.shadowSize;if(AP>0&&AK>0){Y.lineWidth=AK;Y.strokeStyle="rgba(0,0,0,0.1)";var AQ=Math.PI/18;AM(AN.datapoints,Math.sin(AQ)*(AP/2+AK/2),Math.cos(AQ)*(AP/2+AK/2),AN.xaxis,AN.yaxis);Y.lineWidth=AK/2;AM(AN.datapoints,Math.sin(AQ)*(AP/2+AK/4),Math.cos(AQ)*(AP/2+AK/4),AN.xaxis,AN.yaxis)}Y.lineWidth=AP;Y.strokeStyle=AN.color;var AL=V(AN.lines,AN.color,0,t);if(AL){Y.fillStyle=AL;AO(AN.datapoints,AN.xaxis,AN.yaxis)}if(AP>0){AM(AN.datapoints,0,0,AN.xaxis,AN.yaxis)}Y.restore()}function o(AN){function AP(AU,AT,Ab,AR,AV,AZ,AY){var Aa=AU.points,AQ=AU.pointsize;for(var AS=0;AS<Aa.length;AS+=AQ){var AX=Aa[AS],AW=Aa[AS+1];if(AX==null||AX<AZ.min||AX>AZ.max||AW<AY.min||AW>AY.max){continue}Y.beginPath();Y.arc(AZ.p2c(AX),AY.p2c(AW)+AR,AT,0,AV,false);if(Ab){Y.fillStyle=Ab;Y.fill()}Y.stroke()}}Y.save();Y.translate(e.left,e.top);var AO=AN.lines.lineWidth,AL=AN.shadowSize,AK=AN.points.radius;if(AO>0&&AL>0){var AM=AL/2;Y.lineWidth=AM;Y.strokeStyle="rgba(0,0,0,0.1)";AP(AN.datapoints,AK,null,AM+AM/2,Math.PI,AN.xaxis,AN.yaxis);Y.strokeStyle="rgba(0,0,0,0.2)";AP(AN.datapoints,AK,null,AM/2,Math.PI,AN.xaxis,AN.yaxis)}Y.lineWidth=AO;Y.strokeStyle=AN.color;AP(AN.datapoints,AK,V(AN.points,AN.color),0,2*Math.PI,AN.xaxis,AN.yaxis);Y.restore()}function AB(AV,AU,Ad,AQ,AY,AN,AL,AT,AS,Ac,AZ){var AM,Ab,AR,AX,AO,AK,AW,AP,Aa;if(AZ){AP=AK=AW=true;AO=false;AM=Ad;Ab=AV;AX=AU+AQ;AR=AU+AY;if(Ab<AM){Aa=Ab;Ab=AM;AM=Aa;AO=true;AK=false}}else{AO=AK=AW=true;AP=false;AM=AV+AQ;Ab=AV+AY;AR=Ad;AX=AU;if(AX<AR){Aa=AX;AX=AR;AR=Aa;AP=true;AW=false}}if(Ab<AT.min||AM>AT.max||AX<AS.min||AR>AS.max){return }if(AM<AT.min){AM=AT.min;AO=false}if(Ab>AT.max){Ab=AT.max;AK=false}if(AR<AS.min){AR=AS.min;AP=false}if(AX>AS.max){AX=AS.max;AW=false}AM=AT.p2c(AM);AR=AS.p2c(AR);Ab=AT.p2c(Ab);AX=AS.p2c(AX);if(AL){Ac.beginPath();Ac.moveTo(AM,AR);Ac.lineTo(AM,AX);Ac.lineTo(Ab,AX);Ac.lineTo(Ab,AR);Ac.fillStyle=AL(AR,AX);Ac.fill()}if(AO||AK||AW||AP){Ac.beginPath();Ac.moveTo(AM,AR+AN);if(AO){Ac.lineTo(AM,AX+AN)}else{Ac.moveTo(AM,AX+AN)}if(AW){Ac.lineTo(Ab,AX+AN)}else{Ac.moveTo(Ab,AX+AN)}if(AK){Ac.lineTo(Ab,AR+AN)}else{Ac.moveTo(Ab,AR+AN)}if(AP){Ac.lineTo(AM,AR+AN)}else{Ac.moveTo(AM,AR+AN)}Ac.stroke()}}function n(AM){function AL(AS,AR,AU,AP,AT,AW,AV){var AX=AS.points,AO=AS.pointsize;for(var AQ=0;AQ<AX.length;AQ+=AO){if(AX[AQ]==null){continue}AB(AX[AQ],AX[AQ+1],AX[AQ+2],AR,AU,AP,AT,AW,AV,Y,AM.bars.horizontal)}}Y.save();Y.translate(e.left,e.top);Y.lineWidth=AM.bars.lineWidth;Y.strokeStyle=AM.color;var AK=AM.bars.align=="left"?0:-AM.bars.barWidth/2;var AN=AM.bars.fill?function(AO,AP){return V(AM.bars,AM.color,AO,AP)}:null;AL(AM.datapoints,AK,AK+AM.bars.barWidth,0,AN,AM.xaxis,AM.yaxis);Y.restore()}function V(AM,AK,AL,AO){var AN=AM.fill;if(!AN){return null}if(AM.fillColor){return R(AM.fillColor,AL,AO,AK)}var AP=C.color.parse(AK);AP.a=typeof AN=="number"?AN:0.4;AP.normalize();return AP.toString()}function AI(){l.find(".legend").remove();if(!g.legend.show){return }var AP=[],AN=false,AV=g.legend.labelFormatter,AU,AR;for(i=0;i<O.length;++i){AU=O[i];AR=AU.label;if(!AR){continue}if(i%g.legend.noColumns==0){if(AN){AP.push("</tr>")}AP.push("<tr>");AN=true}if(AV){AR=AV(AR,AU)}AP.push('<td class="legendColorBox"><div style="border:1px solid '+g.legend.labelBoxBorderColor+';padding:1px"><div style="width:4px;height:0;border:5px solid '+AU.color+';overflow:hidden"></div></div></td><td class="legendLabel">'+AR+"</td>")}if(AN){AP.push("</tr>")}if(AP.length==0){return }var AT='<table style="font-size:smaller;color:'+g.grid.color+'">'+AP.join("")+"</table>";if(g.legend.container!=null){C(g.legend.container).html(AT)}else{var AQ="",AL=g.legend.position,AM=g.legend.margin;if(AM[0]==null){AM=[AM,AM]}if(AL.charAt(0)=="n"){AQ+="top:"+(AM[1]+e.top)+"px;"}else{if(AL.charAt(0)=="s"){AQ+="bottom:"+(AM[1]+e.bottom)+"px;"}}if(AL.charAt(1)=="e"){AQ+="right:"+(AM[0]+e.right)+"px;"}else{if(AL.charAt(1)=="w"){AQ+="left:"+(AM[0]+e.left)+"px;"}}var AS=C('<div class="legend">'+AT.replace('style="','style="position:absolute;'+AQ+";")+"</div>").appendTo(l);if(g.legend.backgroundOpacity!=0){var AO=g.legend.backgroundColor;if(AO==null){AO=g.grid.backgroundColor;if(AO&&typeof AO=="string"){AO=C.color.parse(AO)}else{AO=C.color.extract(AS,"background-color")}AO.a=1;AO=AO.toString()}var AK=AS.children();C('<div style="position:absolute;width:'+AK.width()+"px;height:"+AK.height()+"px;"+AQ+"background-color:"+AO+';"> </div>').prependTo(AS).css("opacity",g.legend.backgroundOpacity)}}}var w=[],J=null;function AF(AR,AP,AM){var AX=g.grid.mouseActiveRadius,Aj=AX*AX+1,Ah=null,Aa=false,Af,Ad;for(Af=0;Af<O.length;++Af){if(!AM(O[Af])){continue}var AY=O[Af],AQ=AY.xaxis,AO=AY.yaxis,Ae=AY.datapoints.points,Ac=AY.datapoints.pointsize,AZ=AQ.c2p(AR),AW=AO.c2p(AP),AL=AX/AQ.scale,AK=AX/AO.scale;if(AY.lines.show||AY.points.show){for(Ad=0;Ad<Ae.length;Ad+=Ac){var AT=Ae[Ad],AS=Ae[Ad+1];if(AT==null){continue}if(AT-AZ>AL||AT-AZ<-AL||AS-AW>AK||AS-AW<-AK){continue}var AV=Math.abs(AQ.p2c(AT)-AR),AU=Math.abs(AO.p2c(AS)-AP),Ab=AV*AV+AU*AU;if(Ab<=Aj){Aj=Ab;Ah=[Af,Ad/Ac]}}}if(AY.bars.show&&!Ah){var AN=AY.bars.align=="left"?0:-AY.bars.barWidth/2,Ag=AN+AY.bars.barWidth;for(Ad=0;Ad<Ae.length;Ad+=Ac){var AT=Ae[Ad],AS=Ae[Ad+1],Ai=Ae[Ad+2];if(AT==null){continue}if(O[Af].bars.horizontal?(AZ<=Math.max(Ai,AT)&&AZ>=Math.min(Ai,AT)&&AW>=AS+AN&&AW<=AS+Ag):(AZ>=AT+AN&&AZ<=AT+Ag&&AW>=Math.min(Ai,AS)&&AW<=Math.max(Ai,AS))){Ah=[Af,Ad/Ac]}}}}if(Ah){Af=Ah[0];Ad=Ah[1];Ac=O[Af].datapoints.pointsize;return{datapoint:O[Af].datapoints.points.slice(Ad*Ac,(Ad+1)*Ac),dataIndex:Ad,series:O[Af],seriesIndex:Af}}return null}function D(AK){if(g.grid.hoverable){H("plothover",AK,function(AL){return AL.hoverable!=false})}}function d(AK){H("plotclick",AK,function(AL){return AL.clickable!=false})}function H(AL,AK,AM){var AN=AD.offset(),AS={pageX:AK.pageX,pageY:AK.pageY},AQ=AK.pageX-AN.left-e.left,AO=AK.pageY-AN.top-e.top;if(s.xaxis.used){AS.x=s.xaxis.c2p(AQ)}if(s.yaxis.used){AS.y=s.yaxis.c2p(AO)}if(s.x2axis.used){AS.x2=s.x2axis.c2p(AQ)}if(s.y2axis.used){AS.y2=s.y2axis.c2p(AO)}var AT=AF(AQ,AO,AM);if(AT){AT.pageX=parseInt(AT.series.xaxis.p2c(AT.datapoint[0])+AN.left+e.left);AT.pageY=parseInt(AT.series.yaxis.p2c(AT.datapoint[1])+AN.top+e.top)}if(g.grid.autoHighlight){for(var AP=0;AP<w.length;++AP){var AR=w[AP];if(AR.auto==AL&&!(AT&&AR.series==AT.series&&AR.point==AT.datapoint)){x(AR.series,AR.point)}}if(AT){AE(AT.series,AT.datapoint,AL)}}l.trigger(AL,[AS,AT])}function q(){if(!J){J=setTimeout(v,30)}}function v(){J=null;AJ.save();AJ.clearRect(0,0,y,Q);AJ.translate(e.left,e.top);var AL,AK;for(AL=0;AL<w.length;++AL){AK=w[AL];if(AK.series.bars.show){z(AK.series,AK.point)}else{u(AK.series,AK.point)}}AJ.restore();Z(L.drawOverlay,[AJ])}function AE(AM,AK,AN){if(typeof AM=="number"){AM=O[AM]}if(typeof AK=="number"){AK=AM.data[AK]}var AL=j(AM,AK);if(AL==-1){w.push({series:AM,point:AK,auto:AN});q()}else{if(!AN){w[AL].auto=false}}}function x(AM,AK){if(AM==null&&AK==null){w=[];q()}if(typeof AM=="number"){AM=O[AM]}if(typeof AK=="number"){AK=AM.data[AK]}var AL=j(AM,AK);if(AL!=-1){w.splice(AL,1);q()}}function j(AM,AN){for(var AK=0;AK<w.length;++AK){var AL=w[AK];if(AL.series==AM&&AL.point[0]==AN[0]&&AL.point[1]==AN[1]){return AK}}return -1}function u(AN,AM){var AL=AM[0],AR=AM[1],AQ=AN.xaxis,AP=AN.yaxis;if(AL<AQ.min||AL>AQ.max||AR<AP.min||AR>AP.max){return }var AO=AN.points.radius+AN.points.lineWidth/2;AJ.lineWidth=AO;AJ.strokeStyle=C.color.parse(AN.color).scale("a",0.5).toString();var AK=1.5*AO;AJ.beginPath();AJ.arc(AQ.p2c(AL),AP.p2c(AR),AK,0,2*Math.PI,false);AJ.stroke()}function z(AN,AK){AJ.lineWidth=AN.bars.lineWidth;AJ.strokeStyle=C.color.parse(AN.color).scale("a",0.5).toString();var AM=C.color.parse(AN.color).scale("a",0.5).toString();var AL=AN.bars.align=="left"?0:-AN.bars.barWidth/2;AB(AK[0],AK[1],AK[2]||0,AL,AL+AN.bars.barWidth,0,function(){return AM},AN.xaxis,AN.yaxis,AJ,AN.bars.horizontal)}function R(AM,AL,AQ,AO){if(typeof AM=="string"){return AM}else{var AP=Y.createLinearGradient(0,AQ,0,AL);for(var AN=0,AK=AM.colors.length;AN<AK;++AN){var AR=AM.colors[AN];if(typeof AR!="string"){AR=C.color.parse(AO).scale("rgb",AR.brightness);AR.a*=AR.opacity;AR=AR.toString()}AP.addColorStop(AN/(AK-1),AR)}return AP}}}C.plot=function(G,E,D){var F=new B(C(G),E,D,C.plot.plugins);return F};C.plot.plugins=[];C.plot.formatDate=function(H,E,G){var L=function(N){N=""+N;return N.length==1?"0"+N:N};var D=[];var M=false;var K=H.getUTCHours();var I=K<12;if(G==null){G=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}if(E.search(/%p|%P/)!=-1){if(K>12){K=K-12}else{if(K==0){K=12}}}for(var F=0;F<E.length;++F){var J=E.charAt(F);if(M){switch(J){case"h":J=""+K;break;case"H":J=L(K);break;case"M":J=L(H.getUTCMinutes());break;case"S":J=L(H.getUTCSeconds());break;case"d":J=""+H.getUTCDate();break;case"m":J=""+(H.getUTCMonth()+1);break;case"y":J=""+H.getUTCFullYear();break;case"b":J=""+G[H.getUTCMonth()];break;case"p":J=(I)?("am"):("pm");break;case"P":J=(I)?("AM"):("PM");break}D.push(J);M=false}else{if(J=="%"){M=true}else{D.push(J)}}}return D.join("")};function A(E,D){return D*Math.floor(E/D)}})(jQuery); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.form.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.form.js.svn-base deleted file mode 100644 index 443114fda381ddc5a1ced7ea61a9333caffebe80..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.form.js.svn-base +++ /dev/null @@ -1,654 +0,0 @@ -/* - * jQuery Form Plugin - * version: 2.33 (22-SEP-2009) - * @requires jQuery v1.2.6 or later - * - * Examples and documentation at: http://malsup.com/jquery/form/ - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - */ -;(function($) { - -/* - Usage Note: - ----------- - Do not use both ajaxSubmit and ajaxForm on the same form. These - functions are intended to be exclusive. Use ajaxSubmit if you want - to bind your own submit handler to the form. For example, - - $(document).ready(function() { - $('#myForm').bind('submit', function() { - $(this).ajaxSubmit({ - target: '#output' - }); - return false; // <-- important! - }); - }); - - Use ajaxForm when you want the plugin to manage all the event binding - for you. For example, - - $(document).ready(function() { - $('#myForm').ajaxForm({ - target: '#output' - }); - }); - - When using ajaxForm, the ajaxSubmit function will be invoked for you - at the appropriate time. -*/ - -/** - * ajaxSubmit() provides a mechanism for immediately submitting - * an HTML form using AJAX. - */ -$.fn.ajaxSubmit = function(options) { - // fast fail if nothing selected (http://dev.jquery.com/ticket/2752) - if (!this.length) { - log('ajaxSubmit: skipping submit process - no element selected'); - return this; - } - - if (typeof options == 'function') - options = { success: options }; - - var url = $.trim(this.attr('action')); - if (url) { - // clean url (don't include hash vaue) - url = (url.match(/^([^#]+)/)||[])[1]; - } - url = url || window.location.href || ''; - - options = $.extend({ - url: url, - type: this.attr('method') || 'GET' - }, options || {}); - - // hook for manipulating the form data before it is extracted; - // convenient for use with rich editors like tinyMCE or FCKEditor - var veto = {}; - this.trigger('form-pre-serialize', [this, options, veto]); - if (veto.veto) { - log('ajaxSubmit: submit vetoed via form-pre-serialize trigger'); - return this; - } - - // provide opportunity to alter form data before it is serialized - if (options.beforeSerialize && options.beforeSerialize(this, options) === false) { - log('ajaxSubmit: submit aborted via beforeSerialize callback'); - return this; - } - - var a = this.formToArray(options.semantic); - if (options.data) { - options.extraData = options.data; - for (var n in options.data) { - if(options.data[n] instanceof Array) { - for (var k in options.data[n]) - a.push( { name: n, value: options.data[n][k] } ); - } - else - a.push( { name: n, value: options.data[n] } ); - } - } - - // give pre-submit callback an opportunity to abort the submit - if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) { - log('ajaxSubmit: submit aborted via beforeSubmit callback'); - return this; - } - - // fire vetoable 'validate' event - this.trigger('form-submit-validate', [a, this, options, veto]); - if (veto.veto) { - log('ajaxSubmit: submit vetoed via form-submit-validate trigger'); - return this; - } - - var q = $.param(a); - - if (options.type.toUpperCase() == 'GET') { - options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q; - options.data = null; // data is null for 'get' - } - else - options.data = q; // data is the query string for 'post' - - var $form = this, callbacks = []; - if (options.resetForm) callbacks.push(function() { $form.resetForm(); }); - if (options.clearForm) callbacks.push(function() { $form.clearForm(); }); - - // perform a load on the target only if dataType is not provided - if (!options.dataType && options.target) { - var oldSuccess = options.success || function(){}; - callbacks.push(function(data) { - $(options.target).html(data).each(oldSuccess, arguments); - }); - } - else if (options.success) - callbacks.push(options.success); - - options.success = function(data, status) { - for (var i=0, max=callbacks.length; i < max; i++) - callbacks[i].apply(options, [data, status, $form]); - }; - - // are there files to upload? - var files = $('input:file', this).fieldValue(); - var found = false; - for (var j=0; j < files.length; j++) - if (files[j]) - found = true; - - var multipart = false; -// var mp = 'multipart/form-data'; -// multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp); - - // options.iframe allows user to force iframe mode - if (options.iframe || found || multipart) { - // hack to fix Safari hang (thanks to Tim Molendijk for this) - // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d - if (options.closeKeepAlive) - $.get(options.closeKeepAlive, fileUpload); - else - fileUpload(); - } - else{ - $.ajax(options); - } - - // fire 'notify' event - this.trigger('form-submit-notify', [this, options]); - return this; - - - // private function for handling file uploads (hat tip to YAHOO!) - function fileUpload() { - var form = $form[0]; - - if ($(':input[name=submit]', form).length) { - alert('Error: Form elements must not be named "submit".'); - return; - } - - var opts = $.extend({}, $.ajaxSettings, options); - var s = $.extend(true, {}, $.extend(true, {}, $.ajaxSettings), opts); - - var id = 'jqFormIO' + (new Date().getTime()); - var $io = $('<iframe id="' + id + '" name="' + id + '" src="about:blank" />'); - var io = $io[0]; - - $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' }); - - var xhr = { // mock object - aborted: 0, - responseText: null, - responseXML: null, - status: 0, - statusText: 'n/a', - getAllResponseHeaders: function() {}, - getResponseHeader: function() {}, - setRequestHeader: function() {}, - abort: function() { - this.aborted = 1; - $io.attr('src','about:blank'); // abort op in progress - } - }; - - var g = opts.global; - // trigger ajax global events so that activity/block indicators work like normal - if (g && ! $.active++) $.event.trigger("ajaxStart"); - if (g) $.event.trigger("ajaxSend", [xhr, opts]); - - if (s.beforeSend && s.beforeSend(xhr, s) === false) { - s.global && $.active--; - return; - } - if (xhr.aborted) - return; - - var cbInvoked = 0; - var timedOut = 0; - - // add submitting element to data if we know it - var sub = form.clk; - if (sub) { - var n = sub.name; - if (n && !sub.disabled) { - options.extraData = options.extraData || {}; - options.extraData[n] = sub.value; - if (sub.type == "image") { - options.extraData[name+'.x'] = form.clk_x; - options.extraData[name+'.y'] = form.clk_y; - } - } - } - - // take a breath so that pending repaints get some cpu time before the upload starts - setTimeout(function() { - // make sure form attrs are set - var t = $form.attr('target'), a = $form.attr('action'); - - // update form attrs in IE friendly way - form.setAttribute('target',id); - if (form.getAttribute('method') != 'POST') - form.setAttribute('method', 'POST'); - if (form.getAttribute('action') != opts.url) - form.setAttribute('action', opts.url); - - // ie borks in some cases when setting encoding - if (! options.skipEncodingOverride) { - $form.attr({ - encoding: 'multipart/form-data', - enctype: 'multipart/form-data' - }); - } - - // support timout - if (opts.timeout) - setTimeout(function() { timedOut = true; cb(); }, opts.timeout); - - // add "extra" data to form if provided in options - var extraInputs = []; - try { - if (options.extraData) - for (var n in options.extraData) - extraInputs.push( - $('<input type="hidden" name="'+n+'" value="'+options.extraData[n]+'" />') - .appendTo(form)[0]); - - // add iframe to doc and submit the form - $io.appendTo('body'); - io.attachEvent ? io.attachEvent('onload', cb) : io.addEventListener('load', cb, false); - form.submit(); - } - finally { - // reset attrs and remove "extra" input elements - form.setAttribute('action',a); - t ? form.setAttribute('target', t) : $form.removeAttr('target'); - $(extraInputs).remove(); - } - }, 10); - - var domCheckCount = 50; - - function cb() { - if (cbInvoked++) return; - - io.detachEvent ? io.detachEvent('onload', cb) : io.removeEventListener('load', cb, false); - - var ok = true; - try { - if (timedOut) throw 'timeout'; - // extract the server response from the iframe - var data, doc; - - doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document; - - var isXml = opts.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc); - log('isXml='+isXml); - if (!isXml && (doc.body == null || doc.body.innerHTML == '')) { - if (--domCheckCount) { - // in some browsers (Opera) the iframe DOM is not always traversable when - // the onload callback fires, so we loop a bit to accommodate - cbInvoked = 0; - setTimeout(cb, 100); - return; - } - log('Could not access iframe DOM after 50 tries.'); - return; - } - - xhr.responseText = doc.body ? doc.body.innerHTML : null; - xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc; - xhr.getResponseHeader = function(header){ - var headers = {'content-type': opts.dataType}; - return headers[header]; - }; - - if (opts.dataType == 'json' || opts.dataType == 'script') { - // see if user embedded response in textarea - var ta = doc.getElementsByTagName('textarea')[0]; - if (ta) - xhr.responseText = ta.value; - else { - // account for browsers injecting pre around json response - var pre = doc.getElementsByTagName('pre')[0]; - if (pre) - xhr.responseText = pre.innerHTML; - } - } - else if (opts.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) { - xhr.responseXML = toXml(xhr.responseText); - } - data = $.httpData(xhr, opts.dataType); - } - catch(e){ - ok = false; - $.handleError(opts, xhr, 'error', e); - } - - // ordering of these callbacks/triggers is odd, but that's how $.ajax does it - if (ok) { - opts.success(data, 'success'); - if (g) $.event.trigger("ajaxSuccess", [xhr, opts]); - } - if (g) $.event.trigger("ajaxComplete", [xhr, opts]); - if (g && ! --$.active) $.event.trigger("ajaxStop"); - if (opts.complete) opts.complete(xhr, ok ? 'success' : 'error'); - - // clean up - setTimeout(function() { - $io.remove(); - xhr.responseXML = null; - }, 100); - }; - - function toXml(s, doc) { - if (window.ActiveXObject) { - doc = new ActiveXObject('Microsoft.XMLDOM'); - doc.async = 'false'; - doc.loadXML(s); - } - else - doc = (new DOMParser()).parseFromString(s, 'text/xml'); - return (doc && doc.documentElement && doc.documentElement.tagName != 'parsererror') ? doc : null; - }; - }; -}; - -/** - * ajaxForm() provides a mechanism for fully automating form submission. - * - * The advantages of using this method instead of ajaxSubmit() are: - * - * 1: This method will include coordinates for <input type="image" /> elements (if the element - * is used to submit the form). - * 2. This method will include the submit element's name/value data (for the element that was - * used to submit the form). - * 3. This method binds the submit() method to the form for you. - * - * The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely - * passes the options argument along after properly binding events for submit elements and - * the form itself. - */ -$.fn.ajaxForm = function(options) { - return this.ajaxFormUnbind().bind('submit.form-plugin', function() { - $(this).ajaxSubmit(options); - return false; - }).bind('click.form-plugin', function(e) { - var $el = $(e.target); - if (!($el.is(":submit,input:image"))) { - return; - } - var form = this; - form.clk = e.target; - if (e.target.type == 'image') { - if (e.offsetX != undefined) { - form.clk_x = e.offsetX; - form.clk_y = e.offsetY; - } else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin - var offset = $el.offset(); - form.clk_x = e.pageX - offset.left; - form.clk_y = e.pageY - offset.top; - } else { - form.clk_x = e.pageX - e.target.offsetLeft; - form.clk_y = e.pageY - e.target.offsetTop; - } - } - // clear form vars - setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 10); - }); -}; - -// ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm -$.fn.ajaxFormUnbind = function() { - return this.unbind('submit.form-plugin click.form-plugin'); -}; - -/** - * formToArray() gathers form element data into an array of objects that can - * be passed to any of the following ajax functions: $.get, $.post, or load. - * Each object in the array has both a 'name' and 'value' property. An example of - * an array for a simple login form might be: - * - * [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ] - * - * It is this array that is passed to pre-submit callback functions provided to the - * ajaxSubmit() and ajaxForm() methods. - */ -$.fn.formToArray = function(semantic) { - var a = []; - if (this.length == 0) return a; - - var form = this[0]; - var els = semantic ? form.getElementsByTagName('*') : form.elements; - if (!els) return a; - for(var i=0, max=els.length; i < max; i++) { - var el = els[i]; - var n = el.name; - if (!n) continue; - - if (semantic && form.clk && el.type == "image") { - // handle image inputs on the fly when semantic == true - if(!el.disabled && form.clk == el) { - a.push({name: n, value: $(el).val()}); - a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y}); - } - continue; - } - - var v = $.fieldValue(el, true); - if (v && v.constructor == Array) { - for(var j=0, jmax=v.length; j < jmax; j++) - a.push({name: n, value: v[j]}); - } - else if (v !== null && typeof v != 'undefined') - a.push({name: n, value: v}); - } - - if (!semantic && form.clk) { - // input type=='image' are not found in elements array! handle it here - var $input = $(form.clk), input = $input[0], n = input.name; - if (n && !input.disabled && input.type == 'image') { - a.push({name: n, value: $input.val()}); - a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y}); - } - } - return a; -}; - -/** - * Serializes form data into a 'submittable' string. This method will return a string - * in the format: name1=value1&name2=value2 - */ -$.fn.formSerialize = function(semantic) { - //hand off to jQuery.param for proper encoding - return $.param(this.formToArray(semantic)); -}; - -/** - * Serializes all field elements in the jQuery object into a query string. - * This method will return a string in the format: name1=value1&name2=value2 - */ -$.fn.fieldSerialize = function(successful) { - var a = []; - this.each(function() { - var n = this.name; - if (!n) return; - var v = $.fieldValue(this, successful); - if (v && v.constructor == Array) { - for (var i=0,max=v.length; i < max; i++) - a.push({name: n, value: v[i]}); - } - else if (v !== null && typeof v != 'undefined') - a.push({name: this.name, value: v}); - }); - //hand off to jQuery.param for proper encoding - return $.param(a); -}; - -/** - * Returns the value(s) of the element in the matched set. For example, consider the following form: - * - * <form><fieldset> - * <input name="A" type="text" /> - * <input name="A" type="text" /> - * <input name="B" type="checkbox" value="B1" /> - * <input name="B" type="checkbox" value="B2"/> - * <input name="C" type="radio" value="C1" /> - * <input name="C" type="radio" value="C2" /> - * </fieldset></form> - * - * var v = $(':text').fieldValue(); - * // if no values are entered into the text inputs - * v == ['',''] - * // if values entered into the text inputs are 'foo' and 'bar' - * v == ['foo','bar'] - * - * var v = $(':checkbox').fieldValue(); - * // if neither checkbox is checked - * v === undefined - * // if both checkboxes are checked - * v == ['B1', 'B2'] - * - * var v = $(':radio').fieldValue(); - * // if neither radio is checked - * v === undefined - * // if first radio is checked - * v == ['C1'] - * - * The successful argument controls whether or not the field element must be 'successful' - * (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls). - * The default value of the successful argument is true. If this value is false the value(s) - * for each element is returned. - * - * Note: This method *always* returns an array. If no valid value can be determined the - * array will be empty, otherwise it will contain one or more values. - */ -$.fn.fieldValue = function(successful) { - for (var val=[], i=0, max=this.length; i < max; i++) { - var el = this[i]; - var v = $.fieldValue(el, successful); - if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) - continue; - v.constructor == Array ? $.merge(val, v) : val.push(v); - } - return val; -}; - -/** - * Returns the value of the field element. - */ -$.fieldValue = function(el, successful) { - var n = el.name, t = el.type, tag = el.tagName.toLowerCase(); - if (typeof successful == 'undefined') successful = true; - - if (successful && (!n || el.disabled || t == 'reset' || t == 'button' || - (t == 'checkbox' || t == 'radio') && !el.checked || - (t == 'submit' || t == 'image') && el.form && el.form.clk != el || - tag == 'select' && el.selectedIndex == -1)) - return null; - - if (tag == 'select') { - var index = el.selectedIndex; - if (index < 0) return null; - var a = [], ops = el.options; - var one = (t == 'select-one'); - var max = (one ? index+1 : ops.length); - for(var i=(one ? index : 0); i < max; i++) { - var op = ops[i]; - if (op.selected) { - var v = op.value; - if (!v) // extra pain for IE... - v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value; - if (one) return v; - a.push(v); - } - } - return a; - } - return el.value; -}; - -/** - * Clears the form data. Takes the following actions on the form's input fields: - * - input text fields will have their 'value' property set to the empty string - * - select elements will have their 'selectedIndex' property set to -1 - * - checkbox and radio inputs will have their 'checked' property set to false - * - inputs of type submit, button, reset, and hidden will *not* be effected - * - button elements will *not* be effected - */ -$.fn.clearForm = function() { - return this.each(function() { - $('input,select,textarea', this).clearFields(); - }); -}; - -/** - * Clears the selected form elements. - */ -$.fn.clearFields = $.fn.clearInputs = function() { - return this.each(function() { - var t = this.type, tag = this.tagName.toLowerCase(); - if (t == 'text' || t == 'password' || tag == 'textarea') - this.value = ''; - else if (t == 'checkbox' || t == 'radio') - this.checked = false; - else if (tag == 'select') - this.selectedIndex = -1; - }); -}; - -/** - * Resets the form data. Causes all form elements to be reset to their original value. - */ -$.fn.resetForm = function() { - return this.each(function() { - // guard against an input with the name of 'reset' - // note that IE reports the reset function as an 'object' - if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) - this.reset(); - }); -}; - -/** - * Enables or disables any matching elements. - */ -$.fn.enable = function(b) { - if (b == undefined) b = true; - return this.each(function() { - this.disabled = !b; - }); -}; - -/** - * Checks/unchecks any matching checkboxes or radio buttons and - * selects/deselects and matching option elements. - */ -$.fn.selected = function(select) { - if (select == undefined) select = true; - return this.each(function() { - var t = this.type; - if (t == 'checkbox' || t == 'radio') - this.checked = select; - else if (this.tagName.toLowerCase() == 'option') { - var $sel = $(this).parent('select'); - if (select && $sel[0] && $sel[0].type == 'select-one') { - // deselect all other options - $sel.find('option').selected(false); - } - this.selected = select; - } - }); -}; - -// helper fn for console logging -// set $.fn.ajaxSubmit.debug to true to enable debug logging -function log() { - if ($.fn.ajaxSubmit.debug && window.console && window.console.log) - window.console.log('[jquery.form] ' + Array.prototype.join.call(arguments,'')); -}; - -})(jQuery); diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.i18n.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.i18n.js.svn-base deleted file mode 100644 index 0a155a318388e97e8493d60f5aa02652ac824f5f..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.i18n.js.svn-base +++ /dev/null @@ -1,133 +0,0 @@ -/* - * jQuery i18n plugin - * @requires jQuery v1.1 or later - * - * Examples at: http://recurser.com/articles/2008/02/21/jquery-i18n-translation-plugin/ - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - * Based on 'javascript i18n that almost doesn't suck' by markos - * http://markos.gaivo.net/blog/?p=100 - * - * Revision: $Id$ - * Version: 1.0.0 Feb-10-2008 - */ - (function($) { -/** - * i18n provides a mechanism for translating strings using a jscript dictionary. - * - */ - - -/* - * i18n property list - */ -$.i18n = { - -/** - * setDictionary() - * Initialise the dictionary and translate nodes - * - * @param property_list i18n_dict : The dictionary to use for translation - */ - setDictionary: function(i18n_dict) { - i18n_dict = i18n_dict; - }, - -/** - * _() - * The actual translation function. Looks the given string up in the - * dictionary and returns the translation if one exists. If a translation - * is not found, returns the original word - * - * @param string str : The string to translate - * @param property_list params : params for using printf() on the string - * @return string : Translated word - * - */ - _: function (str, params) { - var transl = str; - if (i18n_dict&& i18n_dict[str]) { - transl = i18n_dict[str]; - } - return this.printf(transl, params); - }, - -/** - * toEntity() - * Change non-ASCII characters to entity representation - * - * @param string str : The string to transform - * @return string result : Original string with non-ASCII content converted to entities - * - */ - toEntity: function (str) { - var result = ''; - for (var i=0;i<str.length; i++) { - if (str.charCodeAt(i) > 128) - result += "&#"+str.charCodeAt(i)+";"; - else - result += str.charAt(i); - } - return result; - }, - -/** - * stripStr() - * - * @param string str : The string to strip - * @return string result : Stripped string - * - */ - stripStr: function(str) { - return str.replace(/^\s*/, "").replace(/\s*$/, ""); - }, - -/** - * stripStrML() - * - * @param string str : The multi-line string to strip - * @return string result : Stripped string - * - */ - stripStrML: function(str) { - // Split because m flag doesn't exist before JS1.5 and we need to - // strip newlines anyway - var parts = str.split('\n'); - for (var i=0; i<parts.length; i++) - parts[i] = stripStr(parts[i]); - - // Don't join with empty strings, because it "concats" words - // And strip again - return stripStr(parts.join(" ")); - }, - -/* - * printf() - * C-printf like function, which substitutes %s with parameters - * given in list. %%s is used to escape %s. - * - * Doesn't work in IE5.0 (splice) - * - * @param string S : string to perform printf on. - * @param string L : Array of arguments for printf() - */ - printf: function(S, L) { - if (!L) return S; - - var nS = ""; - var tS = S.split("%s"); - - for(var i=0; i<L.length; i++) { - if (tS[i].lastIndexOf('%') == tS[i].length-1 && i != L.length-1) - tS[i] += "s"+tS.splice(i+1,1)[0]; - nS += tS[i] + L[i]; - } - return nS + tS[tS.length-1]; - } - -}; - - -})(jQuery); diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.openid.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.openid.js.svn-base deleted file mode 100644 index a1316c191d10d346b546536cb09e595e58324cba..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.openid.js.svn-base +++ /dev/null @@ -1,171 +0,0 @@ -/* -openid login boxes -*/ -var providers_large = { - google: { - name: 'Google', - url: 'https://www.google.com/accounts/o8/id' - }, - yahoo: { - name: 'Yahoo', - url: 'http://yahoo.com/' - }, - aol: { - name: 'AOL', - label: 'Enter your AOL screenname.', - url: 'http://openid.aol.com/{username}' - }, - openid: { - name: 'OpenID', - label: 'Enter your OpenID.', - url: 'http://' - } -}; -var providers_small = { - myopenid: { - name: 'MyOpenID', - label: 'Enter your MyOpenID username.', - url: 'http://{username}.myopenid.com/' - }, - livejournal: { - name: 'LiveJournal', - label: 'Enter your Livejournal username.', - url: 'http://{username}.livejournal.com/' - }, - flickr: { - name: 'Flickr', - label: 'Enter your Flickr username.', - url: 'http://flickr.com/{username}/' - }, - technorati: { - name: 'Technorati', - label: 'Enter your Technorati username.', - url: 'http://technorati.com/people/technorati/{username}/' - }, - wordpress: { - name: 'Wordpress', - label: 'Enter your Wordpress.com username.', - url: 'http://{username}.wordpress.com/' - }, - blogger: { - name: 'Blogger', - label: 'Your Blogger account', - url: 'http://{username}.blogspot.com/' - }, - verisign: { - name: 'Verisign', - label: 'Your Verisign username', - url: 'http://{username}.pip.verisignlabs.com/' - }, - verisign: { - name: 'Verisign', - label: 'Your Verisign username', - url: 'http://{username}.pip.verisignlabs.com/' - }, - claimid: { - name: 'ClaimID', - label: 'Your ClaimID username', - url: 'http://claimid.com/{username}' - } -}; -var providers = $.extend({}, providers_large, providers_small); - -var openid = { - - cookie_expires: 6*30, // 6 months. - cookie_name: 'openid_provider', - cookie_path: '/', - - img_path: '/media/images/openid/', - - input_id: null, - provider_url: null, - - init: function(input_id) { - - var openid_btns = $('#openid_btns'); - this.input_id = input_id; - - $('#openid_choice').show(); - //$('#openid_input_area').empty(); - - // add box for each provider - for (id in providers_large) { - openid_btns.append(this.getBoxHTML(providers_large[id], 'large', '.gif')); - } - if (providers_small) { - openid_btns.append('<br/>'); - for (id in providers_small) { - openid_btns.append(this.getBoxHTML(providers_small[id], 'small', '.png')); - } - } - - var box_id = this.readCookie(); - if (box_id) { - this.signin(box_id, true); - } - }, - getBoxHTML: function(provider, box_size, image_ext) { - - var box_id = provider["name"].toLowerCase(); - return '<a title="'+provider["name"]+'" href="javascript: openid.signin(\''+ box_id +'\');"' + - ' style="background: #FFF url(' + this.img_path + box_id + image_ext+') no-repeat center center" ' + 'class="' + box_id + ' openid_' + box_size + '_btn"></a>'; - - }, - /* Provider image click */ - signin: function(box_id, onload) { - var provider = providers[box_id]; - if (! provider) { - return; - } - this.highlight(box_id); - this.setCookie(box_id); - - $('#'+this.input_id).val(provider['url']); - var input = $('#'+this.input_id); - if(document.selection){ - var r = document.all.openid_url.createTextRange(); - var res = r.findText("{username}"); - if(res) - r.select(); - - } - else { - var text = input.val(); - var searchText = "{username}"; - var posStart = text.indexOf(searchText); - if(posStart > -1){ - input.focus(); - document.getElementById(this.input_id).setSelectionRange(posStart, posStart + searchText.length); - } - } - }, - - highlight: function (box_id) { - // remove previous highlight. - var highlight = $('#openid_highlight'); - if (highlight) { - highlight.replaceWith($('#openid_highlight a')[0]); - } - // add new highlight. - $('.'+box_id).wrap('<div id="openid_highlight"></div>'); - }, - - setCookie: function (value) { - var date = new Date(); - date.setTime(date.getTime()+(this.cookie_expires*24*60*60*1000)); - var expires = "; expires="+date.toGMTString(); - document.cookie = this.cookie_name+"="+value+expires+"; path=" + this.cookie_path; - }, - - readCookie: function () { - var nameEQ = this.cookie_name + "="; - var ca = document.cookie.split(';'); - for(var i=0;i < ca.length;i++) { - var c = ca[i]; - while (c.charAt(0)==' ') c = c.substring(1,c.length); - if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); - } - return null; - } -}; diff --git a/forum/skins/default/media/js/.svn/text-base/jquery.validate.pack.js.svn-base b/forum/skins/default/media/js/.svn/text-base/jquery.validate.pack.js.svn-base deleted file mode 100644 index 4913450045cf39405820026b71767ebd487162ab..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/jquery.validate.pack.js.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -/* - * jQuery validation plug-in 1.5 - * - * http://bassistance.de/jquery-plugins/jquery-plugin-validation/ - * http://docs.jquery.com/Plugins/Validation - * - * Copyright (c) 2006 - 2008 Jörn Zaefferer - * - * $Id: jquery.validate.js 5952 2008-11-25 19:12:30Z joern.zaefferer $ - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - */ -eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(7($){$.G($.2J,{1y:7(c){l(!6.E){c&&c.2g&&2T.1q&&1q.4Z("3r 2y, 4B\'t 1y, 6d 3r");8}p b=$.16(6[0],\'u\');l(b){8 b}b=1V $.u(c,6[0]);$.16(6[0],\'u\',b);l(b.q.3s){6.4I("1Y, 4E").1t(".4w").4p(7(){b.35=v});6.30(7(a){l(b.q.2g)a.5X();7 24(){l(b.q.3S){b.q.3S.12(b,b.V);8 H}8 v}l(b.35){b.35=H;8 24()}l(b.K()){l(b.1g){b.1v=v;8 H}8 24()}1c{b.2i();8 H}})}8 b},M:7(){l($(6[0]).2H(\'K\')){8 6.1y().K()}1c{p b=H;p a=$(6[0].K).1y();6.O(7(){b|=a.L(6)});8 b}},4L:7(a){p b={},$L=6;$.O(a.1H(/\\s/),7(){b[6]=$L.1G(6);$L.4G(6)});8 b},1b:7(h,k){p f=6[0];l(h){p i=$.16(f.K,\'u\').q;p d=i.1b;p c=$.u.2s(f);2q(h){1e"2o":$.G(c,$.u.1S(k));d[f.r]=c;l(k.J)i.J[f.r]=$.G(i.J[f.r],k.J);31;1e"63":l(!k){R d[f.r];8 c}p e={};$.O(k.1H(/\\s/),7(a,b){e[b]=c[b];R c[b]});8 e}}p g=$.u.3x($.G({},$.u.40(f),$.u.3W(f),$.u.3T(f),$.u.2s(f)),f);l(g.13){p j=g.13;R g.13;g=$.G({13:j},g)}8 g},Y:7(t){8 6.5A(6.2o(t).5w())}});$.G($.5t[":"],{5p:7(a){8!$.2b(a.T)},5m:7(a){8!!$.2b(a.T)},5i:7(a){8!a.3U}});$.1a=7(c,b){l(P.E==1)8 7(){p a=$.48(P);a.52(c);8 $.1a.1I(6,a)};l(P.E>2&&b.2m!=3A){b=$.48(P).4O(1)}l(b.2m!=3A){b=[b]}$.O(b,7(i,n){c=c.3u(1V 3t("\\\\{"+i+"\\\\}","g"),n)});8 c};$.u=7(b,a){6.q=$.G({},$.u.2D,b);6.V=a;6.3q()};$.G($.u,{2D:{J:{},21:{},1b:{},18:"3l",2B:"4H",2i:v,3k:$([]),2A:$([]),3s:v,3j:[],3h:H,4F:7(a){6.3g=a;l(6.q.4D&&!6.4C){6.q.1U&&6.q.1U.12(6,a,6.q.18);6.1E(a).2v()}},4z:7(a){l(!6.1u(a)&&(a.r Z 6.1j||!6.F(a))){6.L(a)}},4t:7(a){l(a.r Z 6.1j||a==6.4q){6.L(a)}},6n:7(a){l(a.r Z 6.1j)6.L(a)},37:7(a,b){$(a).2p(b)},1U:7(a,b){$(a).36(b)}},6g:7(a){$.G($.u.2D,a)},J:{13:"6e 4k 2H 13.",1R:"I 38 6 4k.",1F:"I N a M 1F 65.",1k:"I N a M 62.",1l:"I N a M 1l.",2a:"I N a M 1l (61).",20:"45 44 42 2E 5T¼5S 5R 2E.",1n:"I N a M 1n.",28:"45 44 42 5N 5M 2E.",1O:"I N 5G 1O",2d:"I N a M 5E 5C 1n.",3P:"I N 3O 5v T 5u.",3L:"I N a T 5q a M 5o.",15:$.1a("I N 3K 5n 2O {0} 2R."),1r:$.1a("I N 5k 5h {0} 2R."),2h:$.1a("I N a T 3E {0} 3R {1} 2R 5c."),27:$.1a("I N a T 3E {0} 3R {1}."),1m:$.1a("I N a T 5a 2O 47 43 3D {0}."),1w:$.1a("I N a T 51 2O 47 43 3D {0}.")},4f:H,4Y:{3q:7(){6.26=$(6.q.2A);6.3C=6.26.E&&6.26||$(6.V);6.2k=$(6.q.3k).2o(6.q.2A);6.1j={};6.4S={};6.1g=0;6.1d={};6.1f={};6.1J();p f=(6.21={});$.O(6.q.21,7(d,c){$.O(c.1H(/\\s/),7(a,b){f[b]=d})});p e=6.q.1b;$.O(e,7(b,a){e[b]=$.u.1S(a)});7 1p(a){p b=$.16(6[0].K,"u");b.q["3z"+a.1o]&&b.q["3z"+a.1o].12(b,6[0])}$(6.V).1p("3y 3w 4N",":2F, :4M, :4K, 23, 4J",1p).1p("4p",":3p, :3o",1p);l(6.q.3n)$(6.V).3m("1f-K.1y",6.q.3n)},K:7(){6.3v();$.G(6.1j,6.1z);6.1f=$.G({},6.1z);l(!6.M())$(6.V).2C("1f-K",[6]);6.1h();8 6.M()},3v:7(){6.2G();Q(p i=0,11=(6.1Z=6.11());11[i];i++){6.2n(11[i])}8 6.M()},L:7(a){a=6.2z(a);6.4q=a;6.2N(a);6.1Z=$(a);p b=6.2n(a);l(b){R 6.1f[a.r]}1c{6.1f[a.r]=v}l(!6.3i()){6.14.Y(6.2k)}6.1h();8 b},1h:7(b){l(b){$.G(6.1z,b);6.S=[];Q(p c Z b){6.S.Y({19:b[c],L:6.1X(c)[0]})}6.1i=$.3f(6.1i,7(a){8!(a.r Z b)})}6.q.1h?6.q.1h.12(6,6.1z,6.S):6.3e()},2x:7(){l($.2J.2x)$(6.V).2x();6.1j={};6.2G();6.2W();6.11().36(6.q.18)},3i:7(){8 6.2c(6.1f)},2c:7(a){p b=0;Q(p i Z a)b++;8 b},2W:7(){6.2w(6.14).2v()},M:7(){8 6.3d()==0},3d:7(){8 6.S.E},2i:7(){l(6.q.2i){3c{$(6.3b()||6.S.E&&6.S[0].L||[]).1t(":4A").3a()}39(e){}}},3b:7(){p a=6.3g;8 a&&$.3f(6.S,7(n){8 n.L.r==a.r}).E==1&&a},11:7(){p a=6,2u={};8 $([]).2o(6.V.11).1t(":1Y").1D(":30, :1J, :4y, [4x]").1D(6.q.3j).1t(7(){!6.r&&a.q.2g&&2T.1q&&1q.3l("%o 4v 3K r 4u",6);l(6.r Z 2u||!a.2c($(6).1b()))8 H;2u[6.r]=v;8 v})},2z:7(a){8 $(a)[0]},2t:7(){8 $(6.q.2B+"."+6.q.18,6.3C)},1J:7(){6.1i=[];6.S=[];6.1z={};6.1C=$([]);6.14=$([]);6.1v=H;6.1Z=$([])},2G:7(){6.1J();6.14=6.2t().Y(6.2k)},2N:7(a){6.1J();6.14=6.1E(a)},2n:7(d){d=6.2z(d);l(6.1u(d)){d=6.1X(d.r)[0]}p a=$(d).1b();p c=H;Q(W Z a){p b={W:W,2r:a[W]};3c{p f=$.u.1P[W].12(6,d.T,d,b.2r);l(f=="1T-1Q"){c=v;6m}c=H;l(f=="1d"){6.14=6.14.1D(6.1E(d));8}l(!f){6.4o(d,b);8 H}}39(e){6.q.2g&&2T.1q&&1q.6l("6k 6j 6i 6h L "+d.4n+", 2n 3O \'"+b.W+"\' W");6f e;}}l(c)8;l(6.2c(a))6.1i.Y(d);8 v},4l:7(a,b){l(!$.1x)8;p c=6.q.33?$(a).1x()[6.q.33]:$(a).1x();8 c&&c.J&&c.J[b]},4j:7(a,b){p m=6.q.J[a];8 m&&(m.2m==4i?m:m[b])},4h:7(){Q(p i=0;i<P.E;i++){l(P[i]!==2l)8 P[i]}8 2l},2j:7(a,b){8 6.4h(6.4j(a.r,b),6.4l(a,b),!6.q.3h&&a.6c||2l,$.u.J[b],"<4g>6b: 6a 19 68 Q "+a.r+"</4g>")},4o:7(b,a){p c=6.2j(b,a.W);l(17 c=="7")c=c.12(6,a.2r,b);6.S.Y({19:c,L:b});6.1z[b.r]=c;6.1j[b.r]=c},2w:7(a){l(6.q.1W)a.Y(a.64(6.q.1W));8 a},3e:7(){Q(p i=0;6.S[i];i++){p a=6.S[i];6.q.37&&6.q.37.12(6,a.L,6.q.18);6.2Z(a.L,a.19)}l(6.S.E){6.1C.Y(6.2k)}l(6.q.1s){Q(p i=0;6.1i[i];i++){6.2Z(6.1i[i])}}l(6.q.1U){Q(p i=0,11=6.4e();11[i];i++){6.q.1U.12(6,11[i],6.q.18)}}6.14=6.14.1D(6.1C);6.2W();6.2w(6.1C).4d()},4e:7(){8 6.1Z.1D(6.4c())},4c:7(){8 $(6.S).4b(7(){8 6.L})},2Z:7(a,c){p b=6.1E(a);l(b.E){b.36().2p(6.q.18);b.1G("4a")&&b.49(c)}1c{b=$("<"+6.q.2B+"/>").1G({"Q":6.2Y(a),4a:v}).2p(6.q.18).49(c||"");l(6.q.1W){b=b.2v().4d().60("<"+6.q.1W+">").5Z()}l(!6.26.5Y(b).E)6.q.46?6.q.46(b,$(a)):b.5W(a)}l(!c&&6.q.1s){b.2F("");17 6.q.1s=="1B"?b.2p(6.q.1s):6.q.1s(b)}6.1C.Y(b)},1E:7(a){8 6.2t().1t("[@Q=\'"+6.2Y(a)+"\']")},2Y:7(a){8 6.21[a.r]||(6.1u(a)?a.r:a.4n||a.r)},1u:7(a){8/3p|3o/i.U(a.1o)},1X:7(d){p c=6.V;8 $(5V.5U(d)).4b(7(a,b){8 b.K==c&&b.r==d&&b||41})},1K:7(a,b){2q(b.3Z.3Y()){1e\'23\':8 $("3X:2y",b).E;1e\'1Y\':l(6.1u(b))8 6.1X(b.r).1t(\':3U\').E}8 a.E},3B:7(b,a){8 6.2X[17 b]?6.2X[17 b](b,a):v},2X:{"5Q":7(b,a){8 b},"1B":7(b,a){8!!$(b,a.K).E},"7":7(b,a){8 b(a)}},F:7(a){8!$.u.1P.13.12(6,$.2b(a.T),a)&&"1T-1Q"},3V:7(a){l(!6.1d[a.r]){6.1g++;6.1d[a.r]=v}},4s:7(a,b){6.1g--;l(6.1g<0)6.1g=0;R 6.1d[a.r];l(b&&6.1g==0&&6.1v&&6.K()){$(6.V).30()}1c l(!b&&6.1g==0&&6.1v){$(6.V).2C("1f-K",[6])}},2f:7(a){8 $.16(a,"2f")||$.16(a,"2f",5O={2K:41,M:v,19:6.2j(a,"1R")})}},1M:{13:{13:v},1F:{1F:v},1k:{1k:v},1l:{1l:v},2a:{2a:v},20:{20:v},1n:{1n:v},28:{28:v},1O:{1O:v},2d:{2d:v}},3Q:7(a,b){a.2m==4i?6.1M[a]=b:$.G(6.1M,a)},3W:7(b){p a={};p c=$(b).1G(\'5K\');c&&$.O(c.1H(\' \'),7(){l(6 Z $.u.1M){$.G(a,$.u.1M[6])}});8 a},3T:7(c){p a={};p d=$(c);Q(W Z $.u.1P){p b=d.1G(W);l(b){a[W]=b}}l(a.15&&/-1|5J|5H/.U(a.15)){R a.15}8 a},40:7(a){l(!$.1x)8{};p b=$.16(a.K,\'u\').q.33;8 b?$(a).1x()[b]:$(a).1x()},2s:7(b){p a={};p c=$.16(b.K,\'u\');l(c.q.1b){a=$.u.1S(c.q.1b[b.r])||{}}8 a},3x:7(d,e){$.O(d,7(c,b){l(b===H){R d[c];8}l(b.2V||b.2e){p a=v;2q(17 b.2e){1e"1B":a=!!$(b.2e,e.K).E;31;1e"7":a=b.2e.12(e,e);31}l(a){d[c]=b.2V!==2l?b.2V:v}1c{R d[c]}}});$.O(d,7(a,b){d[a]=$.5F(b)?b(e):b});$.O([\'1r\',\'15\',\'1w\',\'1m\'],7(){l(d[6]){d[6]=2U(d[6])}});$.O([\'2h\',\'27\'],7(){l(d[6]){d[6]=[2U(d[6][0]),2U(d[6][1])]}});l($.u.4f){l(d.1w&&d.1m){d.27=[d.1w,d.1m];R d.1w;R d.1m}l(d.1r&&d.15){d.2h=[d.1r,d.15];R d.1r;R d.15}}l(d.J){R d.J}8 d},1S:7(a){l(17 a=="1B"){p b={};$.O(a.1H(/\\s/),7(){b[6]=v});a=b}8 a},5D:7(c,a,b){$.u.1P[c]=a;$.u.J[c]=b;l(a.E<3){$.u.3Q(c,$.u.1S(c))}},1P:{13:7(b,c,a){l(!6.3B(a,c))8"1T-1Q";2q(c.3Z.3Y()){1e\'23\':p d=$("3X:2y",c);8 d.E>0&&(c.1o=="23-5B"||($.2S.2Q&&!(d[0].5z[\'T\'].5y)?d[0].2F:d[0].T).E>0);1e\'1Y\':l(6.1u(c))8 6.1K(b,c)>0;5x:8 $.2b(b).E>0}},1R:7(e,h,d){l(6.F(h))8"1T-1Q";p g=6.2f(h);l(!6.q.J[h.r])6.q.J[h.r]={};6.q.J[h.r].1R=17 g.19=="7"?g.19(e):g.19;d=17 d=="1B"&&{1k:d}||d;l(g.2K!==e){g.2K=e;p i=6;6.3V(h);p f={};f[h.r]=e;$.2P($.G(v,{1k:d,3N:"2L",3M:"1y"+h.r,5s:"5r",16:f,1s:7(a){l(a){p b=i.1v;i.2N(h);i.1v=b;i.1i.Y(h);i.1h()}1c{p c={};c[h.r]=a||i.2j(h,"1R");i.1h(c)}g.M=a;i.4s(h,a)}},d));8"1d"}1c l(6.1d[h.r]){8"1d"}8 g.M},1r:7(b,c,a){8 6.F(c)||6.1K(b,c)>=a},15:7(b,c,a){8 6.F(c)||6.1K(b,c)<=a},2h:7(b,d,a){p c=6.1K(b,d);8 6.F(d)||(c>=a[0]&&c<=a[1])},1w:7(b,c,a){8 6.F(c)||b>=a},1m:7(b,c,a){8 6.F(c)||b<=a},27:7(b,c,a){8 6.F(c)||(b>=a[0]&&b<=a[1])},1F:7(a,b){8 6.F(b)||/^((([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^X`{\\|}~]|[\\A-\\C\\w-\\B\\x-\\y])+(\\.([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^X`{\\|}~]|[\\A-\\C\\w-\\B\\x-\\y])+)*)|((\\3J)((((\\29|\\1N)*(\\2M\\3I))?(\\29|\\1N)+)?(([\\3H-\\5l\\3G\\3F\\5j-\\5I\\4r]|\\5g|[\\5L-\\5f]|[\\5e-\\5d]|[\\A-\\C\\w-\\B\\x-\\y])|(\\\\([\\3H-\\1N\\3G\\3F\\2M-\\4r]|[\\A-\\C\\w-\\B\\x-\\y]))))*(((\\29|\\1N)*(\\2M\\3I))?(\\29|\\1N)+)?(\\3J)))@((([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])))\\.)+(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|[\\A-\\C\\w-\\B\\x-\\y])))\\.?$/i.U(a)},1k:7(a,b){8 6.F(b)||/^(5P?|5b):\\/\\/(((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:)*@)?(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5]))|((([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])))\\.)+(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|[\\A-\\C\\w-\\B\\x-\\y])))\\.?)(:\\d*)?)(\\/((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)+(\\/(([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)*)*)?)?(\\?((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|[\\59-\\58]|\\/|\\?)*)?(\\#((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|\\/|\\?)*)?$/i.U(a)},1l:7(a,b){8 6.F(b)||!/57|56/.U(1V 55(a))},2a:7(a,b){8 6.F(b)||/^\\d{4}[\\/-]\\d{1,2}[\\/-]\\d{1,2}$/.U(a)},20:7(a,b){8 6.F(b)||/^\\d\\d?\\.\\d\\d?\\.\\d\\d\\d?\\d?$/.U(a)},1n:7(a,b){8 6.F(b)||/^-?(?:\\d+|\\d{1,3}(?:,\\d{3})+)(?:\\.\\d+)?$/.U(a)},28:7(a,b){8 6.F(b)||/^-?(?:\\d+|\\d{1,3}(?:\\.\\d{3})+)(?:,\\d+)?$/.U(a)},1O:7(a,b){8 6.F(b)||/^\\d+$/.U(a)},2d:7(b,e){l(6.F(e))8"1T-1Q";l(/[^0-9-]+/.U(b))8 H;p a=0,d=0,22=H;b=b.3u(/\\D/g,"");Q(n=b.E-1;n>=0;n--){p c=b.54(n);p d=53(c,10);l(22){l((d*=2)>9)d-=9}a+=d;22=!22}8(a%10)==0},3L:7(b,c,a){a=17 a=="1B"?a:"66|67?g|50";8 6.F(c)||b.69(1V 3t(".("+a+")$","i"))},3P:7(b,c,a){8 b==$(a).4X()}}})})(2I);(7($){p c=$.2P;p d={};$.2P=7(a){a=$.G(a,$.G({},$.4W,a));p b=a.3M;l(a.3N=="2L"){l(d[b]){d[b].2L()}8(d[b]=c.1I(6,P))}8 c.1I(6,P)}})(2I);(7($){$.O({3a:\'3y\',4V:\'3w\'},7(b,a){$.1A.32[a]={4U:7(){l($.2S.2Q)8 H;6.4T(b,$.1A.32[a].34,v)},4R:7(){l($.2S.2Q)8 H;6.4Q(b,$.1A.32[a].34,v)},34:7(e){P[0]=$.1A.38(e);P[0].1o=a;8 $.1A.24.1I(6,P)}}});$.G($.2J,{1p:7(d,e,c){8 6.3m(d,7(a){p b=$(a.4m);l(b.2H(e)){8 c.1I(b,P)}})},4P:7(a,b){8 6.2C(a,[$.1A.38({1o:a,4m:b})])}})})(2I);',62,396,'||||||this|function|return|||||||||||||if||||var|settings|name|||validator|true|uF900|uFDF0|uFFEF||u00A0|uFDCF|uD7FF||length|optional|extend|false|Please|messages|form|element|valid|enter|each|arguments|for|delete|errorList|value|test|currentForm|method|_|push|in||elements|call|required|toHide|maxlength|data|typeof|errorClass|message|format|rules|else|pending|case|invalid|pendingRequest|showErrors|successList|submitted|url|date|max|number|type|delegate|console|minlength|success|filter|checkable|formSubmitted|min|metadata|validate|errorMap|event|string|toShow|not|errorsFor|email|attr|split|apply|reset|getLength|da|classRuleSettings|x09|digits|methods|mismatch|remote|normalizeRule|dependency|unhighlight|new|wrapper|findByName|input|currentElements|dateDE|groups|bEven|select|handle||labelContainer|range|numberDE|x20|dateISO|trim|objectLength|creditcard|depends|previousValue|debug|rangelength|focusInvalid|defaultMessage|containers|undefined|constructor|check|add|addClass|switch|parameters|staticRules|errors|rulesCache|hide|addWrapper|resetForm|selected|clean|errorLabelContainer|errorElement|triggerHandler|defaults|ein|text|prepareForm|is|jQuery|fn|old|abort|x0d|prepareElement|than|ajax|msie|characters|browser|window|Number|param|hideErrors|dependTypes|idOrName|showLabel|submit|break|special|meta|handler|cancelSubmit|removeClass|highlight|fix|catch|focus|findLastActive|try|size|defaultShowErrors|grep|lastActive|ignoreTitle|numberOfInvalids|ignore|errorContainer|error|bind|invalidHandler|checkbox|radio|init|nothing|onsubmit|RegExp|replace|checkForm|focusout|normalizeRules|focusin|on|Array|depend|errorContext|to|between|x0c|x0b|x01|x0a|x22|no|accept|port|mode|the|equalTo|addClassRules|and|submitHandler|attributeRules|checked|startRequest|classRules|option|toLowerCase|nodeName|metadataRules|null|Sie|equal|geben|Bitte|errorPlacement|or|makeArray|html|generated|map|invalidElements|show|validElements|autoCreateRanges|strong|findDefined|String|customMessage|field|customMetaMessage|target|id|formatAndAdd|click|lastElement|x7f|stopRequest|onkeyup|assigned|has|cancel|disabled|image|onfocusout|visible|can|blockFocusCleanup|focusCleanup|button|onfocusin|removeAttr|label|find|textarea|file|removeAttrs|password|keyup|slice|triggerEvent|removeEventListener|teardown|valueCache|addEventListener|setup|blur|ajaxSettings|val|prototype|warn|gif|greater|unshift|parseInt|charAt|Date|NaN|Invalid|uF8FF|uE000|less|ftp|long|x7e|x5d|x5b|x21|least|unchecked|x0e|at|x08|filled|more|extension|blank|with|json|dataType|expr|again|same|get|default|specified|attributes|setArray|multiple|card|addMethod|credit|isFunction|only|524288|x1f|2147483647|class|x23|Nummer|eine|previous|https|boolean|Datum|ltiges|gÃ|getElementsByName|document|insertAfter|preventDefault|append|parent|wrap|ISO|URL|remove|parents|address|png|jpe|defined|match|No|Warning|title|returning|This|throw|setDefaults|checking|when|occured|exception|log|continue|onclick'.split('|'),0,{})) \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/osqa.admin.js.svn-base b/forum/skins/default/media/js/.svn/text-base/osqa.admin.js.svn-base deleted file mode 100644 index ccd71036d5ac2df8c3b8d9594e8e580e1e33ae64..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/osqa.admin.js.svn-base +++ /dev/null @@ -1,83 +0,0 @@ -$(function() { - $('.string_list_widget_button').live('click', function() { - $but = $(this); - - if ($but.is('.add')) { - $new = $("<div style=\"display: none;\">" + - "<input style=\"width: 600px;\" type=\"text\" name=\"" + $but.attr('name') + "\" value=\"\" />" + - "<button class=\"string_list_widget_button\">-</button>" + - "</div>"); - - $but.before($new); - $new.slideDown('fast'); - } else { - $but.parent().slideUp('fast', function() { - $but.parent().remove(); - }); - } - - return false; - }) - - $('.fieldtool').each(function() { - var $link = $(this); - var $input = $link.parent().parent().find('input, textarea'); - var name = $input.attr('name') - - if ($link.is('.context')) { - $link.click(function() { - var $contextbox = $('<input type="text" value="' + name + '" />'); - $link.replaceWith($contextbox); - }); - } else if ($link.is('.default')) { - if ($input.length == 1 && ($input.is('[type=text]') || $input.is('textarea'))) { - $link.click(function() { - $.post(name + '/', function(data) { - $input.val(data); - }); - }); - } else { - $link.attr('href', name + '/'); - } - } - }); - - $('.url_field').each(function() { - var $input = $(this); - var $anchor = $input.parent().find('.url_field_anchor'); - var app_url = $anchor.attr('href'); - - function rewrite_anchor() { - var val = app_url + '/' + $input.val(); - - $anchor.attr('href', val); - $anchor.html(val); - - } - - $input.keyup(rewrite_anchor); - rewrite_anchor(); - }); - - $('#test_email_settings a.test_button').click(function() { - $('div.test_status').hide('slow') - $('div.ajax_indicator').show('fast') - $.post($(this).attr('href'), function(data) { - $('div.ajax_indicator').hide('fast') - $('div.test_status').html(data) - $('div.test_status').show('slow') - }) - }) -}); - -/* - * Autocomplete - jQuery plugin 1.0.3 - * - * Copyright (c) 2007 Dylan Verheul, Dan G. Switzer, Anjesh Tuladhar, J�rn Zaefferer - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - */ -(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(e){return e};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(b){return this.bind("result",b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(l,g){var c={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var b=a(l).attr("autocomplete","off").addClass(g.inputClass);var j;var p="";var m=a.Autocompleter.Cache(g);var e=0;var u;var x={mouseDownOnSelect:false};var r=a.Autocompleter.Select(g,l,d,x);var w;a.browser.opera&&a(l.form).bind("submit.autocomplete",function(){if(w){w=false;return false}});b.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(y){u=y.keyCode;switch(y.keyCode){case c.UP:y.preventDefault();if(r.visible()){r.prev()}else{t(0,true)}break;case c.DOWN:y.preventDefault();if(r.visible()){r.next()}else{t(0,true)}break;case c.PAGEUP:y.preventDefault();if(r.visible()){r.pageUp()}else{t(0,true)}break;case c.PAGEDOWN:y.preventDefault();if(r.visible()){r.pageDown()}else{t(0,true)}break;case g.multiple&&a.trim(g.multipleSeparator)==","&&c.COMMA:case c.TAB:case c.RETURN:if(d()){y.preventDefault();w=true;return false}break;case c.ESC:r.hide();break;default:clearTimeout(j);j=setTimeout(t,g.delay);break}}).focus(function(){e++}).blur(function(){e=0;if(!x.mouseDownOnSelect){s()}}).click(function(){if(e++>1&&!r.visible()){t(0,true)}}).bind("search",function(){var y=(arguments.length>1)?arguments[1]:null;function z(D,C){var A;if(C&&C.length){for(var B=0;B<C.length;B++){if(C[B].result.toLowerCase()==D.toLowerCase()){A=C[B];break}}}if(typeof y=="function"){y(A)}else{b.trigger("result",A&&[A.data,A.value])}}a.each(h(b.val()),function(A,B){f(B,z,z)})}).bind("flushCache",function(){m.flush()}).bind("setOptions",function(){a.extend(g,arguments[1]);if("data" in arguments[1]){m.populate()}}).bind("unautocomplete",function(){r.unbind();b.unbind();a(l.form).unbind(".autocomplete")});function d(){var z=r.selected();if(!z){return false}var y=z.result;p=y;if(g.multiple){var A=h(b.val());if(A.length>1){y=A.slice(0,A.length-1).join(g.multipleSeparator)+g.multipleSeparator+y}y+=g.multipleSeparator}b.val(y);v();b.trigger("result",[z.data,z.value]);return true}function t(A,z){if(u==c.DEL){r.hide();return}var y=b.val();if(!z&&y==p){return}p=y;y=i(y);if(y.length>=g.minChars){b.addClass(g.loadingClass);if(!g.matchCase){y=y.toLowerCase()}f(y,k,v)}else{n();r.hide()}}function h(z){if(!z){return[""]}var A=z.split(g.multipleSeparator);var y=[];a.each(A,function(B,C){if(a.trim(C)){y[B]=a.trim(C)}});return y}function i(y){if(!g.multiple){return y}var z=h(y);return z[z.length-1]}function q(y,z){if(g.autoFill&&(i(b.val()).toLowerCase()==y.toLowerCase())&&u!=c.BACKSPACE){b.val(b.val()+z.substring(i(p).length));a.Autocompleter.Selection(l,p.length,p.length+z.length)}}function s(){clearTimeout(j);j=setTimeout(v,200)}function v(){var y=r.visible();r.hide();clearTimeout(j);n();if(g.mustMatch){b.search(function(z){if(!z){if(g.multiple){var A=h(b.val()).slice(0,-1);b.val(A.join(g.multipleSeparator)+(A.length?g.multipleSeparator:""))}else{b.val("")}}})}if(y){a.Autocompleter.Selection(l,l.value.length,l.value.length)}}function k(z,y){if(y&&y.length&&e){n();r.display(y,z);q(z,y[0].value);r.show()}else{v()}}function f(z,B,y){if(!g.matchCase){z=z.toLowerCase()}var A=m.load(z);if(A&&A.length){B(z,A)}else{if((typeof g.url=="string")&&(g.url.length>0)){var C={timestamp:+new Date()};a.each(g.extraParams,function(D,E){C[D]=typeof E=="function"?E():E});a.ajax({mode:"abort",port:"autocomplete"+l.name,dataType:g.dataType,url:g.url,data:a.extend({q:i(z),limit:g.max},C),success:function(E){var D=g.parse&&g.parse(E)||o(E);m.add(z,D);B(z,D)}})}else{r.emptyList();y(z)}}}function o(B){var y=[];var A=B.split("\n");for(var z=0;z<A.length;z++){var C=a.trim(A[z]);if(C){C=C.split("|");y[y.length]={data:C,value:C[0],result:g.formatResult&&g.formatResult(C,C[0])||C[0]}}}return y}function n(){b.removeClass(g.loadingClass)}};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(b){return b[0]},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(c,b){return c.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:true,scrollHeight:180};a.Autocompleter.Cache=function(c){var f={};var d=0;function h(l,k){if(!c.matchCase){l=l.toLowerCase()}var j=l.indexOf(k);if(j==-1){return false}return j==0||c.matchContains}function g(j,i){if(d>c.cacheLength){b()}if(!f[j]){d++}f[j]=i}function e(){if(!c.data){return false}var k={},j=0;if(!c.url){c.cacheLength=1}k[""]=[];for(var m=0,l=c.data.length;m<l;m++){var p=c.data[m];p=(typeof p=="string")?[p]:p;var o=c.formatMatch(p,m+1,c.data.length);if(o===false){continue}var n=o.charAt(0).toLowerCase();if(!k[n]){k[n]=[]}var q={value:o,data:p,result:c.formatResult&&c.formatResult(p)||o};k[n].push(q);if(j++<c.max){k[""].push(q)}}a.each(k,function(r,s){c.cacheLength++;g(r,s)})}setTimeout(e,25);function b(){f={};d=0}return{flush:b,add:g,populate:e,load:function(n){if(!c.cacheLength||!d){return null}if(!c.url&&c.matchContains){var m=[];for(var j in f){if(j.length>0){var o=f[j];a.each(o,function(p,k){if(h(k.value,n)){m.push(k)}})}}return m}else{if(f[n]){return f[n]}else{if(c.matchSubset){for(var l=n.length-1;l>=c.minChars;l--){var o=f[n.substr(0,l)];if(o){var m=[];a.each(o,function(p,k){if(h(k.value,n)){m[m.length]=k}});return m}}}}}return null}}};a.Autocompleter.Select=function(e,j,l,p){var i={ACTIVE:"ac_over"};var k,f=-1,r,m="",s=true,c,o;function n(){if(!s){return}c=a("<div/>").hide().addClass(e.resultsClass).css("position","absolute").appendTo(document.body);o=a("<ul/>").appendTo(c).mouseover(function(t){if(q(t).nodeName&&q(t).nodeName.toUpperCase()=="LI"){f=a("li",o).removeClass(i.ACTIVE).index(q(t));a(q(t)).addClass(i.ACTIVE)}}).click(function(t){a(q(t)).addClass(i.ACTIVE);l();j.focus();return false}).mousedown(function(){p.mouseDownOnSelect=true}).mouseup(function(){p.mouseDownOnSelect=false});if(e.width>0){c.css("width",e.width)}s=false}function q(u){var t=u.target;while(t&&t.tagName!="LI"){t=t.parentNode}if(!t){return[]}return t}function h(t){k.slice(f,f+1).removeClass(i.ACTIVE);g(t);var v=k.slice(f,f+1).addClass(i.ACTIVE);if(e.scroll){var u=0;k.slice(0,f).each(function(){u+=this.offsetHeight});if((u+v[0].offsetHeight-o.scrollTop())>o[0].clientHeight){o.scrollTop(u+v[0].offsetHeight-o.innerHeight())}else{if(u<o.scrollTop()){o.scrollTop(u)}}}}function g(t){f+=t;if(f<0){f=k.size()-1}else{if(f>=k.size()){f=0}}}function b(t){return e.max&&e.max<t?e.max:t}function d(){o.empty();var u=b(r.length);for(var v=0;v<u;v++){if(!r[v]){continue}var w=e.formatItem(r[v].data,v+1,u,r[v].value,m);if(w===false){continue}var t=a("<li/>").html(e.highlight(w,m)).addClass(v%2==0?"ac_even":"ac_odd").appendTo(o)[0];a.data(t,"ac_data",r[v])}k=o.find("li");if(e.selectFirst){k.slice(0,1).addClass(i.ACTIVE);f=0}if(a.fn.bgiframe){o.bgiframe()}}return{display:function(u,t){n();r=u;m=t;d()},next:function(){h(1)},prev:function(){h(-1)},pageUp:function(){if(f!=0&&f-8<0){h(-f)}else{h(-8)}},pageDown:function(){if(f!=k.size()-1&&f+8>k.size()){h(k.size()-1-f)}else{h(8)}},hide:function(){c&&c.hide();k&&k.removeClass(i.ACTIVE);f=-1},visible:function(){return c&&c.is(":visible")},current:function(){return this.visible()&&(k.filter("."+i.ACTIVE)[0]||e.selectFirst&&k[0])},show:function(){var v=a(j).offset();c.css({width:typeof e.width=="string"||e.width>0?e.width:a(j).width(),top:v.top+j.offsetHeight,left:v.left}).show();if(e.scroll){o.scrollTop(0);o.css({maxHeight:e.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var t=0;k.each(function(){t+=this.offsetHeight});var u=t>e.scrollHeight;o.css("height",u?e.scrollHeight:t);if(!u){k.width(o.width()-parseInt(k.css("padding-left"))-parseInt(k.css("padding-right")))}}}},selected:function(){var t=k&&k.filter("."+i.ACTIVE).removeClass(i.ACTIVE);return t&&t.length&&a.data(t[0],"ac_data")},emptyList:function(){o&&o.empty()},unbind:function(){c&&c.remove()}}};a.Autocompleter.Selection=function(d,e,c){if(d.setSelectionRange){d.setSelectionRange(e,c)}else{if(d.createTextRange){var b=d.createTextRange();b.collapse(true);b.moveStart("character",e);b.moveEnd("character",c);b.select()}else{if(d.selectionStart){d.selectionStart=e;d.selectionEnd=c}}}d.focus()}})(jQuery); diff --git a/forum/skins/default/media/js/.svn/text-base/osqa.ask.js.svn-base b/forum/skins/default/media/js/.svn/text-base/osqa.ask.js.svn-base deleted file mode 100644 index a2b6e55ffdcf6debed8c9321ab8f4c910a4a92a9..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/osqa.ask.js.svn-base +++ /dev/null @@ -1,104 +0,0 @@ -var currentSideBar = 'div#title_side_bar'; -function changeSideBar(enabled_bar) { - if (enabled_bar != currentSideBar) { - $(currentSideBar).hide(); - currentSideBar = enabled_bar; - $(currentSideBar).fadeIn('slow'); - } - -} - -$(function () { - $('div#editor_side_bar').hide(); - $('div#tags_side_bar').hide(); - - $('#id_title').focus(function(){changeSideBar('div#title_side_bar')}); - $('#editor').focus(function(){changeSideBar('div#editor_side_bar')}); - $('#id_tags').focus(function(){changeSideBar('div#tags_side_bar')}); -}); - -$(function() { - var $input = $('#id_title'); - var $box = $('#ask-related-questions'); - var template = $('#question-summary-template').html(); - var $editor = $('#editor'); - - var results_cache = {}; - - function reload_suggestions_box(e) { - var relatedQuestionsDiv = $('#ask-related-questions'); - var q = $input.val().replace(/^\s+|\s+$/g,""); - - if(q.length == 0) { - close_suggestions_box(); - relatedQuestionsDiv.html(''); - return false; - } else if(relatedQuestionsDiv[0].style.height == 0 || relatedQuestionsDiv[0].style.height == '0px') { - relatedQuestionsDiv.animate({'height':'150'}, 350); - } - - if (results_cache[q] && results_cache[q] != '') { - relatedQuestionsDiv.html(results_cache[q]); - return false; - } - - $.post(related_questions_url, {title: q}, function(data) { - if (data) { - var c = $input.val().replace(/^\s+|\s+$/g,""); - - if (c != q) { - return; - } - - if(data.length == 0) { - relatedQuestionsDiv.html('<br /><br /><div align="center">No questions like this have been found.</div>'); - return; - } - - var html = ''; - for (var i = 0; i < data.length; i++) { - var item = template.replace(new RegExp('%URL%', 'g'), data[i].url) - .replace(new RegExp('%SCORE%', 'g'), data[i].score) - .replace(new RegExp('%TITLE%', 'g'), data[i].title) - .replace(new RegExp('%SUMMARY%', 'g'), data[i].summary); - - html += item; - - } - - results_cache[q] = html; - - relatedQuestionsDiv.html(html); - } - }, 'json'); - - return false; - } - - function close_suggestions_box() { - $('#ask-related-questions').animate({'height':'0'},350, function() { - $('#ask-related-questions').html(''); - }); - } - - $input.keyup(reload_suggestions_box); - $input.focus(reload_suggestions_box); - - $editor.change(function() { - if ($editor.html().length > 10) { - close_suggestions_box(); - } - }); - - - - // for chrome - $input.keydown(focus_on_question); - function focus_on_question(e) { - var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1; - - if(e.keyCode == 9 && is_chrome) { - $('#editor')[0].focus(); - } - } -}); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/osqa.main.js.svn-base b/forum/skins/default/media/js/.svn/text-base/osqa.main.js.svn-base deleted file mode 100644 index 55a3f1e02611ceba240851212cb4b008ed49167c..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/osqa.main.js.svn-base +++ /dev/null @@ -1,1266 +0,0 @@ -/** - * We do not want the CSRF protection enabled for the AJAX post requests, it causes only trouble. - * Get the csrftoken cookie and pass it to the X-CSRFToken HTTP request property. - */ - -$('html').ajaxSend(function(event, xhr, settings) { - function getCookie(name) { - var cookieValue = null; - if (document.cookie && document.cookie != '') { - var cookies = document.cookie.split(';'); - for (var i = 0; i < cookies.length; i++) { - var cookie = jQuery.trim(cookies[i]); - // Does this cookie string begin with the name we want? - if (cookie.substring(0, name.length + 1) == (name + '=')) { - cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); - break; - } - } - } - return cookieValue; - } - try { - if (!(/^http:.*/.test(settings.url) || /^https:.*/.test(settings.url))) { - // Only send the token to relative URLs i.e. locally. - xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken')); - } - } catch (e) {} -}); - -var response_commands = { - refresh_page: function() { - window.location.reload(true) - }, - - update_post_score: function(id, inc) { - var $score_board = $('#post-' + id + '-score'); - var current = parseInt($score_board.html()) - if (isNaN(current)){ - current = 0; - } - $score_board.html(current + inc) - }, - - update_user_post_vote: function(id, vote_type) { - var $upvote_button = $('#post-' + id + '-upvote'); - var $downvote_button = $('#post-' + id + '-downvote'); - - $upvote_button.removeClass('on'); - $downvote_button.removeClass('on'); - - if (vote_type == 'up') { - $upvote_button.addClass('on'); - } else if (vote_type == 'down') { - $downvote_button.addClass('on'); - } - }, - - update_favorite_count: function(inc) { - var $favorite_count = $('#favorite-count'); - var count = parseInt($favorite_count.html()); - - if (isNaN(count)) - count = 0; - - count += inc; - - if (count == 0) - count = ''; - - $favorite_count.html(count); - }, - - update_favorite_mark: function(type) { - if (type == 'on') { - $('#favorite-mark').addClass('on'); - } else { - $('#favorite-mark').removeClass('on'); - } - }, - - mark_accepted: function(id) { - var $answer = $('#answer-container-' + id); - $answer.addClass('accepted-answer'); - $answer.find('.accept-answer').addClass('on'); - $answer.find('.accept-answer').attr('title', $answer.find('.accept-answer').attr('bn:on')); - }, - - unmark_accepted: function(id) { - var $answer = $('#answer-container-' + id); - $answer.removeClass('accepted-answer'); - $answer.find('.accept-answer').removeClass('on'); - $answer.find('.accept-answer').attr('title', $answer.find('.accept-answer').attr('bn:off')); - }, - - remove_comment: function(id) { - var $comment = $('#comment-' + id); - $comment.css('background', 'red') - $comment.fadeOut('slow', function() { - $comment.remove(); - }); - }, - - award_points: function(id) { - alert('ok'); - }, - - insert_comment: function(post_id, comment_id, comment, username, profile_url, delete_url, edit_url, convert_url, can_convert, show_latest_comments_first) { - var $container = $('#comments-container-' + post_id); - var skeleton = $('#new-comment-skeleton-' + post_id).html().toString(); - - skeleton = skeleton.replace(new RegExp('%ID%', 'g'), comment_id) - .replace(new RegExp('%COMMENT%', 'g'), comment) - .replace(new RegExp('%USERNAME%', 'g'), username) - .replace(new RegExp('%PROFILE_URL%', 'g'), profile_url) - .replace(new RegExp('%DELETE_URL%', 'g'), delete_url) - .replace(new RegExp('%EDIT_URL%', 'g'), edit_url) - .replace(new RegExp('%CONVERT_URL%', 'g'), convert_url); - if (show_latest_comments_first) { - $container.prepend(skeleton); - } else { - $container.append(skeleton); - } - - // Show the convert comment to answer tool only if the current comment can be converted - if (can_convert == true) { - $('#comment-' + comment_id + '-convert').show(); - } - - $('#comment-' + comment_id).slideDown('slow'); - }, - - update_comment: function(comment_id, comment_text) { - var $comment = $('#comment-' + comment_id); - $comment.find('.comment-text').html(comment_text); - - $comment.slideDown('slow'); - }, - - mark_deleted: function(post_type, post_id) { - if (post_type == 'question') { - var $container = $('#question-table'); - $container.addClass('deleted'); - } else { - var $el = $('#' + post_type + '-container-' + post_id); - $el.addClass('deleted'); - } - }, - - unmark_deleted: function(post_type, post_id) { - if (post_type == 'answer') { - var $answer = $('#answer-container-' + post_id); - $answer.removeClass('deleted'); - } else { - var $container = $('#question-table'); - $container.removeClass('deleted'); - } - }, - - set_subscription_button: function(text) { - $('.subscription_switch').html(text); - }, - - set_subscription_status: function(text) { - $('.subscription-status').html(text); - }, - - copy_url: function(url) { - } -} - -function show_dialog (extern) { - var default_close_function = function($diag) { - $diag.fadeOut('fast', function() { - $diag.remove(); - }); - }; - - var options = { - extra_class: '', - pos: { - x: ($(window).width() / 2) + $(window).scrollLeft(), - y: ($(window).height() / 2) + $(window).scrollTop() - }, - dim: false, - yes_text: messages.ok, - yes_callback: default_close_function, - no_text: messages.cancel, - show_no: false, - close_on_clickoutside: false, - copy: false - } - - $.extend(options, extern); - - var copy_id = ''; - if (options.copy) { - copy_id = ' id="copy_clip_button"' - } - - if (options.event != undefined && options.event.pageX != undefined && options.event.pageY != undefined) { - options.pos = {x: options.event.pageX, y: options.event.pageY}; - } else if (options.event.currentTarget != undefined) { - var el = jQuery("#" + options.event.currentTarget.id); - var position = el.offset(); - options.pos = { - x: position.left, - y: position.top - } - } - - var html = '<div class="dialog ' + options.extra_class + '" style="display: none; z-index: 999;">' - + '<div class="dialog-content">' + options.html + '</div><div class="dialog-buttons">'; - - if (options.show_no) { - html += '<button class="dialog-no">' + options.no_text + '</button>'; - } - - html += '<button class="dialog-yes"' + copy_id + '>' + options.yes_text + '</button>' + '</div></div>'; - - var $dialog = $(html); - - $('body').append($dialog); - var message = $('.dialog-content')[0]; - message.style.visibility = "hidden"; - - if (options.dim === false) { - $dialog.css({ - visibility: 'hidden', - display: 'block' - }); - - options.dim = {w: $dialog.width(), h: $dialog.height()}; - - $dialog.css({ - width: 1, - height: 1, - visibility: 'visible' - }); - } - - $dialog.css({ - top: options.pos.y, - left: options.pos.x - }); - - top_position_change = (options.dim.h / 2) - left_position_change = (options.dim.w / 2) - - new_top_position = options.pos.y - top_position_change - new_left_position = options.pos.x - left_position_change - - if (new_left_position < 0) { - left_position_change = 0 - } - if (($(window).scrollTop() - new_top_position) > 0) { - top_position_change = 0 - } - if ((options.event.pageY + options.dim.h) > ($(window).height() + $(window).scrollTop())) { - top_position_change = options.dim.h - } - if ((options.event.pageX + options.dim.w) > ($(window).width() + $(window).scrollLeft())) { - left_position_change = options.dim.w - } - - $dialog.animate({ - top: "-=" + top_position_change, - left: "-=" + left_position_change, - width: options.dim.w, - height: options.dim.h - }, 200, function() { - message.style.visibility = "visible"; - }); - - $dialog.find('.dialog-yes').click(function() { - options.yes_callback($dialog); - }); - - if (options.hasOwnProperty("no_callback")) { - $dialog.find('.dialog-no:first-child').click(function() { - options.no_callback($dialog); - }); - } else { - $dialog.find('.dialog-no:first-child').click(function() { - default_close_function($dialog); - }); - } - - if (options.close_on_clickoutside) { - $dialog.one('clickoutside', function() { - default_close_function($dialog); - }); - } - - return $dialog; -} - -function show_message(evt, msg, callback) { - var $dialog = show_dialog({ - html: msg, - extra_class: 'warning', - event: evt, - yes_callback: function() { - $dialog.fadeOut('fast', function() { - $dialog.remove(); - }); - if (callback) { - callback(); - } - }, - close_on_clickoutside: true - }); -} - -function load_prompt(evt, el, url) { - $.get(url, function(data) { - var doptions = { - html: data, - extra_class: 'prompt', - yes_callback: function() { - var postvars = {}; - $dialog.find('input, textarea, select').each(function() { - postvars[$(this).attr('name')] = $(this).val(); - }); - $.post(url, postvars, function(data) { - $dialog.fadeOut('fast', function() { - $dialog.remove(); - }); - process_ajax_response(data, evt); - }, 'json'); - }, - show_no: true, - copy: false - } - - if (el.hasClass('copy')) { - $.extend(doptions, { yes_text : 'Copy', copy: true}); - } - - if (!el.is('.centered')) { - doptions.event = evt; - } - - var $dialog = show_dialog(doptions); - }); -} - -function process_ajax_response(data, evt, callback) { - if (!data.success && data['error_message'] != undefined) { - show_message(evt, data.error_message, function() {if (callback) callback(true);}); - end_command(false); - } - if (typeof data['commands'] != undefined){ - for (var command in data.commands) { - response_commands[command].apply(null, data.commands[command]) - - - } - - if (data['message'] != undefined) { - show_message(evt, data.message, function() {if (callback) callback(false);}) - } else { - if (callback) callback(false); - } - end_command(true); - } -} - -var running = false; - -function start_command() { - $('body').append($('<div id="command-loader"></div>')); - running = true; -} - -function end_command(success) { - if (success) { - $('#command-loader').addClass('success'); - $('#command-loader').fadeOut("slow", function() { - $('#command-loader').remove(); - running = false; - }); - } else { - $('#command-loader').remove(); - running = false; - } -} - -var comment_box_cursor_position = 0; -function canned_comment(post_id, comment) { - textarea = $('#comment-' + post_id + '-form textarea') - - // Get the text from the beginning to the caret - textarea_start = textarea.val().substr(0, comment_box_cursor_position) - - // Get the text from the caret to the end - textarea_end = textarea.val().substr(comment_box_cursor_position, textarea.val().length) - - textarea.val(textarea_start + comment + textarea_end); -} - -$(function() { - $('textarea.commentBox').bind('keydown keyup mousedown mouseup mousemove', function(evt) { - comment_box_cursor_position = $(this).caret().start; - }); - - $('textarea.commentBox').blur(function() { - //alert(comment_box_cursor_position); - }); - - $('a.ajax-command').live('click', function(evt) { - if (running) return false; - - var el = $(this); - - var ajax_url = el.attr('href') - ajax_url = ajax_url + "?nocache=" + new Date().getTime() - - $('.context-menu-dropdown').slideUp('fast'); - - if (el.is('.withprompt')) { - load_prompt(evt, el, ajax_url); - } else if(el.is('.confirm')) { - var doptions = { - html: messages.confirm, - extra_class: 'confirm', - yes_callback: function() { - start_command(); - $.getJSON(ajax_url, function(data) { - process_ajax_response(data, evt); - $dialog.fadeOut('fast', function() { - $dialog.remove(); - }); - }); - }, - yes_text: messages.yes, - show_no: true, - no_text: messages.no - } - - if (!el.is('.centered')) { - doptions.event = evt; - } - var $dialog = show_dialog(doptions); - } else { - start_command(); - $.ajax({ - url: ajax_url, - type: "POST", - dataType: "json", - contentType: "application/json; charset=utf-8", - success: function(data) { - process_ajax_response(data, evt); - } - }); - } - - return false - }); - - $('.context-menu').each(function() { - var $menu = $(this); - var $trigger = $menu.find('.context-menu-trigger'); - var $dropdown = $menu.find('.context-menu-dropdown'); - - $trigger.click(function() { - $dropdown.slideToggle('fast', function() { - if ($dropdown.is(':visible')) { - $dropdown.one('clickoutside', function() { - if ($dropdown.is(':visible')) - $dropdown.slideUp('fast'); - }); - } - }); - }); - }); - - $('div.comment-form-container').each(function() { - var $container = $(this); - var $comment_tools = $container.parent().find('.comment-tools'); - var $comments_container = $container.parent().find('.comments-container'); - - var $form = $container.find('form'); - - if ($form.length) { - var $textarea = $container.find('textarea'); - var textarea = $textarea.get(0); - var $button = $container.find('.comment-submit'); - var $cancel = $container.find('.comment-cancel'); - var $chars_left_message = $container.find('.comments-chars-left-msg'); - var $chars_togo_message = $container.find('.comments-chars-togo-msg'); - var $chars_counter = $container.find('.comments-char-left-count'); - - var $add_comment_link = $comment_tools.find('.add-comment-link'); - - var chars_limits = $chars_counter.html().split('|'); - - var min_length = parseInt(chars_limits[0]); - var max_length = parseInt(chars_limits[1]); - - var warn_length = max_length - 30; - var current_length = 0; - var comment_in_form = false; - var interval = null; - - var hcheck = !($.browser.msie || $.browser.opera); - - $textarea.css("padding-top", 0).css("padding-bottom", 0).css("resize", "none"); - textarea.style.overflow = 'hidden'; - - - function cleanup_form() { - $textarea.val(''); - $textarea.css('height', 80); - $chars_counter.html(max_length); - $chars_left_message.removeClass('warn'); - comment_in_form = false; - current_length = 0; - - $chars_left_message.hide(); - $chars_togo_message.show(); - - $chars_counter.removeClass('warn'); - $chars_counter.html(min_length); - $button.attr("disabled","disabled"); - - interval = null; - } - - cleanup_form(); - - function process_form_changes() { - var length = $textarea.val().replace(/[ ]{2,}/g," ").length; - - if (current_length == length) - return; - - if (length < warn_length && current_length >= warn_length) { - $chars_counter.removeClass('warn'); - } else if (current_length < warn_length && length >= warn_length){ - $chars_counter.addClass('warn'); - } - - if (length < min_length) { - $chars_left_message.hide(); - $chars_togo_message.show(); - $chars_counter.html(min_length - length); - } else { - length = $textarea.val().length; - $chars_togo_message.hide(); - $chars_left_message.show(); - $chars_counter.html(max_length - length); - } - - if (length > max_length || length < min_length) { - $button.attr("disabled","disabled"); - } else { - $button.removeAttr("disabled"); - } - - var current_height = textarea.style.height; - if (hcheck) - textarea.style.height = "0px"; - - var h = Math.max(80, textarea.scrollHeight); - textarea.style.height = current_height; - $textarea.animate({height: h + 'px'}, 50); - - current_length = length; - } - - function show_comment_form() { - $container.slideDown('slow'); - $add_comment_link.fadeOut('slow'); - $textarea.focus(); - interval = window.setInterval(function() { - process_form_changes(); - }, 200); - } - - function hide_comment_form() { - if (interval != null) { - window.clearInterval(interval); - interval = null; - } - $container.slideUp('slow'); - $add_comment_link.fadeIn('slow'); - } - - $add_comment_link.click(function(){ - cleanup_form(); - show_comment_form(); - return false; - }); - - $('#' + $comments_container.attr('id') + ' .comment-edit').live('click', function() { - var $link = $(this); - var comment_id = /comment-(\d+)-edit/.exec($link.attr('id'))[1]; - var $comment = $('#comment-' + comment_id); - - comment_in_form = comment_id; - - $.get($link.attr('href'), function(data) { - $textarea.val(data); - }); - - $comment.slideUp('slow'); - show_comment_form(); - return false; - }); - - $button.click(function(evt) { - if (running) return false; - - var post_data = { - comment: $textarea.val() - } - - if (comment_in_form) { - post_data['id'] = comment_in_form; - } - - start_command(); - $.post($form.attr('action'), post_data, function(data) { - process_ajax_response(data, evt, function(error) { - if (!error) { - cleanup_form(); - hide_comment_form(); - } - }); - - }, "json"); - - return false; - }); - - // Submit comment with CTRL + Enter - $textarea.keydown(function(e) { - if (e.ctrlKey && e.keyCode == 13 && !$button.attr('disabled')) { - // console.log('submit'); - $(this).parent().find('input.comment-submit').click(); - } - }); - - $cancel.click(function(event) { - if (confirm("You will lose all of your changes in this comment. Do you still wish to proceed?")){ - if (comment_in_form) { - $comment = $('#comment-' + comment_in_form).slideDown('slow'); - } - hide_comment_form(); - cleanup_form(); - } - return false; - }); - } - - $comment_tools.find('.show-all-comments-link').click(function() { - $comments_container.find('.not_top_scorer').slideDown('slow'); - $(this).fadeOut('slow'); - $comment_tools.find('.comments-showing').fadeOut('slow'); - return false; - }); - }); - - if ($('#editor').length) { - var $editor = $('#editor'); - var $previewer = $('#previewer'); - var $container = $('#editor-metrics'); - - var initial_whitespace_rExp = /^[^A-Za-zÐ-Яа-Ñ0-9]+/gi; - var non_alphanumerics_rExp = rExp = /[^A-Za-zÐ-Яа-Ñ0-9]+/gi; - var editor_interval = null; - - $editor.focus(function() { - if (editor_interval == null) { - editor_interval = window.setInterval(function() { - recalc_metrics(); - }, 200); - } - }); - - function recalc_metrics() { - var text = $previewer.text(); - - var char_count = text.length; - var fullStr = text + " "; - var left_trimmedStr = fullStr.replace(initial_whitespace_rExp, ""); - var cleanedStr = left_trimmedStr.replace(non_alphanumerics_rExp, " "); - var splitString = cleanedStr.split(" "); - var word_count = splitString.length - 1; - - var metrics = char_count + " " + (char_count == 1 ? messages.character : messages.characters); - metrics += " / " + word_count + " " + (word_count == 1 ? messages.word : messages.words); - $container.html(metrics); - } - } -}); - -//var scriptUrl, interestingTags, ignoredTags, tags, $; -function pickedTags(){ - - var sendAjax = function(tagname, reason, action, callback){ - var url = scriptUrl; - if (action == 'add'){ - url += $.i18n._('mark-tag/'); - if (reason == 'good'){ - url += $.i18n._('interesting/'); - } - else { - url += $.i18n._('ignored/'); - } - } - else { - url += $.i18n._('unmark-tag/'); - } - url = url + tagname + '/'; - - var call_settings = { - type:'POST', - url:url, - data: '' - }; - if (callback !== false){ - call_settings.success = callback; - } - $.ajax(call_settings); - }; - - - var unpickTag = function(from_target ,tagname, reason, send_ajax){ - //send ajax request to delete tag - var deleteTagLocally = function(){ - from_target[tagname].remove(); - delete from_target[tagname]; - $(".tags.interesting").trigger('contentchanged'); - }; - - if (send_ajax){ - sendAjax(tagname,reason,'remove',deleteTagLocally); - } - else { - deleteTagLocally(); - } - }; - - var setupTagDeleteEvents = function(obj,tag_store,tagname,reason,send_ajax){ - obj.unbind('mouseover').bind('mouseover', function(){ - $(this).attr('src', mediaUrl('media/images/close-small-hover.png')); - }); - obj.unbind('mouseout').bind('mouseout', function(){ - $(this).attr('src', mediaUrl('media/images/close-small-dark.png')); - }); - obj.click( function(){ - unpickTag(tag_store,tagname,reason,send_ajax); - }); - }; - - var handlePickedTag = function(obj,reason){ - var tagname = $.trim($(obj).prev().attr('value')); - var to_target = interestingTags; - var from_target = ignoredTags; - var to_tag_container; - if (reason == 'bad'){ - to_target = ignoredTags; - from_target = interestingTags; - to_tag_container = $('div .tags.ignored'); - } - else if (reason != 'good'){ - return; - } - else { - to_tag_container = $('div .tags.interesting'); - } - - if (tagname in from_target){ - unpickTag(from_target,tagname,reason,false); - } - - if (!(tagname in to_target)){ - //send ajax request to pick this tag - - sendAjax(tagname,reason,'add',function(){ - var new_tag = $('<span></span>'); - new_tag.addClass('deletable-tag'); - var tag_link = $('<a></a>'); - tag_link.attr('rel','tag'); - tag_link.attr('href', scriptUrl + $.i18n._('tags/') + tagname + '/'); - tag_link.html(tagname); - var del_link = $('<img />'); - del_link.addClass('delete-icon'); - del_link.attr('src', mediaUrl('media/images/close-small-dark.png')); - - setupTagDeleteEvents(del_link, to_target, tagname, reason, true); - - new_tag.append(tag_link); - new_tag.append(del_link); - to_tag_container.append(new_tag); - - to_target[tagname] = new_tag; - - to_tag_container.trigger('contentchanged'); - }); - } - }; - - var collectPickedTags = function(){ - var good_prefix = 'interesting-tag-'; - var bad_prefix = 'ignored-tag-'; - var good_re = RegExp('^' + good_prefix); - var bad_re = RegExp('^' + bad_prefix); - interestingTags = {}; - ignoredTags = {}; - $('.deletable-tag').each( - function(i,item){ - var item_id = $(item).attr('id'); - var tag_name, tag_store; - if (good_re.test(item_id)){ - tag_name = item_id.replace(good_prefix,''); - tag_store = interestingTags; - reason = 'good'; - } - else if (bad_re.test(item_id)){ - tag_name = item_id.replace(bad_prefix,''); - tag_store = ignoredTags; - reason = 'bad'; - } - else { - return; - } - tag_store[tag_name] = $(item); - setupTagDeleteEvents($(item).find('img'),tag_store,tag_name,reason,true); - } - ); - }; - - var setupHideIgnoredQuestionsControl = function(){ - $('#hideIgnoredTagsCb').unbind('click').click(function(){ - $.ajax({ - type: 'POST', - dataType: 'json', - cache: false, - url: scriptUrl + $.i18n._('command/'), - data: {command:'toggle-ignored-questions'} - }); - }); - }; - return { - init: function(){ - collectPickedTags(); - setupHideIgnoredQuestionsControl(); - $("#interestingTagInput, #ignoredTagInput").autocomplete(messages.matching_tags_url, { - minChars: 1, - matchContains: true, - max: 20, - /*multiple: false, - the favorite tags and ignore tags don't let you do multiple tags - multipleSeparator: " "*/ - - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - $("#interestingTagAdd").click(function(){handlePickedTag(this,'good');}); - $("#ignoredTagAdd").click(function(){handlePickedTag(this,'bad');}); - } - }; -} - -Hilite={elementid:"content",exact:true,max_nodes:1000,onload:true,style_name:"hilite",style_name_suffix:true,debug_referrer:""};Hilite.search_engines=[["local","q"],["cnprog\\.","q"],["google\\.","q"],["search\\.yahoo\\.","p"],["search\\.msn\\.","q"],["search\\.live\\.","query"],["search\\.aol\\.","userQuery"],["ask\\.com","q"],["altavista\\.","q"],["feedster\\.","q"],["search\\.lycos\\.","q"],["alltheweb\\.","q"],["technorati\\.com/search/([^\\?/]+)",1],["dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)",1,true]];Hilite.decodeReferrer=function(d){var g=null;var e=new RegExp("");for(var c=0;c<Hilite.search_engines.length;c++){var f=Hilite.search_engines[c];e.compile("^http://(www\\.)?"+f[0],"i");var b=d.match(e);if(b){var a;if(isNaN(f[1])){a=Hilite.decodeReferrerQS(d,f[1])}else{a=b[f[1]+1]}if(a){a=decodeURIComponent(a);if(f.length>2&&f[2]){a=decodeURIComponent(a)}a=a.replace(/\'|"/g,"");a=a.split(/[\s,\+\.]+/);return a}break}}return null};Hilite.decodeReferrerQS=function(f,d){var b=f.indexOf("?");var c;if(b>=0){var a=new String(f.substring(b+1));b=0;c=0;while((b>=0)&&((c=a.indexOf("=",b))>=0)){var e,g;e=a.substring(b,c);b=a.indexOf("&",c)+1;if(e==d){if(b<=0){return a.substring(c+1)}else{return a.substring(c+1,b-1)}}else{if(b<=0){return null}}}}return null};Hilite.hiliteElement=function(f,e){if(!e||f.childNodes.length==0){return}var c=new Array();for(var b=0;b<e.length;b++){e[b]=e[b].toLowerCase();if(Hilite.exact){c.push("\\b"+e[b]+"\\b")}else{c.push(e[b])}}c=new RegExp(c.join("|"),"i");var a={};for(var b=0;b<e.length;b++){if(Hilite.style_name_suffix){a[e[b]]=Hilite.style_name+(b+1)}else{a[e[b]]=Hilite.style_name}}var d=function(m){var j=c.exec(m.data);if(j){var n=j[0];var i="";var h=m.splitText(j.index);var g=h.splitText(n.length);var l=m.ownerDocument.createElement("SPAN");m.parentNode.replaceChild(l,h);l.className=a[n.toLowerCase()];l.appendChild(h);return l}else{return m}};Hilite.walkElements(f.childNodes[0],1,d)};Hilite.hilite=function(){var a=Hilite.debug_referrer?Hilite.debug_referrer:document.referrer;var b=null;a=Hilite.decodeReferrer(a);if(a&&((Hilite.elementid&&(b=document.getElementById(Hilite.elementid)))||(b=document.body))){Hilite.hiliteElement(b,a)}};Hilite.walkElements=function(d,f,e){var a=/^(script|style|textarea)/i;var c=0;while(d&&f>0){c++;if(c>=Hilite.max_nodes){var b=function(){Hilite.walkElements(d,f,e)};setTimeout(b,50);return}if(d.nodeType==1){if(!a.test(d.tagName)&&d.childNodes.length>0){d=d.childNodes[0];f++;continue}}else{if(d.nodeType==3){d=e(d)}}if(d.nextSibling){d=d.nextSibling}else{while(f>0){d=d.parentNode;f--;if(d.nextSibling){d=d.nextSibling;break}}}}};if(Hilite.onload){if(window.attachEvent){window.attachEvent("onload",Hilite.hilite)}else{if(window.addEventListener){window.addEventListener("load",Hilite.hilite,false)}else{var __onload=window.onload;window.onload=function(){Hilite.hilite();__onload()}}}}; - -var mediaUrl = function(resource){ - return scriptUrl + 'm/' + osqaSkin + '/' + resource; -}; - -/* - * jQuery i18n plugin - * @requires jQuery v1.1 or later - * - * Examples at: http://recurser.com/articles/2008/02/21/jquery-i18n-translation-plugin/ - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - * Based on 'javascript i18n that almost doesn't suck' by markos - * http://markos.gaivo.net/blog/?p=100 - * - * Revision: $Id$ - * Version: 1.0.0 Feb-10-2008 - */ - (function($) { -/** - * i18n provides a mechanism for translating strings using a jscript dictionary. - * - */ - - -/* - * i18n property list - */ -$.i18n = { - -/** - * setDictionary() - * Initialise the dictionary and translate nodes - * - * @param property_list i18n_dict : The dictionary to use for translation - */ - setDictionary: function(i18n_dict) { - i18n_dict = i18n_dict; - }, - -/** - * _() - * The actual translation function. Looks the given string up in the - * dictionary and returns the translation if one exists. If a translation - * is not found, returns the original word - * - * @param string str : The string to translate - * @param property_list params : params for using printf() on the string - * @return string : Translated word - * - */ - _: function (str, params) { - var transl = str; - if (i18n_dict&& i18n_dict[str]) { - transl = i18n_dict[str]; - } - return this.printf(transl, params); - }, - -/** - * toEntity() - * Change non-ASCII characters to entity representation - * - * @param string str : The string to transform - * @return string result : Original string with non-ASCII content converted to entities - * - */ - toEntity: function (str) { - var result = ''; - for (var i=0;i<str.length; i++) { - if (str.charCodeAt(i) > 128) - result += "&#"+str.charCodeAt(i)+";"; - else - result += str.charAt(i); - } - return result; - }, - -/** - * stripStr() - * - * @param string str : The string to strip - * @return string result : Stripped string - * - */ - stripStr: function(str) { - return str.replace(/^\s*/, "").replace(/\s*$/, ""); - }, - -/** - * stripStrML() - * - * @param string str : The multi-line string to strip - * @return string result : Stripped string - * - */ - stripStrML: function(str) { - // Split because m flag doesn't exist before JS1.5 and we need to - // strip newlines anyway - var parts = str.split('\n'); - for (var i=0; i<parts.length; i++) - parts[i] = stripStr(parts[i]); - - // Don't join with empty strings, because it "concats" words - // And strip again - return stripStr(parts.join(" ")); - }, - -/* - * printf() - * C-printf like function, which substitutes %s with parameters - * given in list. %%s is used to escape %s. - * - * Doesn't work in IE5.0 (splice) - * - * @param string S : string to perform printf on. - * @param string L : Array of arguments for printf() - */ - printf: function(S, L) { - if (!L) return S; - - var nS = ""; - var tS = S.split("%s"); - - for(var i=0; i<L.length; i++) { - if (tS[i].lastIndexOf('%') == tS[i].length-1 && i != L.length-1) - tS[i] += "s"+tS.splice(i+1,1)[0]; - nS += tS[i] + L[i]; - } - return nS + tS[tS.length-1]; - } - -}; - - -})(jQuery); - - -//var i18nLang; -var i18nZh = { - 'insufficient privilege':'??????????', - 'cannot pick own answer as best':'??????????????', - 'anonymous users cannot select favorite questions':'?????????????', - 'please login':'??????', - 'anonymous users cannot vote':'????????', - '>15 points requried to upvote':'??+15?????????', - '>100 points required to downvote':'??+100?????????', - 'please see': '??', - 'cannot vote for own posts':'??????????', - 'daily vote cap exhausted':'????????????????', - 'cannot revoke old vote':'??????????????', - 'please confirm offensive':"??????????????????????", - 'anonymous users cannot flag offensive posts':'???????????', - 'cannot flag message as offensive twice':'???????', - 'flag offensive cap exhausted':'?????????????5?‘??Â’???', - 'need >15 points to report spam':"??+15??????‘???Â’?", - 'confirm delete':"?????/????????", - 'anonymous users cannot delete/undelete':"???????????????", - 'post recovered':"?????????????", - 'post deleted':"????????????", - 'add comment':'????', - 'community karma points':'????', - 'to comment, need':'????', - 'delete this comment':'?????', - 'hide comments':"????", - 'add a comment':"????", - 'comments':"??", - 'confirm delete comment':"?????????", - 'characters':'??', - 'can write':'???', - 'click to close':'???????', - 'loading...':'???...', - 'tags cannot be empty':'???????', - 'tablimits info':"??5????????????20????", - 'content cannot be empty':'???????', - 'content minchars': '????? {0} ???', - 'please enter title':'??????', - 'title minchars':"????? {0} ???", - 'delete':'??', - 'undelete': '??', - 'bold':'??', - 'italic':'??', - 'link':'???', - 'quote':'??', - 'preformatted text':'??', - 'image':'??', - 'numbered list':'??????', - 'bulleted list':'??????', - 'heading':'??', - 'horizontal bar':'???', - 'undo':'??', - 'redo':'??', - 'enter image url':'<b>??????</b></p><p>???<br />http://www.example.com/image.jpg \"????\"', - 'enter url':'<b>??Web??</b></p><p>???<br />http://www.cnprog.com/ \"????\"</p>"', - 'upload image':'?????????' -}; - -var i18nEn = { - 'need >15 points to report spam':'need >15 points to report spam ', - '>15 points requried to upvote':'>15 points required to upvote ', - 'tags cannot be empty':'please enter at least one tag', - 'anonymous users cannot vote':'sorry, anonymous users cannot vote ', - 'anonymous users cannot select favorite questions':'sorry, anonymous users cannot select favorite questions ', - 'to comment, need': '(to comment other people\'s posts, karma ', - 'please see':'please see ', - 'community karma points':' or more is necessary) - ', - 'upload image':'Upload image:', - 'enter image url':'enter URL of the image, e.g. http://www.example.com/image.jpg \"image title\"', - 'enter url':'enter Web address, e.g. http://www.example.com \"page title\"', - 'daily vote cap exhausted':'sorry, you\'ve used up todays vote cap', - 'cannot pick own answer as best':'sorry, you cannot accept your own answer', - 'cannot revoke old vote':'sorry, older votes cannot be revoked', - 'please confirm offensive':'are you sure this post is offensive, contains spam, advertising, malicious remarks, etc.?', - 'flag offensive cap exhausted':'sorry, you\'ve used up todays cap of flagging offensive messages ', - 'confirm delete':'are you sure you want to delete this?', - 'anonymous users cannot delete/undelete':'sorry, anonymous users cannot delete or undelete posts', - 'post recovered':'your post is now restored!', - 'post deleted':'your post has been deleted', - 'confirm delete comment':'do you really want to delete this comment?', - 'can write':'have ', - 'tablimits info':'up to 5 tags, no more than 20 characters each', - 'content minchars': 'please enter more than {0} characters', - 'title minchars':"please enter at least {0} characters", - 'characters':'characters left', - 'cannot vote for own posts':'sorry, you cannot vote for your own posts', - 'cannot flag message as offensive twice':'cannot flag message as offensive twice ', - '>100 points required to downvote':'>100 points required to downvote ' -}; - -var i18nEs = { - 'insufficient privilege':'privilegio insuficiente', - 'cannot pick own answer as best':'no puede escoger su propia respuesta como la mejor', - 'anonymous users cannot select favorite questions':'usuarios anonimos no pueden seleccionar', - 'please login':'por favor inicie sesión', - 'anonymous users cannot vote':'usuarios anónimos no pueden votar', - '>15 points requried to upvote': '>15 puntos requeridos para votar positivamente', - '>100 points required to downvote':'>100 puntos requeridos para votar negativamente', - 'please see': 'por favor vea', - 'cannot vote for own posts':'no se puede votar por sus propias publicaciones', - 'daily vote cap exhausted':'cuota de votos diarios excedida', - 'cannot revoke old vote':'no puede revocar un voto viejo', - 'please confirm offensive':"por favor confirme ofensiva", - 'anonymous users cannot flag offensive posts':'usuarios anónimos no pueden marcar publicaciones como ofensivas', - 'cannot flag message as offensive twice':'no puede marcar mensaje como ofensivo dos veces', - 'flag offensive cap exhausted':'cuota para marcar ofensivas ha sido excedida', - 'need >15 points to report spam':"necesita >15 puntos para reportar spam", - 'confirm delete':"¿Está seguro que desea borrar esto?", - 'anonymous users cannot delete/undelete':"usuarios anónimos no pueden borrar o recuperar publicaciones", - 'post recovered':"publicación recuperada", - 'post deleted':"publicación borrada?", - 'add comment':'agregar comentario', - 'community karma points':'reputación comunitaria', - 'to comment, need':'para comentar, necesita reputación', - 'delete this comment':'borrar este comentario', - 'hide comments':"ocultar comentarios", - 'add a comment':"agregar comentarios", - 'comments':"comentarios", - 'confirm delete comment':"¿Realmente desea borrar este comentario?", - 'characters':'caracteres faltantes', - 'can write':'tiene ', - 'click to close':'haga click para cerrar', - 'loading...':'cargando...', - 'tags cannot be empty':'las etiquetas no pueden estar vacÃas', - 'tablimits info':"hasta 5 etiquetas de no mas de 20 caracteres cada una", - 'content cannot be empty':'el contenido no puede estar vacÃo', - 'content minchars': 'por favor introduzca mas de {0} caracteres', - 'please enter title':'por favor ingrese un tÃtulo', - 'title minchars':"por favor introduzca al menos {0} caracteres", - 'delete':'borrar', - 'undelete': 'recuperar', - 'bold': 'negrita', - 'italic':'cursiva', - 'link':'enlace', - 'quote':'citar', - 'preformatted text':'texto preformateado', - 'image':'imagen', - 'numbered list':'lista numerada', - 'bulleted list':'lista no numerada', - 'heading':'??', - 'horizontal bar':'barra horizontal', - 'undo':'deshacer', - 'redo':'rehacer', - 'enter image url':'introduzca la URL de la imagen, por ejemplo?<br />http://www.example.com/image.jpg \"titulo de imagen\"', - 'enter url':'introduzca direcciones web, ejemplo?<br />http://www.cnprog.com/ \"titulo del enlace\"</p>"', - 'upload image':'cargar imagen?', - 'questions/' : 'preguntas/', - 'vote/' : 'votar/' -}; - -var i18n = { - 'en':i18nEn, - 'zh_CN':i18nZh, - 'es':i18nEs -}; - -var i18n_dict = i18n[i18nLang]; - -/* - jQuery TextAreaResizer plugin - Created on 17th January 2008 by Ryan O'Dell - Version 1.0.4 -*/(function($){var textarea,staticOffset;var iLastMousePos=0;var iMin=32;var grip;$.fn.TextAreaResizer=function(){return this.each(function(){textarea=$(this).addClass('processed'),staticOffset=null;$(this).wrap('<div class="resizable-textarea"><span></span></div>').parent().append($('<div class="grippie"></div>').bind("mousedown",{el:this},startDrag));var grippie=$('div.grippie',$(this).parent())[0];grippie.style.marginRight=(grippie.offsetWidth-$(this)[0].offsetWidth)+'px'})};function startDrag(e){textarea=$(e.data.el);textarea.blur();iLastMousePos=mousePosition(e).y;staticOffset=textarea.height()-iLastMousePos;textarea.css('opacity',0.25);$(document).mousemove(performDrag).mouseup(endDrag);return false}function performDrag(e){var iThisMousePos=mousePosition(e).y;var iMousePos=staticOffset+iThisMousePos;if(iLastMousePos>=(iThisMousePos)){iMousePos-=5}iLastMousePos=iThisMousePos;iMousePos=Math.max(iMin,iMousePos);textarea.height(iMousePos+'px');if(iMousePos<iMin){endDrag(e)}return false}function endDrag(e){$(document).unbind('mousemove',performDrag).unbind('mouseup',endDrag);textarea.css('opacity',1);textarea.focus();textarea=null;staticOffset=null;iLastMousePos=0}function mousePosition(e){return{x:e.clientX+document.documentElement.scrollLeft,y:e.clientY+document.documentElement.scrollTop}}})(jQuery); -/* - * Autocomplete - jQuery plugin 1.0.3 - * - * Copyright (c) 2007 Dylan Verheul, Dan G. Switzer, Anjesh Tuladhar, Jörn Zaefferer - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - */ -(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(e){return e};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(b){return this.bind("result",b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(l,g){var c={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var b=a(l).attr("autocomplete","off").addClass(g.inputClass);var j;var p="";var m=a.Autocompleter.Cache(g);var e=0;var u;var x={mouseDownOnSelect:false};var r=a.Autocompleter.Select(g,l,d,x);var w;a.browser.opera&&a(l.form).bind("submit.autocomplete",function(){if(w){w=false;return false}});b.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(y){u=y.keyCode;switch(y.keyCode){case c.UP:y.preventDefault();if(r.visible()){r.prev()}else{t(0,true)}break;case c.DOWN:y.preventDefault();if(r.visible()){r.next()}else{t(0,true)}break;case c.PAGEUP:y.preventDefault();if(r.visible()){r.pageUp()}else{t(0,true)}break;case c.PAGEDOWN:y.preventDefault();if(r.visible()){r.pageDown()}else{t(0,true)}break;case g.multiple&&a.trim(g.multipleSeparator)==","&&c.COMMA:case c.TAB:case c.RETURN:if(d()){y.preventDefault();w=true;return false}break;case c.ESC:r.hide();break;default:clearTimeout(j);j=setTimeout(t,g.delay);break}}).focus(function(){e++}).blur(function(){e=0;if(!x.mouseDownOnSelect){s()}}).click(function(){if(e++>1&&!r.visible()){t(0,true)}}).bind("search",function(){var y=(arguments.length>1)?arguments[1]:null;function z(D,C){var A;if(C&&C.length){for(var B=0;B<C.length;B++){if(C[B].result.toLowerCase()==D.toLowerCase()){A=C[B];break}}}if(typeof y=="function"){y(A)}else{b.trigger("result",A&&[A.data,A.value])}}a.each(h(b.val()),function(A,B){f(B,z,z)})}).bind("flushCache",function(){m.flush()}).bind("setOptions",function(){a.extend(g,arguments[1]);if("data" in arguments[1]){m.populate()}}).bind("unautocomplete",function(){r.unbind();b.unbind();a(l.form).unbind(".autocomplete")});function d(){var z=r.selected();if(!z){return false}var y=z.result;p=y;if(g.multiple){var A=h(b.val());if(A.length>1){y=A.slice(0,A.length-1).join(g.multipleSeparator)+g.multipleSeparator+y}y+=g.multipleSeparator}b.val(y);v();b.trigger("result",[z.data,z.value]);return true}function t(A,z){if(u==c.DEL){r.hide();return}var y=b.val();if(!z&&y==p){return}p=y;y=i(y);if(y.length>=g.minChars){b.addClass(g.loadingClass);if(!g.matchCase){y=y.toLowerCase()}f(y,k,v)}else{n();r.hide()}}function h(z){if(!z){return[""]}var A=z.split(g.multipleSeparator);var y=[];a.each(A,function(B,C){if(a.trim(C)){y[B]=a.trim(C)}});return y}function i(y){if(!g.multiple){return y}var z=h(y);return z[z.length-1]}function q(y,z){if(g.autoFill&&(i(b.val()).toLowerCase()==y.toLowerCase())&&u!=c.BACKSPACE){b.val(b.val()+z.substring(i(p).length));a.Autocompleter.Selection(l,p.length,p.length+z.length)}}function s(){clearTimeout(j);j=setTimeout(v,200)}function v(){var y=r.visible();r.hide();clearTimeout(j);n();if(g.mustMatch){b.search(function(z){if(!z){if(g.multiple){var A=h(b.val()).slice(0,-1);b.val(A.join(g.multipleSeparator)+(A.length?g.multipleSeparator:""))}else{b.val("")}}})}if(y){a.Autocompleter.Selection(l,l.value.length,l.value.length)}}function k(z,y){if(y&&y.length&&e){n();r.display(y,z);q(z,y[0].value);r.show()}else{v()}}function f(z,B,y){if(!g.matchCase){z=z.toLowerCase()}var A=m.load(z);if(A&&A.length){B(z,A)}else{if((typeof g.url=="string")&&(g.url.length>0)){var C={timestamp:+new Date()};a.each(g.extraParams,function(D,E){C[D]=typeof E=="function"?E():E});a.ajax({mode:"abort",port:"autocomplete"+l.name,dataType:g.dataType,url:g.url,data:a.extend({q:i(z),limit:g.max},C),success:function(E){var D=g.parse&&g.parse(E)||o(E);m.add(z,D);B(z,D)}})}else{r.emptyList();y(z)}}}function o(B){var y=[];var A=B.split("\n");for(var z=0;z<A.length;z++){var C=a.trim(A[z]);if(C){C=C.split("|");y[y.length]={data:C,value:C[0],result:g.formatResult&&g.formatResult(C,C[0])||C[0]}}}return y}function n(){b.removeClass(g.loadingClass)}};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(b){return b[0]},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(c,b){return c.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:true,scrollHeight:180};a.Autocompleter.Cache=function(c){var f={};var d=0;function h(l,k){if(!c.matchCase){l=l.toLowerCase()}var j=l.indexOf(k);if(j==-1){return false}return j==0||c.matchContains}function g(j,i){if(d>c.cacheLength){b()}if(!f[j]){d++}f[j]=i}function e(){if(!c.data){return false}var k={},j=0;if(!c.url){c.cacheLength=1}k[""]=[];for(var m=0,l=c.data.length;m<l;m++){var p=c.data[m];p=(typeof p=="string")?[p]:p;var o=c.formatMatch(p,m+1,c.data.length);if(o===false){continue}var n=o.charAt(0).toLowerCase();if(!k[n]){k[n]=[]}var q={value:o,data:p,result:c.formatResult&&c.formatResult(p)||o};k[n].push(q);if(j++<c.max){k[""].push(q)}}a.each(k,function(r,s){c.cacheLength++;g(r,s)})}setTimeout(e,25);function b(){f={};d=0}return{flush:b,add:g,populate:e,load:function(n){if(!c.cacheLength||!d){return null}if(!c.url&&c.matchContains){var m=[];for(var j in f){if(j.length>0){var o=f[j];a.each(o,function(p,k){if(h(k.value,n)){m.push(k)}})}}return m}else{if(f[n]){return f[n]}else{if(c.matchSubset){for(var l=n.length-1;l>=c.minChars;l--){var o=f[n.substr(0,l)];if(o){var m=[];a.each(o,function(p,k){if(h(k.value,n)){m[m.length]=k}});return m}}}}}return null}}};a.Autocompleter.Select=function(e,j,l,p){var i={ACTIVE:"ac_over"};var k,f=-1,r,m="",s=true,c,o;function n(){if(!s){return}c=a("<div/>").hide().addClass(e.resultsClass).css("position","absolute").appendTo(document.body);o=a("<ul/>").appendTo(c).mouseover(function(t){if(q(t).nodeName&&q(t).nodeName.toUpperCase()=="LI"){f=a("li",o).removeClass(i.ACTIVE).index(q(t));a(q(t)).addClass(i.ACTIVE)}}).click(function(t){a(q(t)).addClass(i.ACTIVE);l();j.focus();return false}).mousedown(function(){p.mouseDownOnSelect=true}).mouseup(function(){p.mouseDownOnSelect=false});if(e.width>0){c.css("width",e.width)}s=false}function q(u){var t=u.target;while(t&&t.tagName!="LI"){t=t.parentNode}if(!t){return[]}return t}function h(t){k.slice(f,f+1).removeClass(i.ACTIVE);g(t);var v=k.slice(f,f+1).addClass(i.ACTIVE);if(e.scroll){var u=0;k.slice(0,f).each(function(){u+=this.offsetHeight});if((u+v[0].offsetHeight-o.scrollTop())>o[0].clientHeight){o.scrollTop(u+v[0].offsetHeight-o.innerHeight())}else{if(u<o.scrollTop()){o.scrollTop(u)}}}}function g(t){f+=t;if(f<0){f=k.size()-1}else{if(f>=k.size()){f=0}}}function b(t){return e.max&&e.max<t?e.max:t}function d(){o.empty();var u=b(r.length);for(var v=0;v<u;v++){if(!r[v]){continue}var w=e.formatItem(r[v].data,v+1,u,r[v].value,m);if(w===false){continue}var t=a("<li/>").html(e.highlight(w,m)).addClass(v%2==0?"ac_even":"ac_odd").appendTo(o)[0];a.data(t,"ac_data",r[v])}k=o.find("li");if(e.selectFirst){k.slice(0,1).addClass(i.ACTIVE);f=0}if(a.fn.bgiframe){o.bgiframe()}}return{display:function(u,t){n();r=u;m=t;d()},next:function(){h(1)},prev:function(){h(-1)},pageUp:function(){if(f!=0&&f-8<0){h(-f)}else{h(-8)}},pageDown:function(){if(f!=k.size()-1&&f+8>k.size()){h(k.size()-1-f)}else{h(8)}},hide:function(){c&&c.hide();k&&k.removeClass(i.ACTIVE);f=-1},visible:function(){return c&&c.is(":visible")},current:function(){return this.visible()&&(k.filter("."+i.ACTIVE)[0]||e.selectFirst&&k[0])},show:function(){var v=a(j).offset();c.css({width:typeof e.width=="string"||e.width>0?e.width:a(j).width(),top:v.top+j.offsetHeight,left:v.left}).show();if(e.scroll){o.scrollTop(0);o.css({maxHeight:e.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var t=0;k.each(function(){t+=this.offsetHeight});var u=t>e.scrollHeight;o.css("height",u?e.scrollHeight:t);if(!u){k.width(o.width()-parseInt(k.css("padding-left"))-parseInt(k.css("padding-right")))}}}},selected:function(){var t=k&&k.filter("."+i.ACTIVE).removeClass(i.ACTIVE);return t&&t.length&&a.data(t[0],"ac_data")},emptyList:function(){o&&o.empty()},unbind:function(){c&&c.remove()}}};a.Autocompleter.Selection=function(d,e,c){if(d.setSelectionRange){d.setSelectionRange(e,c)}else{if(d.createTextRange){var b=d.createTextRange();b.collapse(true);b.moveStart("character",e);b.moveEnd("character",c);b.select()}else{if(d.selectionStart){d.selectionStart=e;d.selectionEnd=c}}}d.focus()}})(jQuery); - -var notify = function() { - var visible = false; - return { - show: function(html) { - if (html) { - $("body").css("margin-top", "2.2em"); - $(".notify span").html(html); - } - $(".notify").fadeIn("slow"); - visible = true; - }, - close: function(doPostback) { - $(".notify").fadeOut("fast"); - $("body").css("margin-top", "0"); - visible = false; - }, - isVisible: function() { return visible; } - }; -} (); - -/* - * jQuery outside events - v1.1 - 3/16/2010 - * http://benalman.com/projects/jquery-outside-events-plugin/ - * - * Copyright (c) 2010 "Cowboy" Ben Alman - * Dual licensed under the MIT and GPL licenses. - * http://benalman.com/about/license/ - */ -(function($,c,b){$.map("click dblclick mousemove mousedown mouseup mouseover mouseout change select submit keydown keypress keyup".split(" "),function(d){a(d)});a("focusin","focus"+b);a("focusout","blur"+b);$.addOutsideEvent=a;function a(g,e){e=e||g+b;var d=$(),h=g+"."+e+"-special-event";$.event.special[e]={setup:function(){d=d.add(this);if(d.length===1){$(c).bind(h,f)}},teardown:function(){d=d.not(this);if(d.length===0){$(c).unbind(h)}},add:function(i){var j=i.handler;i.handler=function(l,k){l.target=k;j.apply(this,arguments)}}};function f(i){$(d).each(function(){var j=$(this);if(this!==i.target&&!j.has(i.target).length){j.triggerHandler(e,[i.target])}})}}})(jQuery,document,"outside"); - -$(document).ready( function(){ - pickedTags().init(); - - $('input#bnewaccount').click(function() { - $('#bnewaccount').disabled=true; - }); -}); - -function yourWorkWillBeLost(e) { - if(browserTester('chrome')) { - return "Are you sure you want to leave? Your work will be lost."; - } else if(browserTester('safari')) { - return "Are you sure you want to leave? Your work will be lost."; - } else { - if(!e) e = window.event; - e.cancelBubble = true; - e.returnValue = 'If you leave, your work will be lost.'; - - if (e.stopPropagation) { - e.stopPropagation(); - e.preventDefault(); - } - return e; - } -} - -function browserTester(browserString) { - return navigator.userAgent.toLowerCase().indexOf(browserString) > -1; -} - -// Add missing IE functionality -if (!window.addEventListener) { - if (window.attachEvent) { - window.addEventListener = function (type, listener, useCapture) { - window.attachEvent('on' + type, listener); - }; - window.removeEventListener = function (type, listener, useCapture) { - window.detachEvent('on' + type, listener); - }; - } else { - window.addEventListener = function (type, listener, useCapture) { - window['on' + type] = listener; - }; - window.removeEventListener = function (type, listener, useCapture) { - window['on' + type] = null; - }; - } -} diff --git a/forum/skins/default/media/js/.svn/text-base/osqa.main.min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/osqa.main.min.js.svn-base deleted file mode 100644 index 442292610efc857ed267a541f85b3079dd211f89..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/osqa.main.min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -var response_commands={update_post_score:function(a,d,b){var c=$("#"+a+"-"+d+"-score");c.html(parseInt(c.html())+b)},update_user_post_vote:function(c,e,b){var a=$("#"+c+"-"+e+"-upvote");var d=$("#"+c+"-"+e+"-downvote");a.removeClass("on");d.removeClass("on");if(b=="up"){a.addClass("on")}else{if(b=="down"){d.addClass("on")}}},update_favorite_count:function(b){var c=$("#favorite-count");var a=parseInt(c.html());if(isNaN(a)){a=0}a+=b;if(a==0){a=""}c.html(a)},update_favorite_mark:function(a){if(a=="on"){$("#favorite-mark").addClass("on")}else{$("#favorite-mark").removeClass("on")}},mark_accepted:function(b){$(".accepted-answer").removeClass("accepted-answer");$(".accept-answer.on").removeClass("on");var a=$("#answer-container-"+b);a.addClass("accepted-answer");a.find(".accept-answer").addClass("on")},unmark_accepted:function(b){var a=$("#answer-container-"+b);a.removeClass("accepted-answer");a.find(".accept-answer").removeClass("on")},update_comment_score:function(d,b){var c=$("#comment-"+d+"-score");var a=parseInt(c.html());if(isNaN(a)){a=0}a+=b;if(a==0){a=""}c.html(a)},update_likes_comment_mark:function(c,a){var b=$("#comment-"+c+"-like");if(a=="on"){b.addClass("on")}else{b.removeClass("on")}},remove_comment:function(b){var a=$("#comment-"+b);a.css("background","red");a.fadeOut("slow",function(){a.remove()})},insert_comment:function(g,c,a,f,e,h,b){var i=$("#comments-container-"+g+"-"+c);var d=$("#new-comment-skeleton-"+g+"-"+c).html().toString();d=d.replace(new RegExp("%ID%","g"),a).replace(new RegExp("%COMMENT%","g"),f).replace(new RegExp("%USERNAME%","g"),e).replace(new RegExp("%PROFILE_URL%","g"),h).replace(new RegExp("%DELETE_URL%","g"),b);i.append(d);$("#comment-"+a).slideDown("slow")},update_comment:function(b,a){var c=$("#comment-"+b);c.find(".comment-text").html(a);c.slideDown("slow")},mark_deleted:function(b,a){if(b=="answer"){var d=$("#answer-container-"+a);d.addClass("deleted")}else{var c=$("#question-table");c.addClass("deleted")}},set_subscription_button:function(a){$(".subscription_switch").html(a)},set_subscription_status:function(a){$(".subscription-status").html(a)}};function show_message(a,b){var c=$('<div class="vote-notification"><h3>'+b+"</h3>(click to close)</div>");c.click(function(d){$(".vote-notification").fadeOut("fast",function(){$(this).remove()})});a.parent().append(c);c.fadeIn("fast")}function process_ajax_response(b,a){if(!b.success&&b.error_message!=undefined){show_message(a,b.error_message)}else{if(typeof b.commands!=undefined){for(var c in b.commands){response_commands[c].apply(null,b.commands[c])}if(b.message!=undefined){show_message(a,b.message)}}}}$(function(){$("a.ajax-command").live("click",function(){var a=$(this);$.getJSON(a.attr("href"),function(b){process_ajax_response(b,a)});return false});$("div.comment-form-container").each(function(){var l=$(this);var o=l.find("form");var g=l.find("textarea");var a=l.find('input[type="submit"]');var e=$(".comment-chars-left");var b=l.find(".comments-char-left-count");var m=l.parent().find(".comment-tools");var n=m.find(".add-comment-link");var f=l.parent().find(".comments-container");var k=parseInt(b.html());var h=false;function i(){g.val("");b.html(k);e.removeClass("warn");h=false}i();function d(){var q=g.val().length;var p=true;if(q<k){if(q<k*0.75){e.removeClass("warn")}else{e.addClass("warn")}}else{p=false}b.html(k-q);return p}function c(){l.slideDown("slow");n.fadeOut("slow")}function j(){l.slideUp("slow");n.fadeIn("slow")}n.click(function(){i();c();return false});m.find(".show-all-comments-link").click(function(){f.find(".not_top_scorer").slideDown("slow");$(this).fadeOut("slow");m.find(".comments-showing").fadeOut("slow");return false});$("#"+f.attr("id")+" .comment-edit").live("click",function(){var q=$(this);var r=/comment-(\d+)-edit/.exec(q.attr("id"))[1];var s=q.parents(".comment");var p=s.find(".comment-text").text().trim();h=r;g.val(p);d();s.slideUp("slow");c();return false});g.keyup(d);a.click(function(){if(g.val().length>k){show_message(a,"Your comment exceeds the max number of characters allowed.")}else{var p={comment:g.val()};if(h){p.id=h}$.post(o.attr("action"),p,function(q){process_ajax_response(q,a);i()},"json")}j();return false})})});function pickedTags(){var a=function(j,k,i,l){var h=scriptUrl;if(i=="add"){h+=$.i18n._("mark-tag/");if(k=="good"){h+=$.i18n._("interesting/")}else{h+=$.i18n._("ignored/")}}else{h+=$.i18n._("unmark-tag/")}h=h+j+"/";var g={type:"POST",url:h};if(l!==false){g.success=l}$.ajax(g)};var f=function(k,h,i,g){var j=function(){k[h].remove();delete k[h]};if(g){a(h,i,"remove",j)}else{j()}};var b=function(k,h,i,j,g){k.unbind("mouseover").bind("mouseover",function(){$(this).attr("src",mediaUrl("media/images/close-small-hover.png"))});k.unbind("mouseout").bind("mouseout",function(){$(this).attr("src",mediaUrl("media/images/close-small-dark.png"))});k.click(function(){f(h,i,j,g)})};var d=function(k,j){var i=$.trim($(k).prev().attr("value"));var g=interestingTags;var l=ignoredTags;var h;if(j=="bad"){g=ignoredTags;l=interestingTags;h=$("div .tags.ignored")}else{if(j!="good"){return}else{h=$("div .tags.interesting")}}if(i in l){f(l,i,j,false)}if(!(i in g)){a(i,j,"add",function(){var n=$("<span></span>");n.addClass("deletable-tag");var m=$("<a></a>");m.attr("rel","tag");m.attr("href",scriptUrl+$.i18n._("tags/")+i);m.html(i);var o=$("<img></img>");o.addClass("delete-icon");o.attr("src",mediaUrl("/media/images/close-small-dark.png"));b(o,g,i,j,true);n.append(m);n.append(o);h.append(n);g[i]=n})}};var c=function(){var g="interesting-tag-";var j="ignored-tag-";var i=RegExp("^"+g);var h=RegExp("^"+j);interestingTags={};ignoredTags={};$(".deletable-tag").each(function(l,n){var k=$(n).attr("id");var o,m;if(i.test(k)){o=k.replace(g,"");m=interestingTags;reason="good"}else{if(h.test(k)){o=k.replace(j,"");m=ignoredTags;reason="bad"}else{return}}m[o]=$(n);b($(n).find("img"),m,o,reason,true)})};var e=function(){$("#hideIgnoredTagsCb").unbind("click").click(function(){$.ajax({type:"POST",dataType:"json",cache:false,url:scriptUrl+$.i18n._("command/"),data:{command:"toggle-ignored-questions"}})})};return{init:function(){c();e();$("#interestingTagInput, #ignoredTagInput").autocomplete(tags,{minChars:1,matchContains:true,max:20,multiple:true,multipleSeparator:" ",formatItem:function(j,h,g){return j.n+" ("+j.c+")"},formatResult:function(j,h,g){return j.n}});$("#interestingTagAdd").click(function(){d(this,"good")});$("#ignoredTagAdd").click(function(){d(this,"bad")})}}}$(document).ready(function(){if(window.tags!=undefined){pickedTags().init()}});Hilite={elementid:"content",exact:true,max_nodes:1000,onload:true,style_name:"hilite",style_name_suffix:true,debug_referrer:""};Hilite.search_engines=[["local","q"],["cnprog\\.","q"],["google\\.","q"],["search\\.yahoo\\.","p"],["search\\.msn\\.","q"],["search\\.live\\.","query"],["search\\.aol\\.","userQuery"],["ask\\.com","q"],["altavista\\.","q"],["feedster\\.","q"],["search\\.lycos\\.","q"],["alltheweb\\.","q"],["technorati\\.com/search/([^\\?/]+)",1],["dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)",1,true]];Hilite.decodeReferrer=function(m){var j=null;var l=new RegExp("");for(var n=0;n<Hilite.search_engines.length;n++){var k=Hilite.search_engines[n];l.compile("^http://(www\\.)?"+k[0],"i");var h=m.match(l);if(h){var i;if(isNaN(k[1])){i=Hilite.decodeReferrerQS(m,k[1])}else{i=h[k[1]+1]}if(i){i=decodeURIComponent(i);if(k.length>2&&k[2]){i=decodeURIComponent(i)}i=i.replace(/\'|"/g,"");i=i.split(/[\s,\+\.]+/);return i}break}}return null};Hilite.decodeReferrerQS=function(k,m){var h=k.indexOf("?");var n;if(h>=0){var i=new String(k.substring(h+1));h=0;n=0;while((h>=0)&&((n=i.indexOf("=",h))>=0)){var l,j;l=i.substring(h,n);h=i.indexOf("&",n)+1;if(l==m){if(h<=0){return i.substring(n+1)}else{return i.substring(n+1,h-1)}}else{if(h<=0){return null}}}}return null};Hilite.hiliteElement=function(i,j){if(!j||i.childNodes.length==0){return}var l=new Array();for(var g=0;g<j.length;g++){j[g]=j[g].toLowerCase();if(Hilite.exact){l.push("\\b"+j[g]+"\\b")}else{l.push(j[g])}}l=new RegExp(l.join("|"),"i");var h={};for(var g=0;g<j.length;g++){if(Hilite.style_name_suffix){h[j[g]]=Hilite.style_name+(g+1)}else{h[j[g]]=Hilite.style_name}}var k=function(a){var c=l.exec(a.data);if(c){var o=c[0];var d="";var e=a.splitText(c.index);var f=e.splitText(o.length);var b=a.ownerDocument.createElement("SPAN");a.parentNode.replaceChild(b,e);b.className=h[o.toLowerCase()];b.appendChild(e);return b}else{return a}};Hilite.walkElements(i.childNodes[0],1,k)};Hilite.hilite=function(){var d=Hilite.debug_referrer?Hilite.debug_referrer:document.referrer;var c=null;d=Hilite.decodeReferrer(d);if(d&&((Hilite.elementid&&(c=document.getElementById(Hilite.elementid)))||(c=document.body))){Hilite.hiliteElement(c,d)}};Hilite.walkElements=function(k,i,j){var h=/^(script|style|textarea)/i;var l=0;while(k&&i>0){l++;if(l>=Hilite.max_nodes){var g=function(){Hilite.walkElements(k,i,j)};setTimeout(g,50);return}if(k.nodeType==1){if(!h.test(k.tagName)&&k.childNodes.length>0){k=k.childNodes[0];i++;continue}}else{if(k.nodeType==3){k=j(k)}}if(k.nextSibling){k=k.nextSibling}else{while(i>0){k=k.parentNode;i--;if(k.nextSibling){k=k.nextSibling;break}}}}};if(Hilite.onload){if(window.attachEvent){window.attachEvent("onload",Hilite.hilite)}else{if(window.addEventListener){window.addEventListener("load",Hilite.hilite,false)}else{var __onload=window.onload;window.onload=function(){Hilite.hilite();__onload()}}}}var mediaUrl=function(a){return scriptUrl+"m/"+osqaSkin+"/"+a};(function(a){a.i18n={setDictionary:function(b){b=b},_:function(d,c){var b=d;if(i18n_dict&&i18n_dict[d]){b=i18n_dict[d]}return this.printf(b,c)},toEntity:function(d){var b="";for(var c=0;c<d.length;c++){if(d.charCodeAt(c)>128){b+="&#"+d.charCodeAt(c)+";"}else{b+=d.charAt(c)}}return b},stripStr:function(b){return b.replace(/^\s*/,"").replace(/\s*$/,"")},stripStrML:function(d){var c=d.split("\n");for(var b=0;b<c.length;b++){c[b]=stripStr(c[b])}return stripStr(c.join(" "))},printf:function(e,b){if(!b){return e}var d="";var f=e.split("%s");for(var c=0;c<b.length;c++){if(f[c].lastIndexOf("%")==f[c].length-1&&c!=b.length-1){f[c]+="s"+f.splice(c+1,1)[0]}d+=f[c]+b[c]}return d+f[f.length-1]}}})(jQuery);var i18nZh={"insufficient privilege":"??????????","cannot pick own answer as best":"??????????????","anonymous users cannot select favorite questions":"?????????????","please login":"??????","anonymous users cannot vote":"????????",">15 points requried to upvote":"??+15?????????",">100 points required to downvote":"??+100?????????","please see":"??","cannot vote for own posts":"??????????","daily vote cap exhausted":"????????????????","cannot revoke old vote":"??????????????","please confirm offensive":"??????????????????????","anonymous users cannot flag offensive posts":"???????????","cannot flag message as offensive twice":"???????","flag offensive cap exhausted":"?????????????5?�??�???","need >15 points to report spam":"??+15??????�???�?","confirm delete":"?????/????????","anonymous users cannot delete/undelete":"???????????????","post recovered":"?????????????","post deleted":"????????????","add comment":"????","community karma points":"????","to comment, need":"????","delete this comment":"?????","hide comments":"????","add a comment":"????",comments:"??","confirm delete comment":"?????????",characters:"??","can write":"???","click to close":"???????","loading...":"???...","tags cannot be empty":"???????","tablimits info":"??5????????????20????","content cannot be empty":"???????","content minchars":"????? {0} ???","please enter title":"??????","title minchars":"????? {0} ???","delete":"??",undelete:"??",bold:"??",italic:"??",link:"???",quote:"??","preformatted text":"??",image:"??","numbered list":"??????","bulleted list":"??????",heading:"??","horizontal bar":"???",undo:"??",redo:"??","enter image url":'<b>??????</b></p><p>???<br />http://www.example.com/image.jpg "????"',"enter url":'<b>??Web??</b></p><p>???<br />http://www.cnprog.com/ "????"</p>"',"upload image":"?????????"};var i18nEn={"need >15 points to report spam":"need >15 points to report spam ",">15 points requried to upvote":">15 points required to upvote ","tags cannot be empty":"please enter at least one tag","anonymous users cannot vote":"sorry, anonymous users cannot vote ","anonymous users cannot select favorite questions":"sorry, anonymous users cannot select favorite questions ","to comment, need":"(to comment other people's posts, karma ","please see":"please see ","community karma points":" or more is necessary) - ","upload image":"Upload image:","enter image url":'enter URL of the image, e.g. http://www.example.com/image.jpg "image title"',"enter url":'enter Web address, e.g. http://www.example.com "page title"',"daily vote cap exhausted":"sorry, you've used up todays vote cap","cannot pick own answer as best":"sorry, you cannot accept your own answer","cannot revoke old vote":"sorry, older votes cannot be revoked","please confirm offensive":"are you sure this post is offensive, contains spam, advertising, malicious remarks, etc.?","flag offensive cap exhausted":"sorry, you've used up todays cap of flagging offensive messages ","confirm delete":"are you sure you want to delete this?","anonymous users cannot delete/undelete":"sorry, anonymous users cannot delete or undelete posts","post recovered":"your post is now restored!","post deleted":"your post has been deleted","confirm delete comment":"do you really want to delete this comment?","can write":"have ","tablimits info":"up to 5 tags, no more than 20 characters each","content minchars":"please enter more than {0} characters","title minchars":"please enter at least {0} characters",characters:"characters left","cannot vote for own posts":"sorry, you cannot vote for your own posts","cannot flag message as offensive twice":"cannot flag message as offensive twice ",">100 points required to downvote":">100 points required to downvote "};var i18nEs={"insufficient privilege":"privilegio insuficiente","cannot pick own answer as best":"no puede escoger su propia respuesta como la mejor","anonymous users cannot select favorite questions":"usuarios anonimos no pueden seleccionar","please login":"por favor inicie sesi�n","anonymous users cannot vote":"usuarios an�nimos no pueden votar",">15 points requried to upvote":">15 puntos requeridos para votar positivamente",">100 points required to downvote":">100 puntos requeridos para votar negativamente","please see":"por favor vea","cannot vote for own posts":"no se puede votar por sus propias publicaciones","daily vote cap exhausted":"cuota de votos diarios excedida","cannot revoke old vote":"no puede revocar un voto viejo","please confirm offensive":"por favor confirme ofensiva","anonymous users cannot flag offensive posts":"usuarios an�nimos no pueden marcar publicaciones como ofensivas","cannot flag message as offensive twice":"no puede marcar mensaje como ofensivo dos veces","flag offensive cap exhausted":"cuota para marcar ofensivas ha sido excedida","need >15 points to report spam":"necesita >15 puntos para reportar spam","confirm delete":"�Est� seguro que desea borrar esto?","anonymous users cannot delete/undelete":"usuarios an�nimos no pueden borrar o recuperar publicaciones","post recovered":"publicaci�n recuperada","post deleted":"publicaci�n borrada?","add comment":"agregar comentario","community karma points":"reputaci�n comunitaria","to comment, need":"para comentar, necesita reputaci�n","delete this comment":"borrar este comentario","hide comments":"ocultar comentarios","add a comment":"agregar comentarios",comments:"comentarios","confirm delete comment":"�Realmente desea borrar este comentario?",characters:"caracteres faltantes","can write":"tiene ","click to close":"haga click para cerrar","loading...":"cargando...","tags cannot be empty":"las etiquetas no pueden estar vac�as","tablimits info":"hasta 5 etiquetas de no mas de 20 caracteres cada una","content cannot be empty":"el contenido no puede estar vac�o","content minchars":"por favor introduzca mas de {0} caracteres","please enter title":"por favor ingrese un t�tulo","title minchars":"por favor introduzca al menos {0} caracteres","delete":"borrar",undelete:"recuperar",bold:"negrita",italic:"cursiva",link:"enlace",quote:"citar","preformatted text":"texto preformateado",image:"imagen","numbered list":"lista numerada","bulleted list":"lista no numerada",heading:"??","horizontal bar":"barra horizontal",undo:"deshacer",redo:"rehacer","enter image url":'introduzca la URL de la imagen, por ejemplo?<br />http://www.example.com/image.jpg "titulo de imagen"',"enter url":'introduzca direcciones web, ejemplo?<br />http://www.cnprog.com/ "titulo del enlace"</p>"',"upload image":"cargar imagen?","questions/":"preguntas/","vote/":"votar/"};var i18n={en:i18nEn,zh_CN:i18nZh,es:i18nEs};var i18n_dict=i18n[i18nLang];(function(c){var h,i;var d=0;var a=32;var e;c.fn.TextAreaResizer=function(){return this.each(function(){h=c(this).addClass("processed"),i=null;c(this).wrap('<div class="resizable-textarea"><span></span></div>').parent().append(c('<div class="grippie"></div>').bind("mousedown",{el:this},b));var k=c("div.grippie",c(this).parent())[0];k.style.marginRight=(k.offsetWidth-c(this)[0].offsetWidth)+"px"})};function b(k){h=c(k.data.el);h.blur();d=j(k).y;i=h.height()-d;h.css("opacity",0.25);c(document).mousemove(g).mouseup(f);return false}function g(m){var k=j(m).y;var l=i+k;if(d>=(k)){l-=5}d=k;l=Math.max(a,l);h.height(l+"px");if(l<a){f(m)}return false}function f(k){c(document).unbind("mousemove",g).unbind("mouseup",f);h.css("opacity",1);h.focus();h=null;i=null;d=0}function j(k){return{x:k.clientX+document.documentElement.scrollLeft,y:k.clientY+document.documentElement.scrollTop}}})(jQuery);(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(e){return e};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(b){return this.bind("result",b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(l,g){var c={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var b=a(l).attr("autocomplete","off").addClass(g.inputClass);var j;var p="";var m=a.Autocompleter.Cache(g);var e=0;var u;var x={mouseDownOnSelect:false};var r=a.Autocompleter.Select(g,l,d,x);var w;a.browser.opera&&a(l.form).bind("submit.autocomplete",function(){if(w){w=false;return false}});b.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(y){u=y.keyCode;switch(y.keyCode){case c.UP:y.preventDefault();if(r.visible()){r.prev()}else{t(0,true)}break;case c.DOWN:y.preventDefault();if(r.visible()){r.next()}else{t(0,true)}break;case c.PAGEUP:y.preventDefault();if(r.visible()){r.pageUp()}else{t(0,true)}break;case c.PAGEDOWN:y.preventDefault();if(r.visible()){r.pageDown()}else{t(0,true)}break;case g.multiple&&a.trim(g.multipleSeparator)==","&&c.COMMA:case c.TAB:case c.RETURN:if(d()){y.preventDefault();w=true;return false}break;case c.ESC:r.hide();break;default:clearTimeout(j);j=setTimeout(t,g.delay);break}}).focus(function(){e++}).blur(function(){e=0;if(!x.mouseDownOnSelect){s()}}).click(function(){if(e++>1&&!r.visible()){t(0,true)}}).bind("search",function(){var y=(arguments.length>1)?arguments[1]:null;function z(D,C){var A;if(C&&C.length){for(var B=0;B<C.length;B++){if(C[B].result.toLowerCase()==D.toLowerCase()){A=C[B];break}}}if(typeof y=="function"){y(A)}else{b.trigger("result",A&&[A.data,A.value])}}a.each(h(b.val()),function(A,B){f(B,z,z)})}).bind("flushCache",function(){m.flush()}).bind("setOptions",function(){a.extend(g,arguments[1]);if("data" in arguments[1]){m.populate()}}).bind("unautocomplete",function(){r.unbind();b.unbind();a(l.form).unbind(".autocomplete")});function d(){var z=r.selected();if(!z){return false}var y=z.result;p=y;if(g.multiple){var A=h(b.val());if(A.length>1){y=A.slice(0,A.length-1).join(g.multipleSeparator)+g.multipleSeparator+y}y+=g.multipleSeparator}b.val(y);v();b.trigger("result",[z.data,z.value]);return true}function t(A,z){if(u==c.DEL){r.hide();return}var y=b.val();if(!z&&y==p){return}p=y;y=i(y);if(y.length>=g.minChars){b.addClass(g.loadingClass);if(!g.matchCase){y=y.toLowerCase()}f(y,k,v)}else{n();r.hide()}}function h(z){if(!z){return[""]}var A=z.split(g.multipleSeparator);var y=[];a.each(A,function(B,C){if(a.trim(C)){y[B]=a.trim(C)}});return y}function i(y){if(!g.multiple){return y}var z=h(y);return z[z.length-1]}function q(y,z){if(g.autoFill&&(i(b.val()).toLowerCase()==y.toLowerCase())&&u!=c.BACKSPACE){b.val(b.val()+z.substring(i(p).length));a.Autocompleter.Selection(l,p.length,p.length+z.length)}}function s(){clearTimeout(j);j=setTimeout(v,200)}function v(){var y=r.visible();r.hide();clearTimeout(j);n();if(g.mustMatch){b.search(function(z){if(!z){if(g.multiple){var A=h(b.val()).slice(0,-1);b.val(A.join(g.multipleSeparator)+(A.length?g.multipleSeparator:""))}else{b.val("")}}})}if(y){a.Autocompleter.Selection(l,l.value.length,l.value.length)}}function k(z,y){if(y&&y.length&&e){n();r.display(y,z);q(z,y[0].value);r.show()}else{v()}}function f(z,B,y){if(!g.matchCase){z=z.toLowerCase()}var A=m.load(z);if(A&&A.length){B(z,A)}else{if((typeof g.url=="string")&&(g.url.length>0)){var C={timestamp:+new Date()};a.each(g.extraParams,function(D,E){C[D]=typeof E=="function"?E():E});a.ajax({mode:"abort",port:"autocomplete"+l.name,dataType:g.dataType,url:g.url,data:a.extend({q:i(z),limit:g.max},C),success:function(E){var D=g.parse&&g.parse(E)||o(E);m.add(z,D);B(z,D)}})}else{r.emptyList();y(z)}}}function o(B){var y=[];var A=B.split("\n");for(var z=0;z<A.length;z++){var C=a.trim(A[z]);if(C){C=C.split("|");y[y.length]={data:C,value:C[0],result:g.formatResult&&g.formatResult(C,C[0])||C[0]}}}return y}function n(){b.removeClass(g.loadingClass)}};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(b){return b[0]},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(c,b){return c.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:true,scrollHeight:180};a.Autocompleter.Cache=function(c){var f={};var d=0;function h(l,k){if(!c.matchCase){l=l.toLowerCase()}var j=l.indexOf(k);if(j==-1){return false}return j==0||c.matchContains}function g(j,i){if(d>c.cacheLength){b()}if(!f[j]){d++}f[j]=i}function e(){if(!c.data){return false}var k={},j=0;if(!c.url){c.cacheLength=1}k[""]=[];for(var m=0,l=c.data.length;m<l;m++){var p=c.data[m];p=(typeof p=="string")?[p]:p;var o=c.formatMatch(p,m+1,c.data.length);if(o===false){continue}var n=o.charAt(0).toLowerCase();if(!k[n]){k[n]=[]}var q={value:o,data:p,result:c.formatResult&&c.formatResult(p)||o};k[n].push(q);if(j++<c.max){k[""].push(q)}}a.each(k,function(r,s){c.cacheLength++;g(r,s)})}setTimeout(e,25);function b(){f={};d=0}return{flush:b,add:g,populate:e,load:function(n){if(!c.cacheLength||!d){return null}if(!c.url&&c.matchContains){var m=[];for(var j in f){if(j.length>0){var o=f[j];a.each(o,function(p,k){if(h(k.value,n)){m.push(k)}})}}return m}else{if(f[n]){return f[n]}else{if(c.matchSubset){for(var l=n.length-1;l>=c.minChars;l--){var o=f[n.substr(0,l)];if(o){var m=[];a.each(o,function(p,k){if(h(k.value,n)){m[m.length]=k}});return m}}}}}return null}}};a.Autocompleter.Select=function(e,j,l,p){var i={ACTIVE:"ac_over"};var k,f=-1,r,m="",s=true,c,o;function n(){if(!s){return}c=a("<div/>").hide().addClass(e.resultsClass).css("position","absolute").appendTo(document.body);o=a("<ul/>").appendTo(c).mouseover(function(t){if(q(t).nodeName&&q(t).nodeName.toUpperCase()=="LI"){f=a("li",o).removeClass(i.ACTIVE).index(q(t));a(q(t)).addClass(i.ACTIVE)}}).click(function(t){a(q(t)).addClass(i.ACTIVE);l();j.focus();return false}).mousedown(function(){p.mouseDownOnSelect=true}).mouseup(function(){p.mouseDownOnSelect=false});if(e.width>0){c.css("width",e.width)}s=false}function q(u){var t=u.target;while(t&&t.tagName!="LI"){t=t.parentNode}if(!t){return[]}return t}function h(t){k.slice(f,f+1).removeClass(i.ACTIVE);g(t);var v=k.slice(f,f+1).addClass(i.ACTIVE);if(e.scroll){var u=0;k.slice(0,f).each(function(){u+=this.offsetHeight});if((u+v[0].offsetHeight-o.scrollTop())>o[0].clientHeight){o.scrollTop(u+v[0].offsetHeight-o.innerHeight())}else{if(u<o.scrollTop()){o.scrollTop(u)}}}}function g(t){f+=t;if(f<0){f=k.size()-1}else{if(f>=k.size()){f=0}}}function b(t){return e.max&&e.max<t?e.max:t}function d(){o.empty();var u=b(r.length);for(var v=0;v<u;v++){if(!r[v]){continue}var w=e.formatItem(r[v].data,v+1,u,r[v].value,m);if(w===false){continue}var t=a("<li/>").html(e.highlight(w,m)).addClass(v%2==0?"ac_even":"ac_odd").appendTo(o)[0];a.data(t,"ac_data",r[v])}k=o.find("li");if(e.selectFirst){k.slice(0,1).addClass(i.ACTIVE);f=0}if(a.fn.bgiframe){o.bgiframe()}}return{display:function(u,t){n();r=u;m=t;d()},next:function(){h(1)},prev:function(){h(-1)},pageUp:function(){if(f!=0&&f-8<0){h(-f)}else{h(-8)}},pageDown:function(){if(f!=k.size()-1&&f+8>k.size()){h(k.size()-1-f)}else{h(8)}},hide:function(){c&&c.hide();k&&k.removeClass(i.ACTIVE);f=-1},visible:function(){return c&&c.is(":visible")},current:function(){return this.visible()&&(k.filter("."+i.ACTIVE)[0]||e.selectFirst&&k[0])},show:function(){var v=a(j).offset();c.css({width:typeof e.width=="string"||e.width>0?e.width:a(j).width(),top:v.top+j.offsetHeight,left:v.left}).show();if(e.scroll){o.scrollTop(0);o.css({maxHeight:e.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var t=0;k.each(function(){t+=this.offsetHeight});var u=t>e.scrollHeight;o.css("height",u?e.scrollHeight:t);if(!u){k.width(o.width()-parseInt(k.css("padding-left"))-parseInt(k.css("padding-right")))}}}},selected:function(){var t=k&&k.filter("."+i.ACTIVE).removeClass(i.ACTIVE);return t&&t.length&&a.data(t[0],"ac_data")},emptyList:function(){o&&o.empty()},unbind:function(){c&&c.remove()}}};a.Autocompleter.Selection=function(d,e,c){if(d.createTextRange){var b=d.createTextRange();b.collapse(true);b.moveStart("character",e);b.moveEnd("character",c);b.select()}else{if(d.setSelectionRange){d.setSelectionRange(e,c)}else{if(d.selectionStart){d.selectionStart=e;d.selectionEnd=c}}}d.focus()}})(jQuery);var notify=function(){var a=false;return{show:function(b){if(b){$("body").css("margin-top","2.2em");$(".notify span").html(b)}$(".notify").fadeIn("slow");a=true},close:function(b){if(b){$.post(scriptUrl+$.i18n._("messages/")+$.i18n._("markread/"),{formdata:"required"})}$(".notify").fadeOut("fast");$("body").css("margin-top","0");a=false},isVisible:function(){return a}}}(); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/osqa.question.js.svn-base b/forum/skins/default/media/js/.svn/text-base/osqa.question.js.svn-base deleted file mode 100644 index 38347d5b75ee16b5731e754c61dd822e0866362c..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/osqa.question.js.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -$(function () { - $('div#editor_side_bar').hide(); - - $('#editor').focus(function(){ $('div#editor_side_bar').fadeIn('slow') }); - $('#editor').blur(function(){ $('div#editor_side_bar').fadeOut('slow') }); -}); diff --git a/forum/skins/default/media/js/.svn/text-base/se_hilite.js.svn-base b/forum/skins/default/media/js/.svn/text-base/se_hilite.js.svn-base deleted file mode 100644 index 42e99c8e8f74380e8fea68494d1284d0938198d6..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/se_hilite.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -Hilite={elementid:"content",exact:true,max_nodes:1000,onload:true,style_name:"hilite",style_name_suffix:true,debug_referrer:""};Hilite.search_engines=[["google\\.","q"],["search\\.yahoo\\.","p"],["search\\.msn\\.","q"],["search\\.live\\.","query"],["search\\.aol\\.","userQuery"],["ask\\.com","q"],["altavista\\.","q"],["feedster\\.","q"],["search\\.lycos\\.","q"],["alltheweb\\.","q"],["technorati\\.com/search/([^\\?/]+)",1],["dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)",1,true]];Hilite.decodeReferrer=function(d){var g=null;var e=new RegExp("");for(var c=0;c<Hilite.search_engines.length;c++){var f=Hilite.search_engines[c];e.compile("^http://(www\\.)?"+f[0],"i");var b=d.match(e);if(b){var a;if(isNaN(f[1])){a=Hilite.decodeReferrerQS(d,f[1])}else{a=b[f[1]+1]}if(a){a=decodeURIComponent(a);if(f.length>2&&f[2]){a=decodeURIComponent(a)}a=a.replace(/\'|"/g,"");a=a.split(/[\s,\+\.]+/);return a}break}}return null};Hilite.decodeReferrerQS=function(f,d){var b=f.indexOf("?");var c;if(b>=0){var a=new String(f.substring(b+1));b=0;c=0;while((b>=0)&&((c=a.indexOf("=",b))>=0)){var e,g;e=a.substring(b,c);b=a.indexOf("&",c)+1;if(e==d){if(b<=0){return a.substring(c+1)}else{return a.substring(c+1,b-1)}}else{if(b<=0){return null}}}}return null};Hilite.hiliteElement=function(f,e){if(!e||f.childNodes.length==0){return}var c=new Array();for(var b=0;b<e.length;b++){e[b]=e[b].toLowerCase();if(Hilite.exact){c.push("\\b"+e[b]+"\\b")}else{c.push(e[b])}}c=new RegExp(c.join("|"),"i");var a={};for(var b=0;b<e.length;b++){if(Hilite.style_name_suffix){a[e[b]]=Hilite.style_name+(b+1)}else{a[e[b]]=Hilite.style_name}}var d=function(m){var j=c.exec(m.data);if(j){var n=j[0];var i="";var h=m.splitText(j.index);var g=h.splitText(n.length);var l=m.ownerDocument.createElement("SPAN");m.parentNode.replaceChild(l,h);l.className=a[n.toLowerCase()];l.appendChild(h);return l}else{return m}};Hilite.walkElements(f.childNodes[0],1,d)};Hilite.hilite=function(){var a=Hilite.debug_referrer?Hilite.debug_referrer:document.referrer;var b=null;a=Hilite.decodeReferrer(a);if(a&&((Hilite.elementid&&(b=document.getElementById(Hilite.elementid)))||(b=document.body))){Hilite.hiliteElement(b,a)}};Hilite.walkElements=function(d,f,e){var a=/^(script|style|textarea)/i;var c=0;while(d&&f>0){c++;if(c>=Hilite.max_nodes){var b=function(){Hilite.walkElements(d,f,e)};setTimeout(b,50);return}if(d.nodeType==1){if(!a.test(d.tagName)&&d.childNodes.length>0){d=d.childNodes[0];f++;continue}}else{if(d.nodeType==3){d=e(d)}}if(d.nextSibling){d=d.nextSibling}else{while(f>0){d=d.parentNode;f--;if(d.nextSibling){d=d.nextSibling;break}}}}};if(Hilite.onload){if(window.attachEvent){window.attachEvent("onload",Hilite.hilite)}else{if(window.addEventListener){window.addEventListener("load",Hilite.hilite,false)}else{var __onload=window.onload;window.onload=function(){Hilite.hilite();__onload()}}}}; \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/se_hilite_src.js.svn-base b/forum/skins/default/media/js/.svn/text-base/se_hilite_src.js.svn-base deleted file mode 100644 index b604f15639685cdc4f5e1af7c8d16834451d3931..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/se_hilite_src.js.svn-base +++ /dev/null @@ -1,273 +0,0 @@ -/** - * Search Engine Keyword Highlight (http://fucoder.com/code/se-hilite/) - * - * This module can be imported by any HTML page, and it would analyse the - * referrer for search engine keywords, and then highlight those keywords on - * the page, by wrapping them around <span class="hilite">...</span> tags. - * Document can then define styles else where to provide visual feedbacks. - * - * Usage: - * - * In HTML. Add the following line towards the end of the document. - * - * <script type="text/javascript" src="se_hilite.js"></script> - * - * In CSS, define the following style: - * - * .hilite { background-color: #ff0; } - * - * If Hilite.style_name_suffix is true, then define the follow styles: - * - * .hilite1 { background-color: #ff0; } - * .hilite2 { background-color: #f0f; } - * .hilite3 { background-color: #0ff; } - * .hilite4 ... - * - * @author Scott Yang <http://scott.yang.id.au/> - * @version 1.5 - */ - -// Configuration: -Hilite = { - /** - * Element ID to be highlighted. If set, then only content inside this DOM - * element will be highlighted, otherwise everything inside document.body - * will be searched. - */ - elementid: 'content', - - /** - * Whether we are matching an exact word. For example, searching for - * "highlight" will only match "highlight" but not "highlighting" if exact - * is set to true. - */ - exact: true, - - /** - * Maximum number of DOM nodes to test, before handing the control back to - * the GUI thread. This prevents locking up the UI when parsing and - * replacing inside a large document. - */ - max_nodes: 1000, - - /** - * Whether to automatically hilite a section of the HTML document, by - * binding the "Hilite.hilite()" to window.onload() event. If this - * attribute is set to false, you can still manually trigger the hilite by - * calling Hilite.hilite() in Javascript after document has been fully - * loaded. - */ - onload: true, - - /** - * Name of the style to be used. Default to 'hilite'. - */ - style_name: 'hilite', - - /** - * Whether to use different style names for different search keywords by - * appending a number starting from 1, i.e. hilite1, hilite2, etc. - */ - style_name_suffix: true, - - /** - * Set it to override the document.referrer string. Used for debugging - * only. - */ - debug_referrer: '' -}; - -Hilite.search_engines = [ - ['google\\.', 'q'], // Google - ['search\\.yahoo\\.', 'p'], // Yahoo - ['search\\.msn\\.', 'q'], // MSN - ['search\\.live\\.', 'query'], // MSN Live - ['search\\.aol\\.', 'userQuery'], // AOL - ['ask\\.com', 'q'], // Ask.com - ['altavista\\.', 'q'], // AltaVista - ['feedster\\.', 'q'], // Feedster - ['search\\.lycos\\.', 'q'], // Lycos - ['alltheweb\\.', 'q'], // AllTheWeb - ['technorati\\.com/search/([^\\?/]+)', 1], // Technorati - ['dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)', 1, true] // DogPile -]; - -/** - * Decode the referrer string and return a list of search keywords. - */ -Hilite.decodeReferrer = function(referrer) { - var query = null; - var regex = new RegExp(''); - - for (var i = 0; i < Hilite.search_engines.length; i ++) { - var se = Hilite.search_engines[i]; - regex.compile('^http://(www\\.)?' + se[0], 'i'); - var match = referrer.match(regex); - if (match) { - var result; - if (isNaN(se[1])) { - result = Hilite.decodeReferrerQS(referrer, se[1]); - } else { - result = match[se[1] + 1]; - } - if (result) { - result = decodeURIComponent(result); - // XXX: DogPile's URI requires decoding twice. - if (se.length > 2 && se[2]) - result = decodeURIComponent(result); - result = result.replace(/\'|"/g, ''); - result = result.split(/[\s,\+\.]+/); - return result; - } - break; - } - } - return null; -}; - -Hilite.decodeReferrerQS = function(referrer, match) { - var idx = referrer.indexOf('?'); - var idx2; - if (idx >= 0) { - var qs = new String(referrer.substring(idx + 1)); - idx = 0; - idx2 = 0; - while ((idx >= 0) && ((idx2 = qs.indexOf('=', idx)) >= 0)) { - var key, val; - key = qs.substring(idx, idx2); - idx = qs.indexOf('&', idx2) + 1; - if (key == match) { - if (idx <= 0) { - return qs.substring(idx2+1); - } else { - return qs.substring(idx2+1, idx - 1); - } - } - else if (idx <=0) { - return null; - } - } - } - return null; -}; - -/** - * Highlight a DOM element with a list of keywords. - */ -Hilite.hiliteElement = function(elm, query) { - if (!query || elm.childNodes.length == 0) - return; - - var qre = new Array(); - for (var i = 0; i < query.length; i ++) { - query[i] = query[i].toLowerCase(); - if (Hilite.exact) - qre.push('\\b'+query[i]+'\\b'); - else - qre.push(query[i]); - } - - qre = new RegExp(qre.join("|"), "i"); - - var stylemapper = {}; - for (var i = 0; i < query.length; i ++) { - if (Hilite.style_name_suffix) - stylemapper[query[i]] = Hilite.style_name+(i+1); - else - stylemapper[query[i]] = Hilite.style_name; - } - - var textproc = function(node) { - var match = qre.exec(node.data); - if (match) { - var val = match[0]; - var k = ''; - var node2 = node.splitText(match.index); - var node3 = node2.splitText(val.length); - var span = node.ownerDocument.createElement('SPAN'); - node.parentNode.replaceChild(span, node2); - span.className = stylemapper[val.toLowerCase()]; - span.appendChild(node2); - return span; - } else { - return node; - } - }; - Hilite.walkElements(elm.childNodes[0], 1, textproc); -}; - -/** - * Highlight a HTML document using keywords extracted from document.referrer. - * This is the main function to be called to perform search engine highlight - * on a document. - * - * Currently it would check for DOM element 'content', element 'container' and - * then document.body in that order, so it only highlights appropriate section - * on WordPress and Movable Type pages. - */ -Hilite.hilite = function() { - // If 'debug_referrer' then we will use that as our referrer string - // instead. - var q = Hilite.debug_referrer ? Hilite.debug_referrer : document.referrer; - var e = null; - q = Hilite.decodeReferrer(q); - if (q && ((Hilite.elementid && - (e = document.getElementById(Hilite.elementid))) || - (e = document.body))) - { - Hilite.hiliteElement(e, q); - } -}; - -Hilite.walkElements = function(node, depth, textproc) { - var skipre = /^(script|style|textarea)/i; - var count = 0; - while (node && depth > 0) { - count ++; - if (count >= Hilite.max_nodes) { - var handler = function() { - Hilite.walkElements(node, depth, textproc); - }; - setTimeout(handler, 50); - return; - } - - if (node.nodeType == 1) { // ELEMENT_NODE - if (!skipre.test(node.tagName) && node.childNodes.length > 0) { - node = node.childNodes[0]; - depth ++; - continue; - } - } else if (node.nodeType == 3) { // TEXT_NODE - node = textproc(node); - } - - if (node.nextSibling) { - node = node.nextSibling; - } else { - while (depth > 0) { - node = node.parentNode; - depth --; - if (node.nextSibling) { - node = node.nextSibling; - break; - } - } - } - } -}; - -// Trigger the highlight using the onload handler. -if (Hilite.onload) { - if (window.attachEvent) { - window.attachEvent('onload', Hilite.hilite); - } else if (window.addEventListener) { - window.addEventListener('load', Hilite.hilite, false); - } else { - var __onload = window.onload; - window.onload = function() { - Hilite.hilite(); - __onload(); - }; - } -} diff --git a/forum/skins/default/media/js/.svn/text-base/ui.core.js.svn-base b/forum/skins/default/media/js/.svn/text-base/ui.core.js.svn-base deleted file mode 100644 index 5493e0aeb443bfd39dfcce0ae6a3087ee631cd7b..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/ui.core.js.svn-base +++ /dev/null @@ -1,519 +0,0 @@ -/* - * jQuery UI 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -;jQuery.ui || (function($) { - -var _remove = $.fn.remove, - isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); - -//Helper functions and ui object -$.ui = { - version: "1.7.2", - - // $.ui.plugin is deprecated. Use the proxy pattern instead. - plugin: { - add: function(module, option, set) { - var proto = $.ui[module].prototype; - for(var i in set) { - proto.plugins[i] = proto.plugins[i] || []; - proto.plugins[i].push([option, set[i]]); - } - }, - call: function(instance, name, args) { - var set = instance.plugins[name]; - if(!set || !instance.element[0].parentNode) { return; } - - for (var i = 0; i < set.length; i++) { - if (instance.options[set[i][0]]) { - set[i][1].apply(instance.element, args); - } - } - } - }, - - contains: function(a, b) { - return document.compareDocumentPosition - ? a.compareDocumentPosition(b) & 16 - : a !== b && a.contains(b); - }, - - hasScroll: function(el, a) { - - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ($(el).css('overflow') == 'hidden') { return false; } - - var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop', - has = false; - - if (el[scroll] > 0) { return true; } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[scroll] = 1; - has = (el[scroll] > 0); - el[scroll] = 0; - return has; - }, - - isOverAxis: function(x, reference, size) { - //Determines when x coordinate is over "b" element axis - return (x > reference) && (x < (reference + size)); - }, - - isOver: function(y, x, top, left, height, width) { - //Determines when x, y coordinates is over "b" element - return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width); - }, - - keyCode: { - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38 - } -}; - -// WAI-ARIA normalization -if (isFF2) { - var attr = $.attr, - removeAttr = $.fn.removeAttr, - ariaNS = "http://www.w3.org/2005/07/aaa", - ariaState = /^aria-/, - ariaRole = /^wairole:/; - - $.attr = function(elem, name, value) { - var set = value !== undefined; - - return (name == 'role' - ? (set - ? attr.call(this, elem, name, "wairole:" + value) - : (attr.apply(this, arguments) || "").replace(ariaRole, "")) - : (ariaState.test(name) - ? (set - ? elem.setAttributeNS(ariaNS, - name.replace(ariaState, "aaa:"), value) - : attr.call(this, elem, name.replace(ariaState, "aaa:"))) - : attr.apply(this, arguments))); - }; - - $.fn.removeAttr = function(name) { - return (ariaState.test(name) - ? this.each(function() { - this.removeAttributeNS(ariaNS, name.replace(ariaState, "")); - }) : removeAttr.call(this, name)); - }; -} - -//jQuery plugins -$.fn.extend({ - remove: function() { - // Safari has a native remove event which actually removes DOM elements, - // so we have to use triggerHandler instead of trigger (#3037). - $("*", this).add(this).each(function() { - $(this).triggerHandler("remove"); - }); - return _remove.apply(this, arguments ); - }, - - enableSelection: function() { - return this - .attr('unselectable', 'off') - .css('MozUserSelect', '') - .unbind('selectstart.ui'); - }, - - disableSelection: function() { - return this - .attr('unselectable', 'on') - .css('MozUserSelect', 'none') - .bind('selectstart.ui', function() { return false; }); - }, - - scrollParent: function() { - var scrollParent; - if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } - - return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent; - } -}); - - -//Additional selectors -$.extend($.expr[':'], { - data: function(elem, i, match) { - return !!$.data(elem, match[3]); - }, - - focusable: function(element) { - var nodeName = element.nodeName.toLowerCase(), - tabIndex = $.attr(element, 'tabindex'); - return (/input|select|textarea|button|object/.test(nodeName) - ? !element.disabled - : 'a' == nodeName || 'area' == nodeName - ? element.href || !isNaN(tabIndex) - : !isNaN(tabIndex)) - // the element and all of its ancestors must be visible - // the browser may report that the area is hidden - && !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length; - }, - - tabbable: function(element) { - var tabIndex = $.attr(element, 'tabindex'); - return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable'); - } -}); - - -// $.widget is a factory to create jQuery plugins -// taking some boilerplate code out of the plugin code -function getter(namespace, plugin, method, args) { - function getMethods(type) { - var methods = $[namespace][plugin][type] || []; - return (typeof methods == 'string' ? methods.split(/,?\s+/) : methods); - } - - var methods = getMethods('getter'); - if (args.length == 1 && typeof args[0] == 'string') { - methods = methods.concat(getMethods('getterSetter')); - } - return ($.inArray(method, methods) != -1); -} - -$.widget = function(name, prototype) { - var namespace = name.split(".")[0]; - name = name.split(".")[1]; - - // create plugin method - $.fn[name] = function(options) { - var isMethodCall = (typeof options == 'string'), - args = Array.prototype.slice.call(arguments, 1); - - // prevent calls to internal methods - if (isMethodCall && options.substring(0, 1) == '_') { - return this; - } - - // handle getter methods - if (isMethodCall && getter(namespace, name, options, args)) { - var instance = $.data(this[0], name); - return (instance ? instance[options].apply(instance, args) - : undefined); - } - - // handle initialization and non-getter methods - return this.each(function() { - var instance = $.data(this, name); - - // constructor - (!instance && !isMethodCall && - $.data(this, name, new $[namespace][name](this, options))._init()); - - // method call - (instance && isMethodCall && $.isFunction(instance[options]) && - instance[options].apply(instance, args)); - }); - }; - - // create widget constructor - $[namespace] = $[namespace] || {}; - $[namespace][name] = function(element, options) { - var self = this; - - this.namespace = namespace; - this.widgetName = name; - this.widgetEventPrefix = $[namespace][name].eventPrefix || name; - this.widgetBaseClass = namespace + '-' + name; - - this.options = $.extend({}, - $.widget.defaults, - $[namespace][name].defaults, - $.metadata && $.metadata.get(element)[name], - options); - - this.element = $(element) - .bind('setData.' + name, function(event, key, value) { - if (event.target == element) { - return self._setData(key, value); - } - }) - .bind('getData.' + name, function(event, key) { - if (event.target == element) { - return self._getData(key); - } - }) - .bind('remove', function() { - return self.destroy(); - }); - }; - - // add widget prototype - $[namespace][name].prototype = $.extend({}, $.widget.prototype, prototype); - - // TODO: merge getter and getterSetter properties from widget prototype - // and plugin prototype - $[namespace][name].getterSetter = 'option'; -}; - -$.widget.prototype = { - _init: function() {}, - destroy: function() { - this.element.removeData(this.widgetName) - .removeClass(this.widgetBaseClass + '-disabled' + ' ' + this.namespace + '-state-disabled') - .removeAttr('aria-disabled'); - }, - - option: function(key, value) { - var options = key, - self = this; - - if (typeof key == "string") { - if (value === undefined) { - return this._getData(key); - } - options = {}; - options[key] = value; - } - - $.each(options, function(key, value) { - self._setData(key, value); - }); - }, - _getData: function(key) { - return this.options[key]; - }, - _setData: function(key, value) { - this.options[key] = value; - - if (key == 'disabled') { - this.element - [value ? 'addClass' : 'removeClass']( - this.widgetBaseClass + '-disabled' + ' ' + - this.namespace + '-state-disabled') - .attr("aria-disabled", value); - } - }, - - enable: function() { - this._setData('disabled', false); - }, - disable: function() { - this._setData('disabled', true); - }, - - _trigger: function(type, event, data) { - var callback = this.options[type], - eventName = (type == this.widgetEventPrefix - ? type : this.widgetEventPrefix + type); - - event = $.Event(event); - event.type = eventName; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (event.originalEvent) { - for (var i = $.event.props.length, prop; i;) { - prop = $.event.props[--i]; - event[prop] = event.originalEvent[prop]; - } - } - - this.element.trigger(event, data); - - return !($.isFunction(callback) && callback.call(this.element[0], event, data) === false - || event.isDefaultPrevented()); - } -}; - -$.widget.defaults = { - disabled: false -}; - - -/** Mouse Interaction Plugin **/ - -$.ui.mouse = { - _mouseInit: function() { - var self = this; - - this.element - .bind('mousedown.'+this.widgetName, function(event) { - return self._mouseDown(event); - }) - .bind('click.'+this.widgetName, function(event) { - if(self._preventClickEvent) { - self._preventClickEvent = false; - event.stopImmediatePropagation(); - return false; - } - }); - - // Prevent text selection in IE - if ($.browser.msie) { - this._mouseUnselectable = this.element.attr('unselectable'); - this.element.attr('unselectable', 'on'); - } - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind('.'+this.widgetName); - - // Restore text selection in IE - ($.browser.msie - && this.element.attr('unselectable', this._mouseUnselectable)); - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - // TODO: figure out why we have to use originalEvent - event.originalEvent = event.originalEvent || {}; - if (event.originalEvent.mouseHandled) { return; } - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var self = this, - btnIsLeft = (event.which == 1), - elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - self.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return self._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return self._mouseUp(event); - }; - $(document) - .bind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .bind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - // preventDefault() is used to prevent the selection of text here - - // however, in Safari, this causes select boxes not to be selectable - // anymore, so this fix is needed - ($.browser.safari || event.preventDefault()); - - event.originalEvent.mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.browser.msie && !event.button) { - return this._mouseUp(event); - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - $(document) - .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - if (this._mouseStarted) { - this._mouseStarted = false; - this._preventClickEvent = (event.target == this._mouseDownEvent.target); - this._mouseStop(event); - } - - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(event) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(event) {}, - _mouseDrag: function(event) {}, - _mouseStop: function(event) {}, - _mouseCapture: function(event) { return true; } -}; - -$.ui.mouse.defaults = { - cancel: null, - distance: 1, - delay: 0 -}; - -})(jQuery); diff --git a/forum/skins/default/media/js/.svn/text-base/ui.core.min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/ui.core.min.js.svn-base deleted file mode 100644 index d6bd405197e05eeaea6d1edf8316f65d94f2cdaa..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/ui.core.min.js.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -jQuery.ui||(function(c){var i=c.fn.remove,d=c.browser.mozilla&&(parseFloat(c.browser.version)<1.9);c.ui={version:"1.7.2",plugin:{add:function(k,l,n){var m=c.ui[k].prototype;for(var j in n){m.plugins[j]=m.plugins[j]||[];m.plugins[j].push([l,n[j]])}},call:function(j,l,k){var n=j.plugins[l];if(!n||!j.element[0].parentNode){return}for(var m=0;m<n.length;m++){if(j.options[n[m][0]]){n[m][1].apply(j.element,k)}}}},contains:function(k,j){return document.compareDocumentPosition?k.compareDocumentPosition(j)&16:k!==j&&k.contains(j)},hasScroll:function(m,k){if(c(m).css("overflow")=="hidden"){return false}var j=(k&&k=="left")?"scrollLeft":"scrollTop",l=false;if(m[j]>0){return true}m[j]=1;l=(m[j]>0);m[j]=0;return l},isOverAxis:function(k,j,l){return(k>j)&&(k<(j+l))},isOver:function(o,k,n,m,j,l){return c.ui.isOverAxis(o,n,j)&&c.ui.isOverAxis(k,m,l)},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(d){var f=c.attr,e=c.fn.removeAttr,h="http://www.w3.org/2005/07/aaa",a=/^aria-/,b=/^wairole:/;c.attr=function(k,j,l){var m=l!==undefined;return(j=="role"?(m?f.call(this,k,j,"wairole:"+l):(f.apply(this,arguments)||"").replace(b,"")):(a.test(j)?(m?k.setAttributeNS(h,j.replace(a,"aaa:"),l):f.call(this,k,j.replace(a,"aaa:"))):f.apply(this,arguments)))};c.fn.removeAttr=function(j){return(a.test(j)?this.each(function(){this.removeAttributeNS(h,j.replace(a,""))}):e.call(this,j))}}c.fn.extend({remove:function(){c("*",this).add(this).each(function(){c(this).triggerHandler("remove")});return i.apply(this,arguments)},enableSelection:function(){return this.attr("unselectable","off").css("MozUserSelect","").unbind("selectstart.ui")},disableSelection:function(){return this.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return false})},scrollParent:function(){var j;if((c.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){j=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(c.curCSS(this,"position",1))&&(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}else{j=this.parents().filter(function(){return(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!j.length?c(document):j}});c.extend(c.expr[":"],{data:function(l,k,j){return !!c.data(l,j[3])},focusable:function(k){var l=k.nodeName.toLowerCase(),j=c.attr(k,"tabindex");return(/input|select|textarea|button|object/.test(l)?!k.disabled:"a"==l||"area"==l?k.href||!isNaN(j):!isNaN(j))&&!c(k)["area"==l?"parents":"closest"](":hidden").length},tabbable:function(k){var j=c.attr(k,"tabindex");return(isNaN(j)||j>=0)&&c(k).is(":focusable")}});function g(m,n,o,l){function k(q){var p=c[m][n][q]||[];return(typeof p=="string"?p.split(/,?\s+/):p)}var j=k("getter");if(l.length==1&&typeof l[0]=="string"){j=j.concat(k("getterSetter"))}return(c.inArray(o,j)!=-1)}c.widget=function(k,j){var l=k.split(".")[0];k=k.split(".")[1];c.fn[k]=function(p){var n=(typeof p=="string"),o=Array.prototype.slice.call(arguments,1);if(n&&p.substring(0,1)=="_"){return this}if(n&&g(l,k,p,o)){var m=c.data(this[0],k);return(m?m[p].apply(m,o):undefined)}return this.each(function(){var q=c.data(this,k);(!q&&!n&&c.data(this,k,new c[l][k](this,p))._init());(q&&n&&c.isFunction(q[p])&&q[p].apply(q,o))})};c[l]=c[l]||{};c[l][k]=function(o,n){var m=this;this.namespace=l;this.widgetName=k;this.widgetEventPrefix=c[l][k].eventPrefix||k;this.widgetBaseClass=l+"-"+k;this.options=c.extend({},c.widget.defaults,c[l][k].defaults,c.metadata&&c.metadata.get(o)[k],n);this.element=c(o).bind("setData."+k,function(q,p,r){if(q.target==o){return m._setData(p,r)}}).bind("getData."+k,function(q,p){if(q.target==o){return m._getData(p)}}).bind("remove",function(){return m.destroy()})};c[l][k].prototype=c.extend({},c.widget.prototype,j);c[l][k].getterSetter="option"};c.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").removeAttr("aria-disabled")},option:function(l,m){var k=l,j=this;if(typeof l=="string"){if(m===undefined){return this._getData(l)}k={};k[l]=m}c.each(k,function(n,o){j._setData(n,o)})},_getData:function(j){return this.options[j]},_setData:function(j,k){this.options[j]=k;if(j=="disabled"){this.element[k?"addClass":"removeClass"](this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").attr("aria-disabled",k)}},enable:function(){this._setData("disabled",false)},disable:function(){this._setData("disabled",true)},_trigger:function(l,m,n){var p=this.options[l],j=(l==this.widgetEventPrefix?l:this.widgetEventPrefix+l);m=c.Event(m);m.type=j;if(m.originalEvent){for(var k=c.event.props.length,o;k;){o=c.event.props[--k];m[o]=m.originalEvent[o]}}this.element.trigger(m,n);return !(c.isFunction(p)&&p.call(this.element[0],m,n)===false||m.isDefaultPrevented())}};c.widget.defaults={disabled:false};c.ui.mouse={_mouseInit:function(){var j=this;this.element.bind("mousedown."+this.widgetName,function(k){return j._mouseDown(k)}).bind("click."+this.widgetName,function(k){if(j._preventClickEvent){j._preventClickEvent=false;k.stopImmediatePropagation();return false}});if(c.browser.msie){this._mouseUnselectable=this.element.attr("unselectable");this.element.attr("unselectable","on")}this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);(c.browser.msie&&this.element.attr("unselectable",this._mouseUnselectable))},_mouseDown:function(l){l.originalEvent=l.originalEvent||{};if(l.originalEvent.mouseHandled){return}(this._mouseStarted&&this._mouseUp(l));this._mouseDownEvent=l;var k=this,m=(l.which==1),j=(typeof this.options.cancel=="string"?c(l.target).parents().add(l.target).filter(this.options.cancel).length:false);if(!m||j||!this._mouseCapture(l)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){k.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(l)&&this._mouseDelayMet(l)){this._mouseStarted=(this._mouseStart(l)!==false);if(!this._mouseStarted){l.preventDefault();return true}}this._mouseMoveDelegate=function(n){return k._mouseMove(n)};this._mouseUpDelegate=function(n){return k._mouseUp(n)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);(c.browser.safari||l.preventDefault());l.originalEvent.mouseHandled=true;return true},_mouseMove:function(j){if(c.browser.msie&&!j.button){return this._mouseUp(j)}if(this._mouseStarted){this._mouseDrag(j);return j.preventDefault()}if(this._mouseDistanceMet(j)&&this._mouseDelayMet(j)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,j)!==false);(this._mouseStarted?this._mouseDrag(j):this._mouseUp(j))}return !this._mouseStarted},_mouseUp:function(j){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(j.target==this._mouseDownEvent.target);this._mouseStop(j)}return false},_mouseDistanceMet:function(j){return(Math.max(Math.abs(this._mouseDownEvent.pageX-j.pageX),Math.abs(this._mouseDownEvent.pageY-j.pageY))>=this.options.distance)},_mouseDelayMet:function(j){return this.mouseDelayMet},_mouseStart:function(j){},_mouseDrag:function(j){},_mouseStop:function(j){},_mouseCapture:function(j){return true}};c.ui.mouse.defaults={cancel:null,distance:1,delay:0}})(jQuery); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/ui.datepicker.js.svn-base b/forum/skins/default/media/js/.svn/text-base/ui.datepicker.js.svn-base deleted file mode 100644 index 0ce166efdbb28ce8bc5c5aa6041bc966ba376ad0..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/ui.datepicker.js.svn-base +++ /dev/null @@ -1,1636 +0,0 @@ -/* - * jQuery UI Datepicker 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Datepicker - * - * Depends: - * ui.core.js - */ - -(function($) { // hide the namespace - -$.extend($.ui, { datepicker: { version: "1.7.2" } }); - -var PROP_NAME = 'datepicker'; - -/* Date picker manager. - Use the singleton instance of this class, $.datepicker, to interact with the date picker. - Settings for (groups of) date pickers are maintained in an instance object, - allowing multiple different settings on the same page. */ - -function Datepicker() { - this.debug = false; // Change this to true to start debugging - this._curInst = null; // The current instance in use - this._keyEvent = false; // If the last event was a key event - this._disabledInputs = []; // List of date picker inputs that have been disabled - this._datepickerShowing = false; // True if the popup picker is showing , false if not - this._inDialog = false; // True if showing within a "dialog", false if not - this._mainDivId = 'ui-datepicker-div'; // The ID of the main datepicker division - this._inlineClass = 'ui-datepicker-inline'; // The name of the inline marker class - this._appendClass = 'ui-datepicker-append'; // The name of the append marker class - this._triggerClass = 'ui-datepicker-trigger'; // The name of the trigger marker class - this._dialogClass = 'ui-datepicker-dialog'; // The name of the dialog marker class - this._disableClass = 'ui-datepicker-disabled'; // The name of the disabled covering marker class - this._unselectableClass = 'ui-datepicker-unselectable'; // The name of the unselectable cell marker class - this._currentClass = 'ui-datepicker-current-day'; // The name of the current day marker class - this._dayOverClass = 'ui-datepicker-days-cell-over'; // The name of the day hover marker class - this.regional = []; // Available regional settings, indexed by language code - this.regional[''] = { // Default regional settings - closeText: 'Done', // Display text for close link - prevText: 'Prev', // Display text for previous month link - nextText: 'Next', // Display text for next month link - currentText: 'Today', // Display text for current month link - monthNames: ['January','February','March','April','May','June', - 'July','August','September','October','November','December'], // Names of months for drop-down and formatting - monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], // For formatting - dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], // For formatting - dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], // For formatting - dayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'], // Column headings for days starting at Sunday - dateFormat: 'mm/dd/yy', // See format options on parseDate - firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ... - isRTL: false // True if right-to-left language, false if left-to-right - }; - this._defaults = { // Global defaults for all the date picker instances - showOn: 'focus', // 'focus' for popup on focus, - // 'button' for trigger button, or 'both' for either - showAnim: 'show', // Name of jQuery animation for popup - showOptions: {}, // Options for enhanced animations - defaultDate: null, // Used when field is blank: actual date, - // +/-number for offset from today, null for today - appendText: '', // Display text following the input box, e.g. showing the format - buttonText: '...', // Text for trigger button - buttonImage: '', // URL for trigger button image - buttonImageOnly: false, // True if the image appears alone, false if it appears on a button - hideIfNoPrevNext: false, // True to hide next/previous month links - // if not applicable, false to just disable them - navigationAsDateFormat: false, // True if date formatting applied to prev/today/next links - gotoCurrent: false, // True if today link goes back to current selection instead - changeMonth: false, // True if month can be selected directly, false if only prev/next - changeYear: false, // True if year can be selected directly, false if only prev/next - showMonthAfterYear: false, // True if the year select precedes month, false for month then year - yearRange: '-10:+10', // Range of years to display in drop-down, - // either relative to current year (-nn:+nn) or absolute (nnnn:nnnn) - showOtherMonths: false, // True to show dates in other months, false to leave blank - calculateWeek: this.iso8601Week, // How to calculate the week of the year, - // takes a Date and returns the number of the week for it - shortYearCutoff: '+10', // Short year values < this are in the current century, - // > this are in the previous century, - // string value starting with '+' for current year + value - minDate: null, // The earliest selectable date, or null for no limit - maxDate: null, // The latest selectable date, or null for no limit - duration: 'normal', // Duration of display/closure - beforeShowDay: null, // Function that takes a date and returns an array with - // [0] = true if selectable, false if not, [1] = custom CSS class name(s) or '', - // [2] = cell title (optional), e.g. $.datepicker.noWeekends - beforeShow: null, // Function that takes an input field and - // returns a set of custom settings for the date picker - onSelect: null, // Define a callback function when a date is selected - onChangeMonthYear: null, // Define a callback function when the month or year is changed - onClose: null, // Define a callback function when the datepicker is closed - numberOfMonths: 1, // Number of months to show at a time - showCurrentAtPos: 0, // The position in multipe months at which to show the current month (starting at 0) - stepMonths: 1, // Number of months to step back/forward - stepBigMonths: 12, // Number of months to step back/forward for the big links - altField: '', // Selector for an alternate field to store selected dates into - altFormat: '', // The date format to use for the alternate field - constrainInput: true, // The input is constrained by the current date format - showButtonPanel: false // True to show button panel, false to not show it - }; - $.extend(this._defaults, this.regional['']); - this.dpDiv = $('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>'); -} - -$.extend(Datepicker.prototype, { - /* Class name added to elements to indicate already configured with a date picker. */ - markerClassName: 'hasDatepicker', - - /* Debug logging (if enabled). */ - log: function () { - if (this.debug) - console.log.apply('', arguments); - }, - - /* Override the default settings for all instances of the date picker. - @param settings object - the new settings to use as defaults (anonymous object) - @return the manager object */ - setDefaults: function(settings) { - extendRemove(this._defaults, settings || {}); - return this; - }, - - /* Attach the date picker to a jQuery selection. - @param target element - the target input field or division or span - @param settings object - the new settings to use for this date picker instance (anonymous) */ - _attachDatepicker: function(target, settings) { - // check for settings on the control itself - in namespace 'date:' - var inlineSettings = null; - for (var attrName in this._defaults) { - var attrValue = target.getAttribute('date:' + attrName); - if (attrValue) { - inlineSettings = inlineSettings || {}; - try { - inlineSettings[attrName] = eval(attrValue); - } catch (err) { - inlineSettings[attrName] = attrValue; - } - } - } - var nodeName = target.nodeName.toLowerCase(); - var inline = (nodeName == 'div' || nodeName == 'span'); - if (!target.id) - target.id = 'dp' + (++this.uuid); - var inst = this._newInst($(target), inline); - inst.settings = $.extend({}, settings || {}, inlineSettings || {}); - if (nodeName == 'input') { - this._connectDatepicker(target, inst); - } else if (inline) { - this._inlineDatepicker(target, inst); - } - }, - - /* Create a new instance object. */ - _newInst: function(target, inline) { - var id = target[0].id.replace(/([:\[\]\.])/g, '\\\\$1'); // escape jQuery meta chars - return {id: id, input: target, // associated target - selectedDay: 0, selectedMonth: 0, selectedYear: 0, // current selection - drawMonth: 0, drawYear: 0, // month being drawn - inline: inline, // is datepicker inline or not - dpDiv: (!inline ? this.dpDiv : // presentation div - $('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}; - }, - - /* Attach the date picker to an input field. */ - _connectDatepicker: function(target, inst) { - var input = $(target); - inst.append = $([]); - inst.trigger = $([]); - if (input.hasClass(this.markerClassName)) - return; - var appendText = this._get(inst, 'appendText'); - var isRTL = this._get(inst, 'isRTL'); - if (appendText) { - inst.append = $('<span class="' + this._appendClass + '">' + appendText + '</span>'); - input[isRTL ? 'before' : 'after'](inst.append); - } - var showOn = this._get(inst, 'showOn'); - if (showOn == 'focus' || showOn == 'both') // pop-up date picker when in the marked field - input.focus(this._showDatepicker); - if (showOn == 'button' || showOn == 'both') { // pop-up date picker when button clicked - var buttonText = this._get(inst, 'buttonText'); - var buttonImage = this._get(inst, 'buttonImage'); - inst.trigger = $(this._get(inst, 'buttonImageOnly') ? - $('<img/>').addClass(this._triggerClass). - attr({ src: buttonImage, alt: buttonText, title: buttonText }) : - $('<button type="button"></button>').addClass(this._triggerClass). - html(buttonImage == '' ? buttonText : $('<img/>').attr( - { src:buttonImage, alt:buttonText, title:buttonText }))); - input[isRTL ? 'before' : 'after'](inst.trigger); - inst.trigger.click(function() { - if ($.datepicker._datepickerShowing && $.datepicker._lastInput == target) - $.datepicker._hideDatepicker(); - else - $.datepicker._showDatepicker(target); - return false; - }); - } - input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress). - bind("setData.datepicker", function(event, key, value) { - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key) { - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - }, - - /* Attach an inline date picker to a div. */ - _inlineDatepicker: function(target, inst) { - var divSpan = $(target); - if (divSpan.hasClass(this.markerClassName)) - return; - divSpan.addClass(this.markerClassName).append(inst.dpDiv). - bind("setData.datepicker", function(event, key, value){ - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key){ - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - this._setDate(inst, this._getDefaultDate(inst)); - this._updateDatepicker(inst); - this._updateAlternate(inst); - }, - - /* Pop-up the date picker in a "dialog" box. - @param input element - ignored - @param dateText string - the initial date to display (in the current format) - @param onSelect function - the function(dateText) to call when a date is selected - @param settings object - update the dialog date picker instance's settings (anonymous object) - @param pos int[2] - coordinates for the dialog's position within the screen or - event - with x/y coordinates or - leave empty for default (screen centre) - @return the manager object */ - _dialogDatepicker: function(input, dateText, onSelect, settings, pos) { - var inst = this._dialogInst; // internal instance - if (!inst) { - var id = 'dp' + (++this.uuid); - this._dialogInput = $('<input type="text" id="' + id + - '" size="1" style="position: absolute; top: -100px;"/>'); - this._dialogInput.keydown(this._doKeyDown); - $('body').append(this._dialogInput); - inst = this._dialogInst = this._newInst(this._dialogInput, false); - inst.settings = {}; - $.data(this._dialogInput[0], PROP_NAME, inst); - } - extendRemove(inst.settings, settings || {}); - this._dialogInput.val(dateText); - - this._pos = (pos ? (pos.length ? pos : [pos.pageX, pos.pageY]) : null); - if (!this._pos) { - var browserWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; - var browserHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; - var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft; - var scrollY = document.documentElement.scrollTop || document.body.scrollTop; - this._pos = // should use actual width/height below - [(browserWidth / 2) - 100 + scrollX, (browserHeight / 2) - 150 + scrollY]; - } - - // move input on screen for focus, but hidden behind dialog - this._dialogInput.css('left', this._pos[0] + 'px').css('top', this._pos[1] + 'px'); - inst.settings.onSelect = onSelect; - this._inDialog = true; - this.dpDiv.addClass(this._dialogClass); - this._showDatepicker(this._dialogInput[0]); - if ($.blockUI) - $.blockUI(this.dpDiv); - $.data(this._dialogInput[0], PROP_NAME, inst); - return this; - }, - - /* Detach a datepicker from its control. - @param target element - the target input field or division or span */ - _destroyDatepicker: function(target) { - var $target = $(target); - var inst = $.data(target, PROP_NAME); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - $.removeData(target, PROP_NAME); - if (nodeName == 'input') { - inst.append.remove(); - inst.trigger.remove(); - $target.removeClass(this.markerClassName). - unbind('focus', this._showDatepicker). - unbind('keydown', this._doKeyDown). - unbind('keypress', this._doKeyPress); - } else if (nodeName == 'div' || nodeName == 'span') - $target.removeClass(this.markerClassName).empty(); - }, - - /* Enable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _enableDatepicker: function(target) { - var $target = $(target); - var inst = $.data(target, PROP_NAME); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = false; - inst.trigger.filter('button'). - each(function() { this.disabled = false; }).end(). - filter('img').css({opacity: '1.0', cursor: ''}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().removeClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - }, - - /* Disable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _disableDatepicker: function(target) { - var $target = $(target); - var inst = $.data(target, PROP_NAME); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = true; - inst.trigger.filter('button'). - each(function() { this.disabled = true; }).end(). - filter('img').css({opacity: '0.5', cursor: 'default'}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().addClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - this._disabledInputs[this._disabledInputs.length] = target; - }, - - /* Is the first field in a jQuery collection disabled as a datepicker? - @param target element - the target input field or division or span - @return boolean - true if disabled, false if enabled */ - _isDisabledDatepicker: function(target) { - if (!target) { - return false; - } - for (var i = 0; i < this._disabledInputs.length; i++) { - if (this._disabledInputs[i] == target) - return true; - } - return false; - }, - - /* Retrieve the instance data for the target control. - @param target element - the target input field or division or span - @return object - the associated instance data - @throws error if a jQuery problem getting data */ - _getInst: function(target) { - try { - return $.data(target, PROP_NAME); - } - catch (err) { - throw 'Missing instance data for this datepicker'; - } - }, - - /* Update or retrieve the settings for a date picker attached to an input field or division. - @param target element - the target input field or division or span - @param name object - the new settings to update or - string - the name of the setting to change or retrieve, - when retrieving also 'all' for all instance settings or - 'defaults' for all global defaults - @param value any - the new value for the setting - (omit if above is an object or to retrieve a value) */ - _optionDatepicker: function(target, name, value) { - var inst = this._getInst(target); - if (arguments.length == 2 && typeof name == 'string') { - return (name == 'defaults' ? $.extend({}, $.datepicker._defaults) : - (inst ? (name == 'all' ? $.extend({}, inst.settings) : - this._get(inst, name)) : null)); - } - var settings = name || {}; - if (typeof name == 'string') { - settings = {}; - settings[name] = value; - } - if (inst) { - if (this._curInst == inst) { - this._hideDatepicker(null); - } - var date = this._getDateDatepicker(target); - extendRemove(inst.settings, settings); - this._setDateDatepicker(target, date); - this._updateDatepicker(inst); - } - }, - - // change method deprecated - _changeDatepicker: function(target, name, value) { - this._optionDatepicker(target, name, value); - }, - - /* Redraw the date picker attached to an input field or division. - @param target element - the target input field or division or span */ - _refreshDatepicker: function(target) { - var inst = this._getInst(target); - if (inst) { - this._updateDatepicker(inst); - } - }, - - /* Set the dates for a jQuery selection. - @param target element - the target input field or division or span - @param date Date - the new date - @param endDate Date - the new end date for a range (optional) */ - _setDateDatepicker: function(target, date, endDate) { - var inst = this._getInst(target); - if (inst) { - this._setDate(inst, date, endDate); - this._updateDatepicker(inst); - this._updateAlternate(inst); - } - }, - - /* Get the date(s) for the first entry in a jQuery selection. - @param target element - the target input field or division or span - @return Date - the current date or - Date[2] - the current dates for a range */ - _getDateDatepicker: function(target) { - var inst = this._getInst(target); - if (inst && !inst.inline) - this._setDateFromField(inst); - return (inst ? this._getDate(inst) : null); - }, - - /* Handle keystrokes. */ - _doKeyDown: function(event) { - var inst = $.datepicker._getInst(event.target); - var handled = true; - var isRTL = inst.dpDiv.is('.ui-datepicker-rtl'); - inst._keyEvent = true; - if ($.datepicker._datepickerShowing) - switch (event.keyCode) { - case 9: $.datepicker._hideDatepicker(null, ''); - break; // hide on tab out - case 13: var sel = $('td.' + $.datepicker._dayOverClass + - ', td.' + $.datepicker._currentClass, inst.dpDiv); - if (sel[0]) - $.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]); - else - $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - return false; // don't submit the form - break; // select the value on enter - case 27: $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - break; // hide on escape - case 33: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // previous month/year on page up/+ ctrl - case 34: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // next month/year on page down/+ ctrl - case 35: if (event.ctrlKey || event.metaKey) $.datepicker._clearDate(event.target); - handled = event.ctrlKey || event.metaKey; - break; // clear on ctrl or command +end - case 36: if (event.ctrlKey || event.metaKey) $.datepicker._gotoToday(event.target); - handled = event.ctrlKey || event.metaKey; - break; // current on ctrl or command +home - case 37: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? +1 : -1), 'D'); - handled = event.ctrlKey || event.metaKey; - // -1 day on ctrl or command +left - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +left on Mac - break; - case 38: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, -7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // -1 week on ctrl or command +up - case 39: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? -1 : +1), 'D'); - handled = event.ctrlKey || event.metaKey; - // +1 day on ctrl or command +right - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +right - break; - case 40: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, +7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // +1 week on ctrl or command +down - default: handled = false; - } - else if (event.keyCode == 36 && event.ctrlKey) // display the date picker on ctrl+home - $.datepicker._showDatepicker(this); - else { - handled = false; - } - if (handled) { - event.preventDefault(); - event.stopPropagation(); - } - }, - - /* Filter entered characters - based on date format. */ - _doKeyPress: function(event) { - var inst = $.datepicker._getInst(event.target); - if ($.datepicker._get(inst, 'constrainInput')) { - var chars = $.datepicker._possibleChars($.datepicker._get(inst, 'dateFormat')); - var chr = String.fromCharCode(event.charCode == undefined ? event.keyCode : event.charCode); - return event.ctrlKey || (chr < ' ' || !chars || chars.indexOf(chr) > -1); - } - }, - - /* Pop-up the date picker for a given input field. - @param input element - the input field attached to the date picker or - event - if triggered by focus */ - _showDatepicker: function(input) { - input = input.target || input; - if (input.nodeName.toLowerCase() != 'input') // find from button/image trigger - input = $('input', input.parentNode)[0]; - if ($.datepicker._isDisabledDatepicker(input) || $.datepicker._lastInput == input) // already here - return; - var inst = $.datepicker._getInst(input); - var beforeShow = $.datepicker._get(inst, 'beforeShow'); - extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {})); - $.datepicker._hideDatepicker(null, ''); - $.datepicker._lastInput = input; - $.datepicker._setDateFromField(inst); - if ($.datepicker._inDialog) // hide cursor - input.value = ''; - if (!$.datepicker._pos) { // position below input - $.datepicker._pos = $.datepicker._findPos(input); - $.datepicker._pos[1] += input.offsetHeight; // add the height - } - var isFixed = false; - $(input).parents().each(function() { - isFixed |= $(this).css('position') == 'fixed'; - return !isFixed; - }); - if (isFixed && $.browser.opera) { // correction for Opera when fixed and scrolled - $.datepicker._pos[0] -= document.documentElement.scrollLeft; - $.datepicker._pos[1] -= document.documentElement.scrollTop; - } - var offset = {left: $.datepicker._pos[0], top: $.datepicker._pos[1]}; - $.datepicker._pos = null; - inst.rangeStart = null; - // determine sizing offscreen - inst.dpDiv.css({position: 'absolute', display: 'block', top: '-1000px'}); - $.datepicker._updateDatepicker(inst); - // fix width for dynamic number of date pickers - // and adjust position before showing - offset = $.datepicker._checkOffset(inst, offset, isFixed); - inst.dpDiv.css({position: ($.datepicker._inDialog && $.blockUI ? - 'static' : (isFixed ? 'fixed' : 'absolute')), display: 'none', - left: offset.left + 'px', top: offset.top + 'px'}); - if (!inst.inline) { - var showAnim = $.datepicker._get(inst, 'showAnim') || 'show'; - var duration = $.datepicker._get(inst, 'duration'); - var postProcess = function() { - $.datepicker._datepickerShowing = true; - if ($.browser.msie && parseInt($.browser.version,10) < 7) // fix IE < 7 select problems - $('iframe.ui-datepicker-cover').css({width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}); - }; - if ($.effects && $.effects[showAnim]) - inst.dpDiv.show(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess); - else - inst.dpDiv[showAnim](duration, postProcess); - if (duration == '') - postProcess(); - if (inst.input[0].type != 'hidden') - inst.input[0].focus(); - $.datepicker._curInst = inst; - } - }, - - /* Generate the date picker content. */ - _updateDatepicker: function(inst) { - var dims = {width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}; - var self = this; - inst.dpDiv.empty().append(this._generateHTML(inst)) - .find('iframe.ui-datepicker-cover'). - css({width: dims.width, height: dims.height}) - .end() - .find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a') - .bind('mouseout', function(){ - $(this).removeClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover'); - }) - .bind('mouseover', function(){ - if (!self._isDisabledDatepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) { - $(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover'); - $(this).addClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover'); - } - }) - .end() - .find('.' + this._dayOverClass + ' a') - .trigger('mouseover') - .end(); - var numMonths = this._getNumberOfMonths(inst); - var cols = numMonths[1]; - var width = 17; - if (cols > 1) { - inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em'); - } else { - inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width(''); - } - inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') + - 'Class']('ui-datepicker-multi'); - inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') + - 'Class']('ui-datepicker-rtl'); - if (inst.input && inst.input[0].type != 'hidden' && inst == $.datepicker._curInst) - $(inst.input[0]).focus(); - }, - - /* Check positioning to remain on screen. */ - _checkOffset: function(inst, offset, isFixed) { - var dpWidth = inst.dpDiv.outerWidth(); - var dpHeight = inst.dpDiv.outerHeight(); - var inputWidth = inst.input ? inst.input.outerWidth() : 0; - var inputHeight = inst.input ? inst.input.outerHeight() : 0; - var viewWidth = (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) + $(document).scrollLeft(); - var viewHeight = (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight) + $(document).scrollTop(); - - offset.left -= (this._get(inst, 'isRTL') ? (dpWidth - inputWidth) : 0); - offset.left -= (isFixed && offset.left == inst.input.offset().left) ? $(document).scrollLeft() : 0; - offset.top -= (isFixed && offset.top == (inst.input.offset().top + inputHeight)) ? $(document).scrollTop() : 0; - - // now check if datepicker is showing outside window viewport - move to a better place if so. - offset.left -= (offset.left + dpWidth > viewWidth && viewWidth > dpWidth) ? Math.abs(offset.left + dpWidth - viewWidth) : 0; - offset.top -= (offset.top + dpHeight > viewHeight && viewHeight > dpHeight) ? Math.abs(offset.top + dpHeight + inputHeight*2 - viewHeight) : 0; - - return offset; - }, - - /* Find an object's position on the screen. */ - _findPos: function(obj) { - while (obj && (obj.type == 'hidden' || obj.nodeType != 1)) { - obj = obj.nextSibling; - } - var position = $(obj).offset(); - return [position.left, position.top]; - }, - - /* Hide the date picker from view. - @param input element - the input field attached to the date picker - @param duration string - the duration over which to close the date picker */ - _hideDatepicker: function(input, duration) { - var inst = this._curInst; - if (!inst || (input && inst != $.data(input, PROP_NAME))) - return; - if (inst.stayOpen) - this._selectDate('#' + inst.id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - inst.stayOpen = false; - if (this._datepickerShowing) { - duration = (duration != null ? duration : this._get(inst, 'duration')); - var showAnim = this._get(inst, 'showAnim'); - var postProcess = function() { - $.datepicker._tidyDialog(inst); - }; - if (duration != '' && $.effects && $.effects[showAnim]) - inst.dpDiv.hide(showAnim, $.datepicker._get(inst, 'showOptions'), - duration, postProcess); - else - inst.dpDiv[(duration == '' ? 'hide' : (showAnim == 'slideDown' ? 'slideUp' : - (showAnim == 'fadeIn' ? 'fadeOut' : 'hide')))](duration, postProcess); - if (duration == '') - this._tidyDialog(inst); - var onClose = this._get(inst, 'onClose'); - if (onClose) - onClose.apply((inst.input ? inst.input[0] : null), - [(inst.input ? inst.input.val() : ''), inst]); // trigger custom callback - this._datepickerShowing = false; - this._lastInput = null; - if (this._inDialog) { - this._dialogInput.css({ position: 'absolute', left: '0', top: '-100px' }); - if ($.blockUI) { - $.unblockUI(); - $('body').append(this.dpDiv); - } - } - this._inDialog = false; - } - this._curInst = null; - }, - - /* Tidy up after a dialog display. */ - _tidyDialog: function(inst) { - inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar'); - }, - - /* Close date picker if clicked elsewhere. */ - _checkExternalClick: function(event) { - if (!$.datepicker._curInst) - return; - var $target = $(event.target); - if (($target.parents('#' + $.datepicker._mainDivId).length == 0) && - !$target.hasClass($.datepicker.markerClassName) && - !$target.hasClass($.datepicker._triggerClass) && - $.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI)) - $.datepicker._hideDatepicker(null, ''); - }, - - /* Adjust one of the date sub-fields. */ - _adjustDate: function(id, offset, period) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._isDisabledDatepicker(target[0])) { - return; - } - this._adjustInstDate(inst, offset + - (period == 'M' ? this._get(inst, 'showCurrentAtPos') : 0), // undo positioning - period); - this._updateDatepicker(inst); - }, - - /* Action for current link. */ - _gotoToday: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._get(inst, 'gotoCurrent') && inst.currentDay) { - inst.selectedDay = inst.currentDay; - inst.drawMonth = inst.selectedMonth = inst.currentMonth; - inst.drawYear = inst.selectedYear = inst.currentYear; - } - else { - var date = new Date(); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - } - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Action for selecting a new month/year. */ - _selectMonthYear: function(id, select, period) { - var target = $(id); - var inst = this._getInst(target[0]); - inst._selectingMonthYear = false; - inst['selected' + (period == 'M' ? 'Month' : 'Year')] = - inst['draw' + (period == 'M' ? 'Month' : 'Year')] = - parseInt(select.options[select.selectedIndex].value,10); - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Restore input focus after not changing month/year. */ - _clickMonthYear: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (inst.input && inst._selectingMonthYear && !$.browser.msie) - inst.input[0].focus(); - inst._selectingMonthYear = !inst._selectingMonthYear; - }, - - /* Action for selecting a day. */ - _selectDay: function(id, month, year, td) { - var target = $(id); - if ($(td).hasClass(this._unselectableClass) || this._isDisabledDatepicker(target[0])) { - return; - } - var inst = this._getInst(target[0]); - inst.selectedDay = inst.currentDay = $('a', td).html(); - inst.selectedMonth = inst.currentMonth = month; - inst.selectedYear = inst.currentYear = year; - if (inst.stayOpen) { - inst.endDay = inst.endMonth = inst.endYear = null; - } - this._selectDate(id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - if (inst.stayOpen) { - inst.rangeStart = this._daylightSavingAdjust( - new Date(inst.currentYear, inst.currentMonth, inst.currentDay)); - this._updateDatepicker(inst); - } - }, - - /* Erase the input field and hide the date picker. */ - _clearDate: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - inst.stayOpen = false; - inst.endDay = inst.endMonth = inst.endYear = inst.rangeStart = null; - this._selectDate(target, ''); - }, - - /* Update the input field with the selected date. */ - _selectDate: function(id, dateStr) { - var target = $(id); - var inst = this._getInst(target[0]); - dateStr = (dateStr != null ? dateStr : this._formatDate(inst)); - if (inst.input) - inst.input.val(dateStr); - this._updateAlternate(inst); - var onSelect = this._get(inst, 'onSelect'); - if (onSelect) - onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); // trigger custom callback - else if (inst.input) - inst.input.trigger('change'); // fire the change event - if (inst.inline) - this._updateDatepicker(inst); - else if (!inst.stayOpen) { - this._hideDatepicker(null, this._get(inst, 'duration')); - this._lastInput = inst.input[0]; - if (typeof(inst.input[0]) != 'object') - inst.input[0].focus(); // restore focus - this._lastInput = null; - } - }, - - /* Update any alternate field to synchronise with the main field. */ - _updateAlternate: function(inst) { - var altField = this._get(inst, 'altField'); - if (altField) { // update alternate field too - var altFormat = this._get(inst, 'altFormat') || this._get(inst, 'dateFormat'); - var date = this._getDate(inst); - dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst)); - $(altField).each(function() { $(this).val(dateStr); }); - } - }, - - /* Set as beforeShowDay function to prevent selection of weekends. - @param date Date - the date to customise - @return [boolean, string] - is this date selectable?, what is its CSS class? */ - noWeekends: function(date) { - var day = date.getDay(); - return [(day > 0 && day < 6), '']; - }, - - /* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition. - @param date Date - the date to get the week for - @return number - the number of the week within the year that contains this date */ - iso8601Week: function(date) { - var checkDate = new Date(date.getFullYear(), date.getMonth(), date.getDate()); - var firstMon = new Date(checkDate.getFullYear(), 1 - 1, 4); // First week always contains 4 Jan - var firstDay = firstMon.getDay() || 7; // Day of week: Mon = 1, ..., Sun = 7 - firstMon.setDate(firstMon.getDate() + 1 - firstDay); // Preceding Monday - if (firstDay < 4 && checkDate < firstMon) { // Adjust first three days in year if necessary - checkDate.setDate(checkDate.getDate() - 3); // Generate for previous year - return $.datepicker.iso8601Week(checkDate); - } else if (checkDate > new Date(checkDate.getFullYear(), 12 - 1, 28)) { // Check last three days in year - firstDay = new Date(checkDate.getFullYear() + 1, 1 - 1, 4).getDay() || 7; - if (firstDay > 4 && (checkDate.getDay() || 7) < firstDay - 3) { // Adjust if necessary - return 1; - } - } - return Math.floor(((checkDate - firstMon) / 86400000) / 7) + 1; // Weeks to given date - }, - - /* Parse a string value into a date object. - See formatDate below for the possible formats. - - @param format string - the expected format of the date - @param value string - the date in the above format - @param settings Object - attributes include: - shortYearCutoff number - the cutoff year for determining the century (optional) - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return Date - the extracted date value or null if value is blank */ - parseDate: function (format, value, settings) { - if (format == null || value == null) - throw 'Invalid arguments'; - value = (typeof value == 'object' ? value.toString() : value + ''); - if (value == '') - return null; - var shortYearCutoff = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - var year = -1; - var month = -1; - var day = -1; - var doy = -1; - var literal = false; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Extract a number from the string value - var getNumber = function(match) { - lookAhead(match); - var origSize = (match == '@' ? 14 : (match == 'y' ? 4 : (match == 'o' ? 3 : 2))); - var size = origSize; - var num = 0; - while (size > 0 && iValue < value.length && - value.charAt(iValue) >= '0' && value.charAt(iValue) <= '9') { - num = num * 10 + parseInt(value.charAt(iValue++),10); - size--; - } - if (size == origSize) - throw 'Missing number at position ' + iValue; - return num; - }; - // Extract a name from the string value and convert to an index - var getName = function(match, shortNames, longNames) { - var names = (lookAhead(match) ? longNames : shortNames); - var size = 0; - for (var j = 0; j < names.length; j++) - size = Math.max(size, names[j].length); - var name = ''; - var iInit = iValue; - while (size > 0 && iValue < value.length) { - name += value.charAt(iValue++); - for (var i = 0; i < names.length; i++) - if (name == names[i]) - return i + 1; - size--; - } - throw 'Unknown name at position ' + iInit; - }; - // Confirm that a literal character matches the string value - var checkLiteral = function() { - if (value.charAt(iValue) != format.charAt(iFormat)) - throw 'Unexpected literal at position ' + iValue; - iValue++; - }; - var iValue = 0; - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - checkLiteral(); - else - switch (format.charAt(iFormat)) { - case 'd': - day = getNumber('d'); - break; - case 'D': - getName('D', dayNamesShort, dayNames); - break; - case 'o': - doy = getNumber('o'); - break; - case 'm': - month = getNumber('m'); - break; - case 'M': - month = getName('M', monthNamesShort, monthNames); - break; - case 'y': - year = getNumber('y'); - break; - case '@': - var date = new Date(getNumber('@')); - year = date.getFullYear(); - month = date.getMonth() + 1; - day = date.getDate(); - break; - case "'": - if (lookAhead("'")) - checkLiteral(); - else - literal = true; - break; - default: - checkLiteral(); - } - } - if (year == -1) - year = new Date().getFullYear(); - else if (year < 100) - year += new Date().getFullYear() - new Date().getFullYear() % 100 + - (year <= shortYearCutoff ? 0 : -100); - if (doy > -1) { - month = 1; - day = doy; - do { - var dim = this._getDaysInMonth(year, month - 1); - if (day <= dim) - break; - month++; - day -= dim; - } while (true); - } - var date = this._daylightSavingAdjust(new Date(year, month - 1, day)); - if (date.getFullYear() != year || date.getMonth() + 1 != month || date.getDate() != day) - throw 'Invalid date'; // E.g. 31/02/* - return date; - }, - - /* Standard date formats. */ - ATOM: 'yy-mm-dd', // RFC 3339 (ISO 8601) - COOKIE: 'D, dd M yy', - ISO_8601: 'yy-mm-dd', - RFC_822: 'D, d M y', - RFC_850: 'DD, dd-M-y', - RFC_1036: 'D, d M y', - RFC_1123: 'D, d M yy', - RFC_2822: 'D, d M yy', - RSS: 'D, d M y', // RFC 822 - TIMESTAMP: '@', - W3C: 'yy-mm-dd', // ISO 8601 - - /* Format a date object into a string value. - The format can be combinations of the following: - d - day of month (no leading zero) - dd - day of month (two digit) - o - day of year (no leading zeros) - oo - day of year (three digit) - D - day name short - DD - day name long - m - month of year (no leading zero) - mm - month of year (two digit) - M - month name short - MM - month name long - y - year (two digit) - yy - year (four digit) - @ - Unix timestamp (ms since 01/01/1970) - '...' - literal text - '' - single quote - - @param format string - the desired format of the date - @param date Date - the date value to format - @param settings Object - attributes include: - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return string - the date in the above format */ - formatDate: function (format, date, settings) { - if (!date) - return ''; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Format a number, with leading zero if necessary - var formatNumber = function(match, value, len) { - var num = '' + value; - if (lookAhead(match)) - while (num.length < len) - num = '0' + num; - return num; - }; - // Format a name, short or long as requested - var formatName = function(match, value, shortNames, longNames) { - return (lookAhead(match) ? longNames[value] : shortNames[value]); - }; - var output = ''; - var literal = false; - if (date) - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - output += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': - output += formatNumber('d', date.getDate(), 2); - break; - case 'D': - output += formatName('D', date.getDay(), dayNamesShort, dayNames); - break; - case 'o': - var doy = date.getDate(); - for (var m = date.getMonth() - 1; m >= 0; m--) - doy += this._getDaysInMonth(date.getFullYear(), m); - output += formatNumber('o', doy, 3); - break; - case 'm': - output += formatNumber('m', date.getMonth() + 1, 2); - break; - case 'M': - output += formatName('M', date.getMonth(), monthNamesShort, monthNames); - break; - case 'y': - output += (lookAhead('y') ? date.getFullYear() : - (date.getYear() % 100 < 10 ? '0' : '') + date.getYear() % 100); - break; - case '@': - output += date.getTime(); - break; - case "'": - if (lookAhead("'")) - output += "'"; - else - literal = true; - break; - default: - output += format.charAt(iFormat); - } - } - return output; - }, - - /* Extract all possible characters from the date format. */ - _possibleChars: function (format) { - var chars = ''; - var literal = false; - for (var iFormat = 0; iFormat < format.length; iFormat++) - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - chars += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': case 'm': case 'y': case '@': - chars += '0123456789'; - break; - case 'D': case 'M': - return null; // Accept anything - case "'": - if (lookAhead("'")) - chars += "'"; - else - literal = true; - break; - default: - chars += format.charAt(iFormat); - } - return chars; - }, - - /* Get a setting value, defaulting if necessary. */ - _get: function(inst, name) { - return inst.settings[name] !== undefined ? - inst.settings[name] : this._defaults[name]; - }, - - /* Parse existing date and initialise date picker. */ - _setDateFromField: function(inst) { - var dateFormat = this._get(inst, 'dateFormat'); - var dates = inst.input ? inst.input.val() : null; - inst.endDay = inst.endMonth = inst.endYear = null; - var date = defaultDate = this._getDefaultDate(inst); - var settings = this._getFormatConfig(inst); - try { - date = this.parseDate(dateFormat, dates, settings) || defaultDate; - } catch (event) { - this.log(event); - date = defaultDate; - } - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - inst.currentDay = (dates ? date.getDate() : 0); - inst.currentMonth = (dates ? date.getMonth() : 0); - inst.currentYear = (dates ? date.getFullYear() : 0); - this._adjustInstDate(inst); - }, - - /* Retrieve the default date shown on opening. */ - _getDefaultDate: function(inst) { - var date = this._determineDate(this._get(inst, 'defaultDate'), new Date()); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - return date; - }, - - /* A date may be specified as an exact value or a relative one. */ - _determineDate: function(date, defaultDate) { - var offsetNumeric = function(offset) { - var date = new Date(); - date.setDate(date.getDate() + offset); - return date; - }; - var offsetString = function(offset, getDaysInMonth) { - var date = new Date(); - var year = date.getFullYear(); - var month = date.getMonth(); - var day = date.getDate(); - var pattern = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g; - var matches = pattern.exec(offset); - while (matches) { - switch (matches[2] || 'd') { - case 'd' : case 'D' : - day += parseInt(matches[1],10); break; - case 'w' : case 'W' : - day += parseInt(matches[1],10) * 7; break; - case 'm' : case 'M' : - month += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - case 'y': case 'Y' : - year += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - } - matches = pattern.exec(offset); - } - return new Date(year, month, day); - }; - date = (date == null ? defaultDate : - (typeof date == 'string' ? offsetString(date, this._getDaysInMonth) : - (typeof date == 'number' ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : date))); - date = (date && date.toString() == 'Invalid Date' ? defaultDate : date); - if (date) { - date.setHours(0); - date.setMinutes(0); - date.setSeconds(0); - date.setMilliseconds(0); - } - return this._daylightSavingAdjust(date); - }, - - /* Handle switch to/from daylight saving. - Hours may be non-zero on daylight saving cut-over: - > 12 when midnight changeover, but then cannot generate - midnight datetime, so jump to 1AM, otherwise reset. - @param date (Date) the date to check - @return (Date) the corrected date */ - _daylightSavingAdjust: function(date) { - if (!date) return null; - date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0); - return date; - }, - - /* Set the date(s) directly. */ - _setDate: function(inst, date, endDate) { - var clear = !(date); - var origMonth = inst.selectedMonth; - var origYear = inst.selectedYear; - date = this._determineDate(date, new Date()); - inst.selectedDay = inst.currentDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = inst.currentMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = inst.currentYear = date.getFullYear(); - if (origMonth != inst.selectedMonth || origYear != inst.selectedYear) - this._notifyChange(inst); - this._adjustInstDate(inst); - if (inst.input) { - inst.input.val(clear ? '' : this._formatDate(inst)); - } - }, - - /* Retrieve the date(s) directly. */ - _getDate: function(inst) { - var startDate = (!inst.currentYear || (inst.input && inst.input.val() == '') ? null : - this._daylightSavingAdjust(new Date( - inst.currentYear, inst.currentMonth, inst.currentDay))); - return startDate; - }, - - /* Generate the HTML for the current state of the date picker. */ - _generateHTML: function(inst) { - var today = new Date(); - today = this._daylightSavingAdjust( - new Date(today.getFullYear(), today.getMonth(), today.getDate())); // clear time - var isRTL = this._get(inst, 'isRTL'); - var showButtonPanel = this._get(inst, 'showButtonPanel'); - var hideIfNoPrevNext = this._get(inst, 'hideIfNoPrevNext'); - var navigationAsDateFormat = this._get(inst, 'navigationAsDateFormat'); - var numMonths = this._getNumberOfMonths(inst); - var showCurrentAtPos = this._get(inst, 'showCurrentAtPos'); - var stepMonths = this._get(inst, 'stepMonths'); - var stepBigMonths = this._get(inst, 'stepBigMonths'); - var isMultiMonth = (numMonths[0] != 1 || numMonths[1] != 1); - var currentDate = this._daylightSavingAdjust((!inst.currentDay ? new Date(9999, 9, 9) : - new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - var drawMonth = inst.drawMonth - showCurrentAtPos; - var drawYear = inst.drawYear; - if (drawMonth < 0) { - drawMonth += 12; - drawYear--; - } - if (maxDate) { - var maxDraw = this._daylightSavingAdjust(new Date(maxDate.getFullYear(), - maxDate.getMonth() - numMonths[1] + 1, maxDate.getDate())); - maxDraw = (minDate && maxDraw < minDate ? minDate : maxDraw); - while (this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1)) > maxDraw) { - drawMonth--; - if (drawMonth < 0) { - drawMonth = 11; - drawYear--; - } - } - } - inst.drawMonth = drawMonth; - inst.drawYear = drawYear; - var prevText = this._get(inst, 'prevText'); - prevText = (!navigationAsDateFormat ? prevText : this.formatDate(prevText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)), - this._getFormatConfig(inst))); - var prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ? - '<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#' + inst.id + '\', -' + stepMonths + ', \'M\');"' + - ' title="' + prevText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>' : - (hideIfNoPrevNext ? '' : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+ prevText +'"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>')); - var nextText = this._get(inst, 'nextText'); - nextText = (!navigationAsDateFormat ? nextText : this.formatDate(nextText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)), - this._getFormatConfig(inst))); - var next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ? - '<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#' + inst.id + '\', +' + stepMonths + ', \'M\');"' + - ' title="' + nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>' : - (hideIfNoPrevNext ? '' : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+ nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>')); - var currentText = this._get(inst, 'currentText'); - var gotoDate = (this._get(inst, 'gotoCurrent') && inst.currentDay ? currentDate : today); - currentText = (!navigationAsDateFormat ? currentText : - this.formatDate(currentText, gotoDate, this._getFormatConfig(inst))); - var controls = (!inst.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery.datepicker._hideDatepicker();">' + this._get(inst, 'closeText') + '</button>' : ''); - var buttonPanel = (showButtonPanel) ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (isRTL ? controls : '') + - (this._isInRange(inst, gotoDate) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery.datepicker._gotoToday(\'#' + inst.id + '\');"' + - '>' + currentText + '</button>' : '') + (isRTL ? '' : controls) + '</div>' : ''; - var firstDay = parseInt(this._get(inst, 'firstDay'),10); - firstDay = (isNaN(firstDay) ? 0 : firstDay); - var dayNames = this._get(inst, 'dayNames'); - var dayNamesShort = this._get(inst, 'dayNamesShort'); - var dayNamesMin = this._get(inst, 'dayNamesMin'); - var monthNames = this._get(inst, 'monthNames'); - var monthNamesShort = this._get(inst, 'monthNamesShort'); - var beforeShowDay = this._get(inst, 'beforeShowDay'); - var showOtherMonths = this._get(inst, 'showOtherMonths'); - var calculateWeek = this._get(inst, 'calculateWeek') || this.iso8601Week; - var endDate = inst.endDay ? this._daylightSavingAdjust( - new Date(inst.endYear, inst.endMonth, inst.endDay)) : currentDate; - var defaultDate = this._getDefaultDate(inst); - var html = ''; - for (var row = 0; row < numMonths[0]; row++) { - var group = ''; - for (var col = 0; col < numMonths[1]; col++) { - var selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay)); - var cornerClass = ' ui-corner-all'; - var calender = ''; - if (isMultiMonth) { - calender += '<div class="ui-datepicker-group ui-datepicker-group-'; - switch (col) { - case 0: calender += 'first'; cornerClass = ' ui-corner-' + (isRTL ? 'right' : 'left'); break; - case numMonths[1]-1: calender += 'last'; cornerClass = ' ui-corner-' + (isRTL ? 'left' : 'right'); break; - default: calender += 'middle'; cornerClass = ''; break; - } - calender += '">'; - } - calender += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + cornerClass + '">' + - (/all|left/.test(cornerClass) && row == 0 ? (isRTL ? next : prev) : '') + - (/all|right/.test(cornerClass) && row == 0 ? (isRTL ? prev : next) : '') + - this._generateMonthYearHeader(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, row > 0 || col > 0, monthNames, monthNamesShort) + // draw month headers - '</div><table class="ui-datepicker-calendar"><thead>' + - '<tr>'; - var thead = ''; - for (var dow = 0; dow < 7; dow++) { // days of the week - var day = (dow + firstDay) % 7; - thead += '<th' + ((dow + firstDay + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : '') + '>' + - '<span title="' + dayNames[day] + '">' + dayNamesMin[day] + '</span></th>'; - } - calender += thead + '</tr></thead><tbody>'; - var daysInMonth = this._getDaysInMonth(drawYear, drawMonth); - if (drawYear == inst.selectedYear && drawMonth == inst.selectedMonth) - inst.selectedDay = Math.min(inst.selectedDay, daysInMonth); - var leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7; - var numRows = (isMultiMonth ? 6 : Math.ceil((leadDays + daysInMonth) / 7)); // calculate the number of rows to generate - var printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays)); - for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows - calender += '<tr>'; - var tbody = ''; - for (var dow = 0; dow < 7; dow++) { // create date picker days - var daySettings = (beforeShowDay ? - beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, '']); - var otherMonth = (printDate.getMonth() != drawMonth); - var unselectable = otherMonth || !daySettings[0] || - (minDate && printDate < minDate) || (maxDate && printDate > maxDate); - tbody += '<td class="' + - ((dow + firstDay + 6) % 7 >= 5 ? ' ui-datepicker-week-end' : '') + // highlight weekends - (otherMonth ? ' ui-datepicker-other-month' : '') + // highlight days from other months - ((printDate.getTime() == selectedDate.getTime() && drawMonth == inst.selectedMonth && inst._keyEvent) || // user pressed key - (defaultDate.getTime() == printDate.getTime() && defaultDate.getTime() == selectedDate.getTime()) ? - // or defaultDate is current printedDate and defaultDate is selectedDate - ' ' + this._dayOverClass : '') + // highlight selected day - (unselectable ? ' ' + this._unselectableClass + ' ui-state-disabled': '') + // highlight unselectable days - (otherMonth && !showOtherMonths ? '' : ' ' + daySettings[1] + // highlight custom dates - (printDate.getTime() >= currentDate.getTime() && printDate.getTime() <= endDate.getTime() ? // in current range - ' ' + this._currentClass : '') + // highlight selected day - (printDate.getTime() == today.getTime() ? ' ui-datepicker-today' : '')) + '"' + // highlight today (if different) - ((!otherMonth || showOtherMonths) && daySettings[2] ? ' title="' + daySettings[2] + '"' : '') + // cell title - (unselectable ? '' : ' onclick="DP_jQuery.datepicker._selectDay(\'#' + - inst.id + '\',' + drawMonth + ',' + drawYear + ', this);return false;"') + '>' + // actions - (otherMonth ? (showOtherMonths ? printDate.getDate() : ' ') : // display for other months - (unselectable ? '<span class="ui-state-default">' + printDate.getDate() + '</span>' : '<a class="ui-state-default' + - (printDate.getTime() == today.getTime() ? ' ui-state-highlight' : '') + - (printDate.getTime() >= currentDate.getTime() && printDate.getTime() <= endDate.getTime() ? // in current range - ' ui-state-active' : '') + // highlight selected day - '" href="#">' + printDate.getDate() + '</a>')) + '</td>'; // display for this month - printDate.setDate(printDate.getDate() + 1); - printDate = this._daylightSavingAdjust(printDate); - } - calender += tbody + '</tr>'; - } - drawMonth++; - if (drawMonth > 11) { - drawMonth = 0; - drawYear++; - } - calender += '</tbody></table>' + (isMultiMonth ? '</div>' + - ((numMonths[0] > 0 && col == numMonths[1]-1) ? '<div class="ui-datepicker-row-break"></div>' : '') : ''); - group += calender; - } - html += group; - } - html += buttonPanel + ($.browser.msie && parseInt($.browser.version,10) < 7 && !inst.inline ? - '<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' : ''); - inst._keyEvent = false; - return html; - }, - - /* Generate the month and year header. */ - _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, secondary, monthNames, monthNamesShort) { - minDate = (inst.rangeStart && minDate && selectedDate < minDate ? selectedDate : minDate); - var changeMonth = this._get(inst, 'changeMonth'); - var changeYear = this._get(inst, 'changeYear'); - var showMonthAfterYear = this._get(inst, 'showMonthAfterYear'); - var html = '<div class="ui-datepicker-title">'; - var monthHtml = ''; - // month selection - if (secondary || !changeMonth) - monthHtml += '<span class="ui-datepicker-month">' + monthNames[drawMonth] + '</span> '; - else { - var inMinYear = (minDate && minDate.getFullYear() == drawYear); - var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear); - monthHtml += '<select class="ui-datepicker-month" ' + - 'onchange="DP_jQuery.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'M\');" ' + - 'onclick="DP_jQuery.datepicker._clickMonthYear(\'#' + inst.id + '\');"' + - '>'; - for (var month = 0; month < 12; month++) { - if ((!inMinYear || month >= minDate.getMonth()) && - (!inMaxYear || month <= maxDate.getMonth())) - monthHtml += '<option value="' + month + '"' + - (month == drawMonth ? ' selected="selected"' : '') + - '>' + monthNamesShort[month] + '</option>'; - } - monthHtml += '</select>'; - } - if (!showMonthAfterYear) - html += monthHtml + ((secondary || changeMonth || changeYear) && (!(changeMonth && changeYear)) ? ' ' : ''); - // year selection - if (secondary || !changeYear) - html += '<span class="ui-datepicker-year">' + drawYear + '</span>'; - else { - // determine range of years to display - var years = this._get(inst, 'yearRange').split(':'); - var year = 0; - var endYear = 0; - if (years.length != 2) { - year = drawYear - 10; - endYear = drawYear + 10; - } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') { - year = drawYear + parseInt(years[0], 10); - endYear = drawYear + parseInt(years[1], 10); - } else { - year = parseInt(years[0], 10); - endYear = parseInt(years[1], 10); - } - year = (minDate ? Math.max(year, minDate.getFullYear()) : year); - endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); - html += '<select class="ui-datepicker-year" ' + - 'onchange="DP_jQuery.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' + - 'onclick="DP_jQuery.datepicker._clickMonthYear(\'#' + inst.id + '\');"' + - '>'; - for (; year <= endYear; year++) { - html += '<option value="' + year + '"' + - (year == drawYear ? ' selected="selected"' : '') + - '>' + year + '</option>'; - } - html += '</select>'; - } - if (showMonthAfterYear) - html += (secondary || changeMonth || changeYear ? ' ' : '') + monthHtml; - html += '</div>'; // Close datepicker_header - return html; - }, - - /* Adjust one of the date sub-fields. */ - _adjustInstDate: function(inst, offset, period) { - var year = inst.drawYear + (period == 'Y' ? offset : 0); - var month = inst.drawMonth + (period == 'M' ? offset : 0); - var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + - (period == 'D' ? offset : 0); - var date = this._daylightSavingAdjust(new Date(year, month, day)); - // ensure it is within the bounds set - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - if (period == 'M' || period == 'Y') - this._notifyChange(inst); - }, - - /* Notify change of month/year. */ - _notifyChange: function(inst) { - var onChange = this._get(inst, 'onChangeMonthYear'); - if (onChange) - onChange.apply((inst.input ? inst.input[0] : null), - [inst.selectedYear, inst.selectedMonth + 1, inst]); - }, - - /* Determine the number of months to show. */ - _getNumberOfMonths: function(inst) { - var numMonths = this._get(inst, 'numberOfMonths'); - return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths)); - }, - - /* Determine the current maximum date - ensure no time components are set - may be overridden for a range. */ - _getMinMaxDate: function(inst, minMax, checkRange) { - var date = this._determineDate(this._get(inst, minMax + 'Date'), null); - return (!checkRange || !inst.rangeStart ? date : - (!date || inst.rangeStart > date ? inst.rangeStart : date)); - }, - - /* Find the number of days in a given month. */ - _getDaysInMonth: function(year, month) { - return 32 - new Date(year, month, 32).getDate(); - }, - - /* Find the day of the week of the first of a month. */ - _getFirstDayOfMonth: function(year, month) { - return new Date(year, month, 1).getDay(); - }, - - /* Determines if we should allow a "next/prev" month display change. */ - _canAdjustMonth: function(inst, offset, curYear, curMonth) { - var numMonths = this._getNumberOfMonths(inst); - var date = this._daylightSavingAdjust(new Date( - curYear, curMonth + (offset < 0 ? offset : numMonths[1]), 1)); - if (offset < 0) - date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth())); - return this._isInRange(inst, date); - }, - - /* Is the given date in the accepted range? */ - _isInRange: function(inst, date) { - // during range selection, use minimum of selected date and range start - var newMinDate = (!inst.rangeStart ? null : this._daylightSavingAdjust( - new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay))); - newMinDate = (newMinDate && inst.rangeStart < newMinDate ? inst.rangeStart : newMinDate); - var minDate = newMinDate || this._getMinMaxDate(inst, 'min'); - var maxDate = this._getMinMaxDate(inst, 'max'); - return ((!minDate || date >= minDate) && (!maxDate || date <= maxDate)); - }, - - /* Provide the configuration settings for formatting/parsing. */ - _getFormatConfig: function(inst) { - var shortYearCutoff = this._get(inst, 'shortYearCutoff'); - shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff : - new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10)); - return {shortYearCutoff: shortYearCutoff, - dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'), - monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')}; - }, - - /* Format the given date for display. */ - _formatDate: function(inst, day, month, year) { - if (!day) { - inst.currentDay = inst.selectedDay; - inst.currentMonth = inst.selectedMonth; - inst.currentYear = inst.selectedYear; - } - var date = (day ? (typeof day == 'object' ? day : - this._daylightSavingAdjust(new Date(year, month, day))) : - this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst)); - } -}); - -/* jQuery extend now ignores nulls! */ -function extendRemove(target, props) { - $.extend(target, props); - for (var name in props) - if (props[name] == null || props[name] == undefined) - target[name] = props[name]; - return target; -}; - -/* Determine whether an object is an array. */ -function isArray(a) { - return (a && (($.browser.safari && typeof a == 'object' && a.length) || - (a.constructor && a.constructor.toString().match(/\Array\(\)/)))); -}; - -/* Invoke the datepicker functionality. - @param options string - a command, optionally followed by additional parameters or - Object - settings for attaching new datepicker functionality - @return jQuery object */ -$.fn.datepicker = function(options){ - - /* Initialise the date picker. */ - if (!$.datepicker.initialized) { - $(document).mousedown($.datepicker._checkExternalClick). - find('body').append($.datepicker.dpDiv); - $.datepicker.initialized = true; - } - - var otherArgs = Array.prototype.slice.call(arguments, 1); - if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate')) - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - if (options == 'option' && arguments.length == 2 && typeof arguments[1] == 'string') - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - return this.each(function() { - typeof options == 'string' ? - $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this].concat(otherArgs)) : - $.datepicker._attachDatepicker(this, options); - }); -}; - -$.datepicker = new Datepicker(); // singleton instance -$.datepicker.initialized = false; -$.datepicker.uuid = new Date().getTime(); -$.datepicker.version = "1.7.2"; - -// Workaround for #4055 -// Add another global to avoid noConflict issues with inline event handlers -window.DP_jQuery = $; - -})(jQuery); diff --git a/forum/skins/default/media/js/.svn/text-base/ui.datepicker.min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/ui.datepicker.min.js.svn-base deleted file mode 100644 index 8427ef7d681b8e290855102e14856b19fdd7282a..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/ui.datepicker.min.js.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -/* - * jQuery UI Datepicker 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Datepicker - * - * Depends: - * ui.core.js - */ -(function($){$.extend($.ui,{datepicker:{version:"1.7.2"}});var PROP_NAME="datepicker";function Datepicker(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._datepickerShowing=false;this._inDialog=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass="ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],dateFormat:"mm/dd/yy",firstDay:0,isRTL:false};this._defaults={showOn:"focus",showAnim:"show",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,showMonthAfterYear:false,yearRange:"-10:+10",showOtherMonths:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"normal",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false};$.extend(this._defaults,this.regional[""]);this.dpDiv=$('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>')}$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",log:function(){if(this.debug){console.log.apply("",arguments)}},setDefaults:function(settings){extendRemove(this._defaults,settings||{});return this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase();var inline=(nodeName=="div"||nodeName=="span");if(!target.id){target.id="dp"+(++this.uuid)}var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{});if(nodeName=="input"){this._connectDatepicker(target,inst)}else{if(inline){this._inlineDatepicker(target,inst)}}},_newInst:function(target,inline){var id=target[0].id.replace(/([:\[\]\.])/g,"\\\\$1");return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:$('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}},_connectDatepicker:function(target,inst){var input=$(target);inst.append=$([]);inst.trigger=$([]);if(input.hasClass(this.markerClassName)){return}var appendText=this._get(inst,"appendText");var isRTL=this._get(inst,"isRTL");if(appendText){inst.append=$('<span class="'+this._appendClass+'">'+appendText+"</span>");input[isRTL?"before":"after"](inst.append)}var showOn=this._get(inst,"showOn");if(showOn=="focus"||showOn=="both"){input.focus(this._showDatepicker)}if(showOn=="button"||showOn=="both"){var buttonText=this._get(inst,"buttonText");var buttonImage=this._get(inst,"buttonImage");inst.trigger=$(this._get(inst,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:buttonImage,alt:buttonText,title:buttonText}):$('<button type="button"></button>').addClass(this._triggerClass).html(buttonImage==""?buttonText:$("<img/>").attr({src:buttonImage,alt:buttonText,title:buttonText})));input[isRTL?"before":"after"](inst.trigger);inst.trigger.click(function(){if($.datepicker._datepickerShowing&&$.datepicker._lastInput==target){$.datepicker._hideDatepicker()}else{$.datepicker._showDatepicker(target)}return false})}input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst)},_inlineDatepicker:function(target,inst){var divSpan=$(target);if(divSpan.hasClass(this.markerClassName)){return}divSpan.addClass(this.markerClassName).append(inst.dpDiv).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst);this._setDate(inst,this._getDefaultDate(inst));this._updateDatepicker(inst);this._updateAlternate(inst)},_dialogDatepicker:function(input,dateText,onSelect,settings,pos){var inst=this._dialogInst;if(!inst){var id="dp"+(++this.uuid);this._dialogInput=$('<input type="text" id="'+id+'" size="1" style="position: absolute; top: -100px;"/>');this._dialogInput.keydown(this._doKeyDown);$("body").append(this._dialogInput);inst=this._dialogInst=this._newInst(this._dialogInput,false);inst.settings={};$.data(this._dialogInput[0],PROP_NAME,inst)}extendRemove(inst.settings,settings||{});this._dialogInput.val(dateText);this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);if(!this._pos){var browserWidth=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;var browserHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight;var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY]}this._dialogInput.css("left",this._pos[0]+"px").css("top",this._pos[1]+"px");inst.settings.onSelect=onSelect;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if($.blockUI){$.blockUI(this.dpDiv)}$.data(this._dialogInput[0],PROP_NAME,inst);return this},_destroyDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();$.removeData(target,PROP_NAME);if(nodeName=="input"){inst.append.remove();inst.trigger.remove();$target.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress)}else{if(nodeName=="div"||nodeName=="span"){$target.removeClass(this.markerClassName).empty()}}},_enableDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=false;inst.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().removeClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)})},_disableDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=true;inst.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().addClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)});this._disabledInputs[this._disabledInputs.length]=target},_isDisabledDatepicker:function(target){if(!target){return false}for(var i=0;i<this._disabledInputs.length;i++){if(this._disabledInputs[i]==target){return true}}return false},_getInst:function(target){try{return $.data(target,PROP_NAME)}catch(err){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(target,name,value){var inst=this._getInst(target);if(arguments.length==2&&typeof name=="string"){return(name=="defaults"?$.extend({},$.datepicker._defaults):(inst?(name=="all"?$.extend({},inst.settings):this._get(inst,name)):null))}var settings=name||{};if(typeof name=="string"){settings={};settings[name]=value}if(inst){if(this._curInst==inst){this._hideDatepicker(null)}var date=this._getDateDatepicker(target);extendRemove(inst.settings,settings);this._setDateDatepicker(target,date);this._updateDatepicker(inst)}},_changeDatepicker:function(target,name,value){this._optionDatepicker(target,name,value)},_refreshDatepicker:function(target){var inst=this._getInst(target);if(inst){this._updateDatepicker(inst)}},_setDateDatepicker:function(target,date,endDate){var inst=this._getInst(target);if(inst){this._setDate(inst,date,endDate);this._updateDatepicker(inst);this._updateAlternate(inst)}},_getDateDatepicker:function(target){var inst=this._getInst(target);if(inst&&!inst.inline){this._setDateFromField(inst)}return(inst?this._getDate(inst):null)},_doKeyDown:function(event){var inst=$.datepicker._getInst(event.target);var handled=true;var isRTL=inst.dpDiv.is(".ui-datepicker-rtl");inst._keyEvent=true;if($.datepicker._datepickerShowing){switch(event.keyCode){case 9:$.datepicker._hideDatepicker(null,"");break;case 13:var sel=$("td."+$.datepicker._dayOverClass+", td."+$.datepicker._currentClass,inst.dpDiv);if(sel[0]){$.datepicker._selectDay(event.target,inst.selectedMonth,inst.selectedYear,sel[0])}else{$.datepicker._hideDatepicker(null,$.datepicker._get(inst,"duration"))}return false;break;case 27:$.datepicker._hideDatepicker(null,$.datepicker._get(inst,"duration"));break;case 33:$.datepicker._adjustDate(event.target,(event.ctrlKey?-$.datepicker._get(inst,"stepBigMonths"):-$.datepicker._get(inst,"stepMonths")),"M");break;case 34:$.datepicker._adjustDate(event.target,(event.ctrlKey?+$.datepicker._get(inst,"stepBigMonths"):+$.datepicker._get(inst,"stepMonths")),"M");break;case 35:if(event.ctrlKey||event.metaKey){$.datepicker._clearDate(event.target)}handled=event.ctrlKey||event.metaKey;break;case 36:if(event.ctrlKey||event.metaKey){$.datepicker._gotoToday(event.target)}handled=event.ctrlKey||event.metaKey;break;case 37:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,(isRTL?+1:-1),"D")}handled=event.ctrlKey||event.metaKey;if(event.originalEvent.altKey){$.datepicker._adjustDate(event.target,(event.ctrlKey?-$.datepicker._get(inst,"stepBigMonths"):-$.datepicker._get(inst,"stepMonths")),"M")}break;case 38:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,-7,"D")}handled=event.ctrlKey||event.metaKey;break;case 39:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,(isRTL?-1:+1),"D")}handled=event.ctrlKey||event.metaKey;if(event.originalEvent.altKey){$.datepicker._adjustDate(event.target,(event.ctrlKey?+$.datepicker._get(inst,"stepBigMonths"):+$.datepicker._get(inst,"stepMonths")),"M")}break;case 40:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,+7,"D")}handled=event.ctrlKey||event.metaKey;break;default:handled=false}}else{if(event.keyCode==36&&event.ctrlKey){$.datepicker._showDatepicker(this)}else{handled=false}}if(handled){event.preventDefault();event.stopPropagation()}},_doKeyPress:function(event){var inst=$.datepicker._getInst(event.target);if($.datepicker._get(inst,"constrainInput")){var chars=$.datepicker._possibleChars($.datepicker._get(inst,"dateFormat"));var chr=String.fromCharCode(event.charCode==undefined?event.keyCode:event.charCode);return event.ctrlKey||(chr<" "||!chars||chars.indexOf(chr)>-1)}},_showDatepicker:function(input){input=input.target||input;if(input.nodeName.toLowerCase()!="input"){input=$("input",input.parentNode)[0]}if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input){return}var inst=$.datepicker._getInst(input);var beforeShow=$.datepicker._get(inst,"beforeShow");extendRemove(inst.settings,(beforeShow?beforeShow.apply(input,[input,inst]):{}));$.datepicker._hideDatepicker(null,"");$.datepicker._lastInput=input;$.datepicker._setDateFromField(inst);if($.datepicker._inDialog){input.value=""}if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);$.datepicker._pos[1]+=input.offsetHeight}var isFixed=false;$(input).parents().each(function(){isFixed|=$(this).css("position")=="fixed";return !isFixed});if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;$.datepicker._pos[1]-=document.documentElement.scrollTop}var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null;inst.rangeStart=null;inst.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});$.datepicker._updateDatepicker(inst);offset=$.datepicker._checkOffset(inst,offset,isFixed);inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?"static":(isFixed?"fixed":"absolute")),display:"none",left:offset.left+"px",top:offset.top+"px"});if(!inst.inline){var showAnim=$.datepicker._get(inst,"showAnim")||"show";var duration=$.datepicker._get(inst,"duration");var postProcess=function(){$.datepicker._datepickerShowing=true;if($.browser.msie&&parseInt($.browser.version,10)<7){$("iframe.ui-datepicker-cover").css({width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4})}};if($.effects&&$.effects[showAnim]){inst.dpDiv.show(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[showAnim](duration,postProcess)}if(duration==""){postProcess()}if(inst.input[0].type!="hidden"){inst.input[0].focus()}$.datepicker._curInst=inst}},_updateDatepicker:function(inst){var dims={width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4};var self=this;inst.dpDiv.empty().append(this._generateHTML(inst)).find("iframe.ui-datepicker-cover").css({width:dims.width,height:dims.height}).end().find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout",function(){$(this).removeClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).removeClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).removeClass("ui-datepicker-next-hover")}}).bind("mouseover",function(){if(!self._isDisabledDatepicker(inst.inline?inst.dpDiv.parent()[0]:inst.input[0])){$(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");$(this).addClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).addClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).addClass("ui-datepicker-next-hover")}}}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end();var numMonths=this._getNumberOfMonths(inst);var cols=numMonths[1];var width=17;if(cols>1){inst.dpDiv.addClass("ui-datepicker-multi-"+cols).css("width",(width*cols)+"em")}else{inst.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("")}inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");inst.dpDiv[(this._get(inst,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");if(inst.input&&inst.input[0].type!="hidden"&&inst==$.datepicker._curInst){$(inst.input[0]).focus()}},_checkOffset:function(inst,offset,isFixed){var dpWidth=inst.dpDiv.outerWidth();var dpHeight=inst.dpDiv.outerHeight();var inputWidth=inst.input?inst.input.outerWidth():0;var inputHeight=inst.input?inst.input.outerHeight():0;var viewWidth=(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth)+$(document).scrollLeft();var viewHeight=(window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight)+$(document).scrollTop();offset.left-=(this._get(inst,"isRTL")?(dpWidth-inputWidth):0);offset.left-=(isFixed&&offset.left==inst.input.offset().left)?$(document).scrollLeft():0;offset.top-=(isFixed&&offset.top==(inst.input.offset().top+inputHeight))?$(document).scrollTop():0;offset.left-=(offset.left+dpWidth>viewWidth&&viewWidth>dpWidth)?Math.abs(offset.left+dpWidth-viewWidth):0;offset.top-=(offset.top+dpHeight>viewHeight&&viewHeight>dpHeight)?Math.abs(offset.top+dpHeight+inputHeight*2-viewHeight):0;return offset},_findPos:function(obj){while(obj&&(obj.type=="hidden"||obj.nodeType!=1)){obj=obj.nextSibling}var position=$(obj).offset();return[position.left,position.top]},_hideDatepicker:function(input,duration){var inst=this._curInst;if(!inst||(input&&inst!=$.data(input,PROP_NAME))){return}if(inst.stayOpen){this._selectDate("#"+inst.id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear))}inst.stayOpen=false;if(this._datepickerShowing){duration=(duration!=null?duration:this._get(inst,"duration"));var showAnim=this._get(inst,"showAnim");var postProcess=function(){$.datepicker._tidyDialog(inst)};if(duration!=""&&$.effects&&$.effects[showAnim]){inst.dpDiv.hide(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[(duration==""?"hide":(showAnim=="slideDown"?"slideUp":(showAnim=="fadeIn"?"fadeOut":"hide")))](duration,postProcess)}if(duration==""){this._tidyDialog(inst)}var onClose=this._get(inst,"onClose");if(onClose){onClose.apply((inst.input?inst.input[0]:null),[(inst.input?inst.input.val():""),inst])}this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if($.blockUI){$.unblockUI();$("body").append(this.dpDiv)}}this._inDialog=false}this._curInst=null},_tidyDialog:function(inst){inst.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(event){if(!$.datepicker._curInst){return}var $target=$(event.target);if(($target.parents("#"+$.datepicker._mainDivId).length==0)&&!$target.hasClass($.datepicker.markerClassName)&&!$target.hasClass($.datepicker._triggerClass)&&$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI)){$.datepicker._hideDatepicker(null,"")}},_adjustDate:function(id,offset,period){var target=$(id);var inst=this._getInst(target[0]);if(this._isDisabledDatepicker(target[0])){return}this._adjustInstDate(inst,offset+(period=="M"?this._get(inst,"showCurrentAtPos"):0),period);this._updateDatepicker(inst)},_gotoToday:function(id){var target=$(id);var inst=this._getInst(target[0]);if(this._get(inst,"gotoCurrent")&&inst.currentDay){inst.selectedDay=inst.currentDay;inst.drawMonth=inst.selectedMonth=inst.currentMonth;inst.drawYear=inst.selectedYear=inst.currentYear}else{var date=new Date();inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear()}this._notifyChange(inst);this._adjustDate(target)},_selectMonthYear:function(id,select,period){var target=$(id);var inst=this._getInst(target[0]);inst._selectingMonthYear=false;inst["selected"+(period=="M"?"Month":"Year")]=inst["draw"+(period=="M"?"Month":"Year")]=parseInt(select.options[select.selectedIndex].value,10);this._notifyChange(inst);this._adjustDate(target)},_clickMonthYear:function(id){var target=$(id);var inst=this._getInst(target[0]);if(inst.input&&inst._selectingMonthYear&&!$.browser.msie){inst.input[0].focus()}inst._selectingMonthYear=!inst._selectingMonthYear},_selectDay:function(id,month,year,td){var target=$(id);if($(td).hasClass(this._unselectableClass)||this._isDisabledDatepicker(target[0])){return}var inst=this._getInst(target[0]);inst.selectedDay=inst.currentDay=$("a",td).html();inst.selectedMonth=inst.currentMonth=month;inst.selectedYear=inst.currentYear=year;if(inst.stayOpen){inst.endDay=inst.endMonth=inst.endYear=null}this._selectDate(id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear));if(inst.stayOpen){inst.rangeStart=this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay));this._updateDatepicker(inst)}},_clearDate:function(id){var target=$(id);var inst=this._getInst(target[0]);inst.stayOpen=false;inst.endDay=inst.endMonth=inst.endYear=inst.rangeStart=null;this._selectDate(target,"")},_selectDate:function(id,dateStr){var target=$(id);var inst=this._getInst(target[0]);dateStr=(dateStr!=null?dateStr:this._formatDate(inst));if(inst.input){inst.input.val(dateStr)}this._updateAlternate(inst);var onSelect=this._get(inst,"onSelect");if(onSelect){onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst])}else{if(inst.input){inst.input.trigger("change")}}if(inst.inline){this._updateDatepicker(inst)}else{if(!inst.stayOpen){this._hideDatepicker(null,this._get(inst,"duration"));this._lastInput=inst.input[0];if(typeof(inst.input[0])!="object"){inst.input[0].focus()}this._lastInput=null}}},_updateAlternate:function(inst){var altField=this._get(inst,"altField");if(altField){var altFormat=this._get(inst,"altFormat")||this._get(inst,"dateFormat");var date=this._getDate(inst);dateStr=this.formatDate(altFormat,date,this._getFormatConfig(inst));$(altField).each(function(){$(this).val(dateStr)})}},noWeekends:function(date){var day=date.getDay();return[(day>0&&day<6),""]},iso8601Week:function(date){var checkDate=new Date(date.getFullYear(),date.getMonth(),date.getDate());var firstMon=new Date(checkDate.getFullYear(),1-1,4);var firstDay=firstMon.getDay()||7;firstMon.setDate(firstMon.getDate()+1-firstDay);if(firstDay<4&&checkDate<firstMon){checkDate.setDate(checkDate.getDate()-3);return $.datepicker.iso8601Week(checkDate)}else{if(checkDate>new Date(checkDate.getFullYear(),12-1,28)){firstDay=new Date(checkDate.getFullYear()+1,1-1,4).getDay()||7;if(firstDay>4&&(checkDate.getDay()||7)<firstDay-3){return 1}}}return Math.floor(((checkDate-firstMon)/86400000)/7)+1},parseDate:function(format,value,settings){if(format==null||value==null){throw"Invalid arguments"}value=(typeof value=="object"?value.toString():value+"");if(value==""){return null}var shortYearCutoff=(settings?settings.shortYearCutoff:null)||this._defaults.shortYearCutoff;var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var year=-1;var month=-1;var day=-1;var doy=-1;var literal=false;var lookAhead=function(match){var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);if(matches){iFormat++}return matches};var getNumber=function(match){lookAhead(match);var origSize=(match=="@"?14:(match=="y"?4:(match=="o"?3:2)));var size=origSize;var num=0;while(size>0&&iValue<value.length&&value.charAt(iValue)>="0"&&value.charAt(iValue)<="9"){num=num*10+parseInt(value.charAt(iValue++),10);size--}if(size==origSize){throw"Missing number at position "+iValue}return num};var getName=function(match,shortNames,longNames){var names=(lookAhead(match)?longNames:shortNames);var size=0;for(var j=0;j<names.length;j++){size=Math.max(size,names[j].length)}var name="";var iInit=iValue;while(size>0&&iValue<value.length){name+=value.charAt(iValue++);for(var i=0;i<names.length;i++){if(name==names[i]){return i+1}}size--}throw"Unknown name at position "+iInit};var checkLiteral=function(){if(value.charAt(iValue)!=format.charAt(iFormat)){throw"Unexpected literal at position "+iValue}iValue++};var iValue=0;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{checkLiteral()}}else{switch(format.charAt(iFormat)){case"d":day=getNumber("d");break;case"D":getName("D",dayNamesShort,dayNames);break;case"o":doy=getNumber("o");break;case"m":month=getNumber("m");break;case"M":month=getName("M",monthNamesShort,monthNames);break;case"y":year=getNumber("y");break;case"@":var date=new Date(getNumber("@"));year=date.getFullYear();month=date.getMonth()+1;day=date.getDate();break;case"'":if(lookAhead("'")){checkLiteral()}else{literal=true}break;default:checkLiteral()}}}if(year==-1){year=new Date().getFullYear()}else{if(year<100){year+=new Date().getFullYear()-new Date().getFullYear()%100+(year<=shortYearCutoff?0:-100)}}if(doy>-1){month=1;day=doy;do{var dim=this._getDaysInMonth(year,month-1);if(day<=dim){break}month++;day-=dim}while(true)}var date=this._daylightSavingAdjust(new Date(year,month-1,day));if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day){throw"Invalid date"}return date},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TIMESTAMP:"@",W3C:"yy-mm-dd",formatDate:function(format,date,settings){if(!date){return""}var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var lookAhead=function(match){var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);if(matches){iFormat++}return matches};var formatNumber=function(match,value,len){var num=""+value;if(lookAhead(match)){while(num.length<len){num="0"+num}}return num};var formatName=function(match,value,shortNames,longNames){return(lookAhead(match)?longNames[value]:shortNames[value])};var output="";var literal=false;if(date){for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{output+=format.charAt(iFormat)}}else{switch(format.charAt(iFormat)){case"d":output+=formatNumber("d",date.getDate(),2);break;case"D":output+=formatName("D",date.getDay(),dayNamesShort,dayNames);break;case"o":var doy=date.getDate();for(var m=date.getMonth()-1;m>=0;m--){doy+=this._getDaysInMonth(date.getFullYear(),m)}output+=formatNumber("o",doy,3);break;case"m":output+=formatNumber("m",date.getMonth()+1,2);break;case"M":output+=formatName("M",date.getMonth(),monthNamesShort,monthNames);break;case"y":output+=(lookAhead("y")?date.getFullYear():(date.getYear()%100<10?"0":"")+date.getYear()%100);break;case"@":output+=date.getTime();break;case"'":if(lookAhead("'")){output+="'"}else{literal=true}break;default:output+=format.charAt(iFormat)}}}}return output},_possibleChars:function(format){var chars="";var literal=false;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{chars+=format.charAt(iFormat)}}else{switch(format.charAt(iFormat)){case"d":case"m":case"y":case"@":chars+="0123456789";break;case"D":case"M":return null;case"'":if(lookAhead("'")){chars+="'"}else{literal=true}break;default:chars+=format.charAt(iFormat)}}}return chars},_get:function(inst,name){return inst.settings[name]!==undefined?inst.settings[name]:this._defaults[name]},_setDateFromField:function(inst){var dateFormat=this._get(inst,"dateFormat");var dates=inst.input?inst.input.val():null;inst.endDay=inst.endMonth=inst.endYear=null;var date=defaultDate=this._getDefaultDate(inst);var settings=this._getFormatConfig(inst);try{date=this.parseDate(dateFormat,dates,settings)||defaultDate}catch(event){this.log(event);date=defaultDate}inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();inst.currentDay=(dates?date.getDate():0);inst.currentMonth=(dates?date.getMonth():0);inst.currentYear=(dates?date.getFullYear():0);this._adjustInstDate(inst)},_getDefaultDate:function(inst){var date=this._determineDate(this._get(inst,"defaultDate"),new Date());var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&date<minDate?minDate:date);date=(maxDate&&date>maxDate?maxDate:date);return date},_determineDate:function(date,defaultDate){var offsetNumeric=function(offset){var date=new Date();date.setDate(date.getDate()+offset);return date};var offsetString=function(offset,getDaysInMonth){var date=new Date();var year=date.getFullYear();var month=date.getMonth();var day=date.getDate();var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;var matches=pattern.exec(offset);while(matches){switch(matches[2]||"d"){case"d":case"D":day+=parseInt(matches[1],10);break;case"w":case"W":day+=parseInt(matches[1],10)*7;break;case"m":case"M":month+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break;case"y":case"Y":year+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break}matches=pattern.exec(offset)}return new Date(year,month,day)};date=(date==null?defaultDate:(typeof date=="string"?offsetString(date,this._getDaysInMonth):(typeof date=="number"?(isNaN(date)?defaultDate:offsetNumeric(date)):date)));date=(date&&date.toString()=="Invalid Date"?defaultDate:date);if(date){date.setHours(0);date.setMinutes(0);date.setSeconds(0);date.setMilliseconds(0)}return this._daylightSavingAdjust(date)},_daylightSavingAdjust:function(date){if(!date){return null}date.setHours(date.getHours()>12?date.getHours()+2:0);return date},_setDate:function(inst,date,endDate){var clear=!(date);var origMonth=inst.selectedMonth;var origYear=inst.selectedYear;date=this._determineDate(date,new Date());inst.selectedDay=inst.currentDay=date.getDate();inst.drawMonth=inst.selectedMonth=inst.currentMonth=date.getMonth();inst.drawYear=inst.selectedYear=inst.currentYear=date.getFullYear();if(origMonth!=inst.selectedMonth||origYear!=inst.selectedYear){this._notifyChange(inst)}this._adjustInstDate(inst);if(inst.input){inst.input.val(clear?"":this._formatDate(inst))}},_getDate:function(inst){var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=="")?null:this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return startDate},_generateHTML:function(inst){var today=new Date();today=this._daylightSavingAdjust(new Date(today.getFullYear(),today.getMonth(),today.getDate()));var isRTL=this._get(inst,"isRTL");var showButtonPanel=this._get(inst,"showButtonPanel");var hideIfNoPrevNext=this._get(inst,"hideIfNoPrevNext");var navigationAsDateFormat=this._get(inst,"navigationAsDateFormat");var numMonths=this._getNumberOfMonths(inst);var showCurrentAtPos=this._get(inst,"showCurrentAtPos");var stepMonths=this._get(inst,"stepMonths");var stepBigMonths=this._get(inst,"stepBigMonths");var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);var currentDate=this._daylightSavingAdjust((!inst.currentDay?new Date(9999,9,9):new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");var drawMonth=inst.drawMonth-showCurrentAtPos;var drawYear=inst.drawYear;if(drawMonth<0){drawMonth+=12;drawYear--}if(maxDate){var maxDraw=this._daylightSavingAdjust(new Date(maxDate.getFullYear(),maxDate.getMonth()-numMonths[1]+1,maxDate.getDate()));maxDraw=(minDate&&maxDraw<minDate?minDate:maxDraw);while(this._daylightSavingAdjust(new Date(drawYear,drawMonth,1))>maxDraw){drawMonth--;if(drawMonth<0){drawMonth=11;drawYear--}}}inst.drawMonth=drawMonth;inst.drawYear=drawYear;var prevText=this._get(inst,"prevText");prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,this._daylightSavingAdjust(new Date(drawYear,drawMonth-stepMonths,1)),this._getFormatConfig(inst)));var prev=(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#'+inst.id+"', -"+stepMonths+", 'M');\" title=\""+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"e":"w")+'">'+prevText+"</span></a>":(hideIfNoPrevNext?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"e":"w")+'">'+prevText+"</span></a>"));var nextText=this._get(inst,"nextText");nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,this._daylightSavingAdjust(new Date(drawYear,drawMonth+stepMonths,1)),this._getFormatConfig(inst)));var next=(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#'+inst.id+"', +"+stepMonths+", 'M');\" title=\""+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"w":"e")+'">'+nextText+"</span></a>":(hideIfNoPrevNext?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"w":"e")+'">'+nextText+"</span></a>"));var currentText=this._get(inst,"currentText");var gotoDate=(this._get(inst,"gotoCurrent")&&inst.currentDay?currentDate:today);currentText=(!navigationAsDateFormat?currentText:this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));var controls=(!inst.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery.datepicker._hideDatepicker();">'+this._get(inst,"closeText")+"</button>":"");var buttonPanel=(showButtonPanel)?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(isRTL?controls:"")+(this._isInRange(inst,gotoDate)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery.datepicker._gotoToday(\'#'+inst.id+"');\">"+currentText+"</button>":"")+(isRTL?"":controls)+"</div>":"";var firstDay=parseInt(this._get(inst,"firstDay"),10);firstDay=(isNaN(firstDay)?0:firstDay);var dayNames=this._get(inst,"dayNames");var dayNamesShort=this._get(inst,"dayNamesShort");var dayNamesMin=this._get(inst,"dayNamesMin");var monthNames=this._get(inst,"monthNames");var monthNamesShort=this._get(inst,"monthNamesShort");var beforeShowDay=this._get(inst,"beforeShowDay");var showOtherMonths=this._get(inst,"showOtherMonths");var calculateWeek=this._get(inst,"calculateWeek")||this.iso8601Week;var endDate=inst.endDay?this._daylightSavingAdjust(new Date(inst.endYear,inst.endMonth,inst.endDay)):currentDate;var defaultDate=this._getDefaultDate(inst);var html="";for(var row=0;row<numMonths[0];row++){var group="";for(var col=0;col<numMonths[1];col++){var selectedDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,inst.selectedDay));var cornerClass=" ui-corner-all";var calender="";if(isMultiMonth){calender+='<div class="ui-datepicker-group ui-datepicker-group-';switch(col){case 0:calender+="first";cornerClass=" ui-corner-"+(isRTL?"right":"left");break;case numMonths[1]-1:calender+="last";cornerClass=" ui-corner-"+(isRTL?"left":"right");break;default:calender+="middle";cornerClass="";break}calender+='">'}calender+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+cornerClass+'">'+(/all|left/.test(cornerClass)&&row==0?(isRTL?next:prev):"")+(/all|right/.test(cornerClass)&&row==0?(isRTL?prev:next):"")+this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,row>0||col>0,monthNames,monthNamesShort)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var thead="";for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;thead+="<th"+((dow+firstDay+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+dayNames[day]+'">'+dayNamesMin[day]+"</span></th>"}calender+=thead+"</tr></thead><tbody>";var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth){inst.selectedDay=Math.min(inst.selectedDay,daysInMonth)}var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;var numRows=(isMultiMonth?6:Math.ceil((leadDays+daysInMonth)/7));var printDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,1-leadDays));for(var dRow=0;dRow<numRows;dRow++){calender+="<tr>";var tbody="";for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,""]);var otherMonth=(printDate.getMonth()!=drawMonth);var unselectable=otherMonth||!daySettings[0]||(minDate&&printDate<minDate)||(maxDate&&printDate>maxDate);tbody+='<td class="'+((dow+firstDay+6)%7>=5?" ui-datepicker-week-end":"")+(otherMonth?" ui-datepicker-other-month":"")+((printDate.getTime()==selectedDate.getTime()&&drawMonth==inst.selectedMonth&&inst._keyEvent)||(defaultDate.getTime()==printDate.getTime()&&defaultDate.getTime()==selectedDate.getTime())?" "+this._dayOverClass:"")+(unselectable?" "+this._unselectableClass+" ui-state-disabled":"")+(otherMonth&&!showOtherMonths?"":" "+daySettings[1]+(printDate.getTime()>=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" "+this._currentClass:"")+(printDate.getTime()==today.getTime()?" ui-datepicker-today":""))+'"'+((!otherMonth||showOtherMonths)&&daySettings[2]?' title="'+daySettings[2]+'"':"")+(unselectable?"":" onclick=\"DP_jQuery.datepicker._selectDay('#"+inst.id+"',"+drawMonth+","+drawYear+', this);return false;"')+">"+(otherMonth?(showOtherMonths?printDate.getDate():" "):(unselectable?'<span class="ui-state-default">'+printDate.getDate()+"</span>":'<a class="ui-state-default'+(printDate.getTime()==today.getTime()?" ui-state-highlight":"")+(printDate.getTime()>=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" ui-state-active":"")+'" href="#">'+printDate.getDate()+"</a>"))+"</td>";printDate.setDate(printDate.getDate()+1);printDate=this._daylightSavingAdjust(printDate)}calender+=tbody+"</tr>"}drawMonth++;if(drawMonth>11){drawMonth=0;drawYear++}calender+="</tbody></table>"+(isMultiMonth?"</div>"+((numMonths[0]>0&&col==numMonths[1]-1)?'<div class="ui-datepicker-row-break"></div>':""):"");group+=calender}html+=group}html+=buttonPanel+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':"");inst._keyEvent=false;return html},_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,secondary,monthNames,monthNamesShort){minDate=(inst.rangeStart&&minDate&&selectedDate<minDate?selectedDate:minDate);var changeMonth=this._get(inst,"changeMonth");var changeYear=this._get(inst,"changeYear");var showMonthAfterYear=this._get(inst,"showMonthAfterYear");var html='<div class="ui-datepicker-title">';var monthHtml="";if(secondary||!changeMonth){monthHtml+='<span class="ui-datepicker-month">'+monthNames[drawMonth]+"</span> "}else{var inMinYear=(minDate&&minDate.getFullYear()==drawYear);var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);monthHtml+='<select class="ui-datepicker-month" onchange="DP_jQuery.datepicker._selectMonthYear(\'#'+inst.id+"', this, 'M');\" onclick=\"DP_jQuery.datepicker._clickMonthYear('#"+inst.id+"');\">";for(var month=0;month<12;month++){if((!inMinYear||month>=minDate.getMonth())&&(!inMaxYear||month<=maxDate.getMonth())){monthHtml+='<option value="'+month+'"'+(month==drawMonth?' selected="selected"':"")+">"+monthNamesShort[month]+"</option>"}}monthHtml+="</select>"}if(!showMonthAfterYear){html+=monthHtml+((secondary||changeMonth||changeYear)&&(!(changeMonth&&changeYear))?" ":"")}if(secondary||!changeYear){html+='<span class="ui-datepicker-year">'+drawYear+"</span>"}else{var years=this._get(inst,"yearRange").split(":");var year=0;var endYear=0;if(years.length!=2){year=drawYear-10;endYear=drawYear+10}else{if(years[0].charAt(0)=="+"||years[0].charAt(0)=="-"){year=drawYear+parseInt(years[0],10);endYear=drawYear+parseInt(years[1],10)}else{year=parseInt(years[0],10);endYear=parseInt(years[1],10)}}year=(minDate?Math.max(year,minDate.getFullYear()):year);endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);html+='<select class="ui-datepicker-year" onchange="DP_jQuery.datepicker._selectMonthYear(\'#'+inst.id+"', this, 'Y');\" onclick=\"DP_jQuery.datepicker._clickMonthYear('#"+inst.id+"');\">";for(;year<=endYear;year++){html+='<option value="'+year+'"'+(year==drawYear?' selected="selected"':"")+">"+year+"</option>"}html+="</select>"}if(showMonthAfterYear){html+=(secondary||changeMonth||changeYear?" ":"")+monthHtml}html+="</div>";return html},_adjustInstDate:function(inst,offset,period){var year=inst.drawYear+(period=="Y"?offset:0);var month=inst.drawMonth+(period=="M"?offset:0);var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+(period=="D"?offset:0);var date=this._daylightSavingAdjust(new Date(year,month,day));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&date<minDate?minDate:date);date=(maxDate&&date>maxDate?maxDate:date);inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();if(period=="M"||period=="Y"){this._notifyChange(inst)}},_notifyChange:function(inst){var onChange=this._get(inst,"onChangeMonthYear");if(onChange){onChange.apply((inst.input?inst.input[0]:null),[inst.selectedYear,inst.selectedMonth+1,inst])}},_getNumberOfMonths:function(inst){var numMonths=this._get(inst,"numberOfMonths");return(numMonths==null?[1,1]:(typeof numMonths=="number"?[1,numMonths]:numMonths))},_getMinMaxDate:function(inst,minMax,checkRange){var date=this._determineDate(this._get(inst,minMax+"Date"),null);return(!checkRange||!inst.rangeStart?date:(!date||inst.rangeStart>date?inst.rangeStart:date))},_getDaysInMonth:function(year,month){return 32-new Date(year,month,32).getDate()},_getFirstDayOfMonth:function(year,month){return new Date(year,month,1).getDay()},_canAdjustMonth:function(inst,offset,curYear,curMonth){var numMonths=this._getNumberOfMonths(inst);var date=this._daylightSavingAdjust(new Date(curYear,curMonth+(offset<0?offset:numMonths[1]),1));if(offset<0){date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()))}return this._isInRange(inst,date)},_isInRange:function(inst,date){var newMinDate=(!inst.rangeStart?null:this._daylightSavingAdjust(new Date(inst.selectedYear,inst.selectedMonth,inst.selectedDay)));newMinDate=(newMinDate&&inst.rangeStart<newMinDate?inst.rangeStart:newMinDate);var minDate=newMinDate||this._getMinMaxDate(inst,"min");var maxDate=this._getMinMaxDate(inst,"max");return((!minDate||date>=minDate)&&(!maxDate||date<=maxDate))},_getFormatConfig:function(inst){var shortYearCutoff=this._get(inst,"shortYearCutoff");shortYearCutoff=(typeof shortYearCutoff!="string"?shortYearCutoff:new Date().getFullYear()%100+parseInt(shortYearCutoff,10));return{shortYearCutoff:shortYearCutoff,dayNamesShort:this._get(inst,"dayNamesShort"),dayNames:this._get(inst,"dayNames"),monthNamesShort:this._get(inst,"monthNamesShort"),monthNames:this._get(inst,"monthNames")}},_formatDate:function(inst,day,month,year){if(!day){inst.currentDay=inst.selectedDay;inst.currentMonth=inst.selectedMonth;inst.currentYear=inst.selectedYear}var date=(day?(typeof day=="object"?day:this._daylightSavingAdjust(new Date(year,month,day))):this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return this.formatDate(this._get(inst,"dateFormat"),date,this._getFormatConfig(inst))}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null||props[name]==undefined){target[name]=props[name]}}return target}function isArray(a){return(a&&(($.browser.safari&&typeof a=="object"&&a.length)||(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))}$.fn.datepicker=function(options){if(!$.datepicker.initialized){$(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv);$.datepicker.initialized=true}var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=="string"&&(options=="isDisabled"||options=="getDate")){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}if(options=="option"&&arguments.length==2&&typeof arguments[1]=="string"){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}return this.each(function(){typeof options=="string"?$.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this].concat(otherArgs)):$.datepicker._attachDatepicker(this,options)})};$.datepicker=new Datepicker();$.datepicker.initialized=false;$.datepicker.uuid=new Date().getTime();$.datepicker.version="1.7.2";window.DP_jQuery=$})(jQuery); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/viewbox.css.svn-base b/forum/skins/default/media/js/.svn/text-base/viewbox.css.svn-base deleted file mode 100644 index b563176740c3e2301c80196f7403d3794283a7a9..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/viewbox.css.svn-base +++ /dev/null @@ -1,137 +0,0 @@ -/* Miniatury */ -.thumbdiv { - float:left; - position:relative; -} -.thumbdiv .title { - position:absolute; - padding:2px; - font-size:1.0em; - color:#fff; - background:#000; - border-top:solid 1px #000; - opacity:0.8; - bottom:14px; - left:8px; - right:9px; -} -/* VIEWBOX */ -#viewbox { - position:fixed; - height:100%; - width:100%; - top:0; - left:0; - background:#383739; - z-index:2190; - overflow:auto; -} -.vb_wrap { - position:absolute; - padding:10px; - height:20px; - width:20px; - background-image:url(../images/viewbox/ViewBox_bg.png); - background-color:#0f0e0e; - overflow:visible; - z-index:2200; - margin:0 auto; - top:0; - left:0; - border-radius:10px; - box-shadow: 4px 4px 7px #000; -} -.vb_wrap .content { - position:relative; - overflow:visible; -} -.vb_wrap .number { - position:absolute; - top:-32px; - left:1px; - font-size:0.9em; - color:#0c0c0c; -} -.vb_wrap .close { - position:absolute; - top:-40px; - right:-7px; - background:url(../images/viewbox/viewbox_close.png) top left no-repeat; - height:30px; - width:30px; -} -* html .vb_wrap .close { - top:-26px; - right:7px; -} -.vb_wrap .next { - position:absolute; - right:-60px; - background:url(../images/viewbox/ViewBox_next.png) top left no-repeat; - height:50px; - width:50px; - z-index:2190; -} -.vb_wrap .prev { - position:absolute; - left:-59px; - background:url(../images/viewbox/ViewBox_prev.png) top right no-repeat; - height:50px; - width:50px; - z-index:2190; -} -.vb_wrap .close a, .vb_wrap .next a, .vb_wrap .prev a { - display:block; - height:100%; - width:100%; - text-indent:-777em; - outline:none; -} -.vb_wrap h1 { - margin:5px 0px 8px; - padding-bottom:3px; - letter-spacing:1.3px; - font-family:Arial, Helvetica, sans-serif; - font-size:0.9em; - color:#cdcdcd; - border-bottom:solid 1px #7e7e7e; - -} -.vb_wrap p { - font-family:Arial, Helvetica, sans-serif; - font-size:0.8em; - text-align:justify; - color:#e5e5e5; -} -.vb_wrap .text { - position:absolute; - background: url(../images/viewbox/ViewBox_bg.png) top left repeat; - border-top:solid 1px #121212; - bottom:0; left:0; - padding:5px; - width:99%; - z-index:2110; -} -* html .vb_wrap .text { - background-image:none; - background-color:#0f0e0e; -} -.vb_wrap .image { - z-index:2220; -} -.vb_wrap .text h1 { - margin:2px; - padding:1px; - color:#919191; - z-index:2230; -} -.vb_wrap .text .description { - position:relative; - bottom:0px; - left:0px; - padding:2px 2px; - font-family:Arial, Helvetica, sans-serif; - font-size:0.8em; - z-index:2260; - color:#949494; -} diff --git a/forum/skins/default/media/js/.svn/text-base/viewbox_min.js.svn-base b/forum/skins/default/media/js/.svn/text-base/viewbox_min.js.svn-base deleted file mode 100644 index 4916f875d782503ef45747d2439f31bcf26c9366..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/viewbox_min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(k($){$.3y.Y=k(g){g=$.4l({G:4j,w:4h,C:4f,r:[],o:0,4d:1,2K:1,32:1,2j:0,2m:0,1W:"#4c",2t:5,2C:1,1T:0,1R:0,2J:0,1N:0,2Q:1,2W:1,2X:1,2Y:"c",34:"p",2b:"n",2k:1},g);B h=$(J);B j;k 2v(){2y(J,h);u 1g}k 2y(a,b){g.r.R=0;g.o=0;m(b.R==1){g.r.2M(1s 1E(a.19("V"),a.19("T"),$(a).13("14").1h("2e")))}M{45(B i=0;i<b.R;i++){g.r.2M(1s 1E(b[i].19("V"),b[i].19("T"),$(b[i]).13("14").1h("2e")))}}44(g.r[g.o][0]!=a.19("V")){g.o++}2r()}k 2r(){$("43").z("<q 2w=\'Y\'></q><q A=\'8\'><q A=\'l\'><q A=\'1V\'><a V=\'#\'>1V</a></q><q A=\'Z\'><a V=\'#\'> 1m</a></q><q A=\'12\'><a V=\'#\'>3Y</a></q></q>");$("#Y, .8, .8 .l, .8 .l .Z, .8 .l .12").O();m(g.2W){1l()}$(".8 .12").1x().1Q("1c",k(){1S();u 1g});$(".8 .Z").1x().1Q("1c",k(){1m();u 1g});36();$("#Y").Q("3U",0.7).17(g.G/1.6,k(){y=1w();m($(P).1r()==0){m(g.w>y[0]*1.3){j=y[0]/9}M{j=y[0]/2.2}}M{j=$(P).1r()+y[0]/2.3}$(".8").Q({U:j+(g.w/2),1k:y[1]});$(".8").17(g.G/1.2,k(){$(J).1J({s:g.w,t:g.C,U:j,1k:y[1]-g.C/2},g.G/1.2,k(){1u();$(".8 .l").11(3P).17(g.G/1.5)})})});$("#Y, .8 .l .1V a").1c(k(){20();u 1g})}k 1u(){m(1F(g.r[g.o][0])){2S(g.r[g.o][0])}m(1G(g.r[g.o][0])){1H(g.r[g.o][0])}m(1I(g.r[g.o][0])){2Z(g.r[g.o][0])}m(1K(g.r[g.o][0])){33(g.r[g.o][0])}m(1L(g.r[g.o][0])){35(g.r[g.o][0])}m(1M(g.r[g.o][0])){38(g.r[g.o][0])}m(3a(g.r[g.o][0])){3b(g.r[g.o][0])}m(3c(g.r[g.o][0])){3d(g.r[g.o][0])}}k 1F(a){u(a.H("3O",".")>0||a.H("3N",".")>0||a.H("3L",".")>0)&&a.H("2c",".")<0}k 1G(a){u a.H("2d",".")>0}k 1I(a){u a.H("1i",".")>0}k 1K(a){u a.H("2c",".")>0||a.H("3H",".")>0||a.H("3F",".")>0}k 1L(a){u a.H("3B","/")>0&&a.H("3A",".")>0}k 1M(a){u g.2j!=0||a.H("1X",".")>0}k 3a(a){u g.2m!=0||a.H("#")>=0}k 3c(a){u g.1T!=0||a.H("3z",".")>0||a.H("4m",".")>0}k 2S(b){$(".8 .l").z("<q A=\'S\'><14 /></q>");$(".8 .S").O();m(g.32){$(".8").z("<q A=\'2n\'></q>")}B c=1s 2o();c.2p=k(){$(".8 .S 14").1h("W",c.W);y=1w();B a,X;m(y[0]*1.4>c.s||y[1]*1.4>c.t){g.w=a=c.s;g.C=X=c.t}M{m(!g.2K){B d=c.t-(y[1]*1.6)-1t;g.w=a=(c.s-d);g.C=X=(c.t-d)}M{m(c.s<c.t){B d=c.t-(y[1]*1.6)-1t;m(c.s>y[0]){B d=c.s-(y[0]*1.6)-1t;g.w=a=(c.s-d);g.C=X=(c.t/(c.s/(c.s-d)))}M{g.w=a=(c.s/(c.t/(c.t-d)));g.C=X=(c.t-d)}}m(c.s>c.t){B d=c.s-(y[0]*1.6)-1t;g.w=a=(c.s-d);g.C=X=(c.t/(c.s/(c.s-d)))}}}2u(a,X);$(".8 .2n").18();c.2p=k(){}};c.W=b;B e=g.r[g.o][2];B f=g.r[g.o][1];2x(f,e)}k 2x(a,b){m(a){$(".8 .l .S").z("<q A=\'16\'><2z>"+a+"</2z></q>");$(".8 .l .16").O();$(".8").2A(k(){$(".8 .l .16").1v(I,I).11(1e).2E(1e)},k(){$(".8 .l .16").1v(I,I).11(1e).2F(3x)})}m(b){$(".8 .l .16").z("<q A=\'3w\'>"+b+"</q>")}u 1g}k 1H(a){$(".8 .l").z("<q A=\'E\'></q>");1O="1P://3v.2d.1d/v/"+a.2O(31,42)+"&3n=1&3m=1&3l=3k&3j=0";$(".8 .E").z("<E t=\'"+g.C+"\' s=\'"+g.w+"\'><F K=\'1z\' L=\'"+1O+"\'></F><F K=\'3i\' L=\'I\'></F><F K=\'1A\' L=\'1B\'></F><15 W=\'"+1O+"\' 1C=\'22/x-23-24\' 1A=\'1B\' 1b=\'I\' t=\'"+g.C+"\' s=\'"+g.w+"\'></15></E>")}k 2Z(a){$(".8 .l").z("<q A=\'E\'></q>");26=a.2O(21,29);$(".8 .E").z("<E t=\'"+g.C+"\' s=\'"+g.w+"\'><F K=\'1b\' L=\'I\' /><F K=\'1A\' L=\'1B\' /><F K=\'1z\' L=\'1P://1i.1d/3g.1a?3f="+26+"&D;30=1i.1d&D;2V=1&D;2U=1&D;2T=0&D;1y=&D;2R=1\' /><15 W=\'1P://1i.1d/3g.1a?3f="+26+"&D;30=1i.1d&D;2V=1&D;2U=1&D;2T=0&D;1y=&D;2R=1\' 1C=\'22/x-23-24\' 1b=\'I\' 1A=\'1B\' t=\'"+g.C+"\' s=\'"+g.w+"\'></15></E>")}k 33(a){$(".8 .l").z("<q A=\'E\'></q>");$(\'.8 .E\').z("<E 2w=\'N\' 3o=\'3p:3q-3r-3s-3t-3u\' K=\'N\' t=\'"+g.C+"\' s=\'"+g.w+"\'> <F K=\'1z\' L=\'N/N.1a\' /><F K=\'1b\' L=\'I\' /> <F K=\'2P\' L=\'2N="+a+"&D;2L=N/2H.2G\' /> <E 1C=\'22/x-23-24\' 2l=\'N/N.1a\' t=\'"+g.C+"\' s=\'"+g.w+"\'> <F K=\'1z\' L=\'N/N.1a\' /> <F K=\'1b\' L=\'I\' /> <F K=\'2P\' L=\'2N="+a+"&D;2L=N/2H.2G\' /></E>")}k 35(a){$(".8 .l").z("<1q t="+g.C+" s="+g.w+" 2i=\'0\' 2h=\'3C\' 3D=\'0\' 3E=\'0\' W=\'"+a+"&D;2g=15\'></1q><3G /><2f><a V=\'"+a+"&D;2g=15\' 3I=\'1y:#3J;16-3K:1k\' ></2f>")}k 38(a){$(".8 .l").z("<q A=\'l\'></q>");$(".8 .l .l").Q("1U",g.1W).O();$(".8 .l .l").z("<1q 3M=\'0\' W=\'"+a+"\' 2h=\'2a\' 2i=\'0\' s=\'"+g.w+"\' t=\'"+g.C+"\' ></1q>")}k 1l(){m(g.o!=0){$(".8 .12").Q("U",g.w/2).3h()}M{$(".8 .12").O()}m(g.o!=g.r.R-1){$(".8 .Z").Q("U",g.w/2).3h()}M{$(".8 .Z").O()}1o()}k 3b(a){25();$(".8 .l .l").z($(a).1X())}k 3d(b){25();$.1T({1C:(!g.1R)?"3Q":g.1R,3R:b,2l:g.2J,3S:(!g.1N)?(k(a){$("8 .l .l").1X(a)}):g.1N})}k 25(){$(".8").Q("1U-1y","3T");$(".8 .l .28").O();B a=(g.2C)?"2a":"3V";$(".8 .l").z("<q A=\'l\'></q>");$(".8 .l .l").Q({1U:g.1W,3W:g.2t,3X:a});$(".8 .l .l").s(g.w-10)}k 36(){m(g.2X){$(P.1n).1x().1Q("3Z",k(a){m($.40.41){1Y=a.1j}M{1Y=a.1j}1p=46.47(1Y).48();m(a.1j==37||1p==g.34){1S()}m(a.1j==39||1p==g.2b){1m()}m(a.1j==27||1p==g.2Y){20()}})}}k 1S(){m(g.o!=0){$(".8 .l").1f(g.G/1.4,k(){$(".8 .l .S, .l .E").18();g.o=g.o-1;1o();1u();$(J).17(g.G/1.2);1l()})}}k 1m(){m(g.o!=g.r.R-1){$(".8 .l").1f(g.G/1.4,k(){$(".8 .l .S, .8 .l .E").18();g.o=g.o+1;1o();1u();$(J).17(g.G/1.2);1l()})}}k 1o(){m(g.2k){$(".8 .l .28").18();m(g.r.R!=0){k 3e(){m(1F(g.r[g.o][0])){u"2o "}m(1G(g.r[g.o][0])||1I(g.r[g.o][0])){u"1H "}m(1K(g.r[g.o][0])){u"49 "}m(1L(g.r[g.o][0])){u"4a "}m(1M(g.r[g.o][0])){u"4b "}}$(".8 .l").z("<q A=\'28\'>"+3e()+(g.o+1)+" / "+g.r.R+"</q>")}}}k 2u(a,b,c){B d=$(".8").s();B e=$(".8").t();$(".8").1J({1k:P.1n.2s/2-b/2,U:2D(a,b),t:b,s:a},g.G/1.5);$(".8 14").1h({s:a,t:b});$(".8 .S").O().11(g.G/1.1).17(4e);$(".8 .Z, .8 .12").Q("U",a/2)}k 2D(a,b){m(a+y[0]/2.3>y[0]*2){u $(P).1r()+(y[0]/9)}M{u $(P).1r()+(y[0]/2)}}k 20(){B a=1w();g.r.R=0;g.o=0;$(".8 .l").1f(g.G/1.6,k(){$(".8").1J({1k:a[1],U:a[0]/2+j,s:2B,t:2B},g.G/1.3,k(){$(J).1f(g.G/1.2,k(){$(J).18();$("#Y").1f(g.G/1.5,k(){$("#Y").18()})})})})}k 1w(){B a=1s 1E;a[0]=P.1n.4g/2;a[1]=P.1n.2s/2;u a}m(g.2Q){2I.4i(h,k(){B a=$(J).1h("T");m(a!=""){$(J).13("14").1Z("a").4k("<q A=\'1D\'></q>");$(J).1Z(".1D").z("<q A=\'T\'>"+a+"</q>");$(J).1Z(".1D").13(".T").O()}});$(".1D").2A(k(){$(J).13(".T").1v(I,I).11(2q).2E(1e)},k(){$(J).13(".T").1v(I,I).11(2q).2F(1e)})}u J.1x(\'1c\').1c(2v)}})(2I);',62,271,'||||||||vb_wrap||||||||||||function|content|if||arrayActEl||div|arrayEl|height|width|return||heightWindow||arraySizeBrowser|append|class|var|widthWindow|amp|object|param|Speed|indexOf|true|this|name|value|else|player|hide|document|css|length|image|title|top|href|src|Width|viewbox|next||delay|prev|children|img|embed|text|fadeIn|remove|getAttribute|swf|allowfullscreen|click|com|200|fadeOut|false|attr|vimeo|keyCode|left|NextAndPrev|Next|documentElement|NumberElement|KeyCode|iframe|scrollTop|new|65|setElement|stop|sizeBrowser|unbind|color|movie|allowscriptaccess|always|type|thumbdiv|Array|nImg|nYT|Film|nV|animate|nPlayer|nMaps|nFrame|ajaxSuccess|hrefY|http|bind|ajaxType|Prev|ajax|background|close|inlineBg|html|codeAscii|parent|closeWindow||application|shockwave|flash|ChangeStyle|hrefV||number||auto|keyNext|mp3|youtube|alt|small|output|scrolling|frameborder|frame|numberEl|data|inline|preloader|Image|onload|150|createView|clientWidth|inlinePadding|resizeWindow|_clickEl|id|Description|_viewbox|h1|hover|50|inlineScroll|topToresize|slideDown|slideUp|zip|modieus|jQuery|ajaxData|visibleIMG|skin|push|file|substring|flashvars|titleThumb|fullscreen|Img|show_portrait|show_byline|show_title|navigation|keyboard|keyClose|Vimeo|server||preloaderIMG|Player|keyPrev|GoogleMaps|keyboardNav||FrameObj||nInline|Inline|nAjax|Ajax|Words|clip_id|moogaloop|show|allowFullScreen|showsearch|related|feature|loop|autoplay|classid|clsid|D27CDB6E|AE6D|11cf|96B8|444553540000|www|description|180|fn|txt|google|map|no|marginheight|marginwidth|avi|br|vmw|style|0000FF|align|gif|hspace|png|jpg|290|GET|url|success|transparent|opacity|hidden|padding|overflow|Previous|keyup|browser|msie||body|while|for|String|fromCharCode|toLowerCase|Item|Map|Page|fff|IMG|300|650|clientHeight|450|each|400|wrap|extend|js'.split('|'),0,{})) \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/youtube.js.svn-base b/forum/skins/default/media/js/.svn/text-base/youtube.js.svn-base deleted file mode 100644 index 07c1fbef97844ce7921eac81f60122a5a35a2237..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/.svn/text-base/youtube.js.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -$(document).ready(function(){ - // Embed YouTube videos - $('a[href*=".youtube.com"]').viewbox({ - widthWindow: 900 - }); -}); \ No newline at end of file diff --git a/forum/skins/default/media/js/.svn/text-base/yuicompressor-2.4.2.jar.svn-base b/forum/skins/default/media/js/.svn/text-base/yuicompressor-2.4.2.jar.svn-base deleted file mode 100644 index c29470bd0d0175ddd98e7f82079a9566c2aebf4c..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/.svn/text-base/yuicompressor-2.4.2.jar.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/.svn/all-wcprops b/forum/skins/default/media/js/wmd/.svn/all-wcprops deleted file mode 100644 index d050fdf47e886d2fd58a176ee657c8c0fd52dd78..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/media/js/wmd -END -wmd.css -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1118/osqa/trunk/forum/skins/default/media/js/wmd/wmd.css -END -wmd.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1231/osqa/trunk/forum/skins/default/media/js/wmd/wmd.js -END -showdown.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/media/js/wmd/showdown.js -END -wmd-test.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/wmd/wmd-test.html -END diff --git a/forum/skins/default/media/js/wmd/.svn/entries b/forum/skins/default/media/js/wmd/.svn/entries deleted file mode 100644 index 43f0ac938dd94e6fb623e8d500ab5b5205c84ab2..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/.svn/entries +++ /dev/null @@ -1,167 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/js/wmd -http://svn.osqa.net/svnroot - - - -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -wmd.js -file - - - - -2012-06-22T20:34:41.904821Z -a15990e4bf0d8768b54b39408f42e815 -2012-03-13T13:39:40.918967Z -1231 -jordan - - - - - - - - - - - - - - - - - - - - - -71940 - -showdown.js -file - - - - -2012-06-22T20:34:41.904821Z -a90c2361dcad149ceeaba738abdbfbe9 -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -35661 - -images -dir - -wmd-test.html -file - - - - -2012-06-22T20:34:41.904821Z -36ed32144cab8c1f8cf58cc97080d211 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -3419 - -wmd.css -file - - - - -2012-06-22T20:34:41.904821Z -983fdb5fadc714d994f759023d1d33f3 -2011-07-13T16:00:24.687039Z -1118 -jordan - - - - - - - - - - - - - - - - - - - - - -2658 - diff --git a/forum/skins/default/media/js/wmd/.svn/text-base/showdown.js.svn-base b/forum/skins/default/media/js/wmd/.svn/text-base/showdown.js.svn-base deleted file mode 100644 index c87fd45018de05ca2214eecfc7b8c6cfa79f5625..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/.svn/text-base/showdown.js.svn-base +++ /dev/null @@ -1,1331 +0,0 @@ -// -// showdown.js -- A javascript port of Markdown. -// -// Copyright (c) 2007 John Fraser. -// -// Original Markdown Copyright (c) 2004-2005 John Gruber -// <http://daringfireball.net/projects/markdown/> -// -// The full source distribution is at: -// -// A A L -// T C A -// T K B -// -// <http://www.attacklab.net/> -// - -// -// Wherever possible, Showdown is a straight, line-by-line port -// of the Perl version of Markdown. -// -// This is not a normal parser design; it's basically just a -// series of string substitutions. It's hard to read and -// maintain this way, but keeping Showdown close to the original -// design makes it easier to port new features. -// -// More importantly, Showdown behaves like markdown.pl in most -// edge cases. So web applications can do client-side preview -// in Javascript, and then build identical HTML on the server. -// -// This port needs the new RegExp functionality of ECMA 262, -// 3rd Edition (i.e. Javascript 1.5). Most modern web browsers -// should do fine. Even with the new regular expression features, -// We do a lot of work to emulate Perl's regex functionality. -// The tricky changes in this file mostly have the "attacklab:" -// label. Major or self-explanatory changes don't. -// -// Smart diff tools like Araxis Merge will be able to match up -// this file with markdown.pl in a useful way. A little tweaking -// helps: in a copy of markdown.pl, replace "#" with "//" and -// replace "$text" with "text". Be sure to ignore whitespace -// and line endings. -// - - -// -// Showdown usage: -// -// var text = "Markdown *rocks*."; -// -// var converter = new Attacklab.showdown.converter(); -// var html = converter.makeHtml(text); -// -// alert(html); -// -// Note: move the sample code to the bottom of this -// file before uncommenting it. -// - - -// -// Attacklab namespace -// -var Attacklab = Attacklab || {} - -// -// Showdown namespace -// -Attacklab.showdown = Attacklab.showdown || {} - -// -// converter -// -// Wraps all "globals" so that the only thing -// exposed is makeHtml(). -// -Attacklab.showdown.converter = function() { - - -// g_urls and g_titles allow arbitrary user-entered strings as keys. This -// caused an exception (and hence stopped the rendering) when the user entered -// e.g. [push] or [__proto__]. Adding a prefix to the actual key prevents this -// (since no builtin property starts with "s_"). See -// http://meta.stackoverflow.com/questions/64655/strange-wmd-bug -// (granted, switching from Array() to Object() alone would have left only __proto__ -// to be a problem) -var SaveHash = function () { - this.set = function (key, value) { - this["s_" + key] = value; - } - this.get = function (key) { - return this["s_" + key]; - } -} - -// -// Globals: -// - -// Global hashes, used by various utility routines -var g_urls; -var g_titles; -var g_html_blocks; - -// Used to track when we're inside an ordered or unordered list -// (see _ProcessListItems() for details): -var g_list_level = 0; - - -this.makeHtml = function(text) { -// -// Main function. The order in which other subs are called here is -// essential. Link and image substitutions need to happen before -// _EscapeSpecialCharsWithinTagAttributes(), so that any *'s or _'s in the <a> -// and <img> tags get encoded. -// - text = html_sanitize(text, function(url) {return url;}, function(id) {return id;}); - - // Clear the global hashes. If we don't clear these, you get conflicts - // from other articles when generating a page which contains more than - // one article (e.g. an index page that shows the N most recent - // articles): - g_urls = new SaveHash(); - g_titles = new SaveHash(); - g_html_blocks = new Array(); - - // attacklab: Replace ~ with ~T - // This lets us use tilde as an escape char to avoid md5 hashes - // The choice of character is arbitray; anything that isn't - // magic in Markdown will work. - text = text.replace(/~/g,"~T"); - - // attacklab: Replace $ with ~D - // RegExp interprets $ as a special character - // when it's in a replacement string - text = text.replace(/\$/g,"~D"); - - // Standardize line endings - text = text.replace(/\r\n/g,"\n"); // DOS to Unix - text = text.replace(/\r/g,"\n"); // Mac to Unix - - // Make sure text begins and ends with a couple of newlines: - text = "\n\n" + text + "\n\n"; - - // Convert all tabs to spaces. - text = _Detab(text); - - // Strip any lines consisting only of spaces and tabs. - // This makes subsequent regexen easier to write, because we can - // match consecutive blank lines with /\n+/ instead of something - // contorted like /[ \t]*\n+/ . - text = text.replace(/^[ \t]+$/mg,""); - - // Turn block-level HTML blocks into hash entries - text = _HashHTMLBlocks(text); - - // Strip link definitions, store in hashes. - text = _StripLinkDefinitions(text); - - text = _RunBlockGamut(text); - - text = _UnescapeSpecialChars(text); - - // attacklab: Restore dollar signs - text = text.replace(/~D/g,"$$"); - - // attacklab: Restore tildes - text = text.replace(/~T/g,"~"); - - return text; -} - -var _StripLinkDefinitions = function(text) { -// -// Strips link definitions from text, stores the URLs and titles in -// hash references. -// - - // Link defs are in the form: ^[id]: url "optional title" - - /* - var text = text.replace(/ - ^[ ]{0,3}\[(.+)\]: // id = $1 attacklab: g_tab_width - 1 - [ \t]* - \n? // maybe *one* newline - [ \t]* - <?(\S+?)>? // url = $2 - (?=\s|$) // lookahead for whitespace instead of the lookbehind removed below - [ \t]* - \n? // maybe one newline - [ \t]* - ( // (potential) title = $3 - (\n*) // any lines skipped = $4 attacklab: lookbehind removed - [ \t]+ - ["(] - (.+?) // title = $5 - [")] - [ \t]* - )? // title is optional - (?:\n+|$) - /gm, - function(){...}); - */ - var text = text.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*<?(\S+?)>?(?=\s|$)[ \t]*\n?[ \t]*((\n*)["(](.+?)[")][ \t]*)?(?:\n+)/gm, - function (wholeMatch,m1,m2,m3,m4,m5) { - m1 = m1.toLowerCase(); - g_urls.set(m1, _EncodeAmpsAndAngles(m2)); // Link IDs are case-insensitive - if (m4) { - // Oops, found blank lines, so it's not a title. - // Put back the parenthetical statement we stole. - return m3; - } else if (m5) { - g_titles.set(m1, m5.replace(/"/g,""")); - } - - // Completely remove the definition from the text - return ""; - } - ); - - return text; -} - -var _HashHTMLBlocks = function(text) { - - // Hashify HTML blocks: - // We only want to do this for block-level HTML tags, such as headers, - // lists, and tables. That's because we still want to wrap <p>s around - // "paragraphs" that are wrapped in non-block-level tags, such as anchors, - // phrase emphasis, and spans. The list of tags we're looking for is - // hard-coded: - var block_tags_a = "p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del" - var block_tags_b = "p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math" - - // First, look for nested blocks, e.g.: - // <div> - // <div> - // tags for inner block must be indented. - // </div> - // </div> - // - // The outermost tags must start at the left margin for this to match, and - // the inner nested divs must be indented. - // We need to do this before the next, more liberal match, because the next - // match will start at the first `<div>` and stop at the first `</div>`. - - // attacklab: This regex can be expensive when it fails. - /* - var text = text.replace(/ - ( // save in $1 - ^ // start of line (with /m) - <($block_tags_a) // start tag = $2 - \b // word break - // attacklab: hack around khtml/pcre bug... - [^\r]*?\n // any number of lines, minimally matching - </\2> // the matching end tag - [ \t]* // trailing spaces/tabs - (?=\n+) // followed by a newline - ) // attacklab: there are sentinel newlines at end of document - /gm,function(){...}}; - */ - text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\b[^\r]*?\n<\/\2>[ \t]*(?=\n+))/gm,hashElement); - - // - // Now match more liberally, simply from `\n<tag>` to `</tag>\n` - // - - /* - var text = text.replace(/ - ( // save in $1 - ^ // start of line (with /m) - <($block_tags_b) // start tag = $2 - \b // word break - // attacklab: hack around khtml/pcre bug... - [^\r]*? // any number of lines, minimally matching - .*</\2> // the matching end tag - [ \t]* // trailing spaces/tabs - (?=\n+) // followed by a newline - ) // attacklab: there are sentinel newlines at end of document - /gm,function(){...}}; - */ - text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math)\b[^\r]*?.*<\/\2>[ \t]*(?=\n+)\n)/gm,hashElement); - - // Special case just for <hr />. It was easier to make a special case than - // to make the other regex more complicated. - - /* - text = text.replace(/ - \n // Starting after a blank line - [ ]{0,3} - ( // save in $1 - (<(hr) // start tag = $2 - \b // word break - ([^<>])*? // - \/?>) // the matching end tag - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/\n[ ]{0,3}((<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,hashElement); - - // Special case for standalone HTML comments: - - /* - text = text.replace(/ - \n\n // Starting after a blank line - [ ]{0,3} // attacklab: g_tab_width - 1 - ( // save in $1 - <! - (--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--) // see http://www.w3.org/TR/html-markup/syntax.html#comments - > - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/\n\n[ ]{0,3}(<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>[ \t]*(?=\n{2,}))/g, hashElement); - - // PHP and ASP-style processor instructions (<?...?> and <%...%>) - - /* - text = text.replace(/ - (?: - \n\n // Starting after a blank line - ) - ( // save in $1 - [ ]{0,3} // attacklab: g_tab_width - 1 - (?: - <([?%]) // $2 - [^\r]*? - \2> - ) - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,hashElement); - - return text; -} - -var hashElement = function(wholeMatch,m1) { - var blockText = m1; - - // Undo double lines - blockText = blockText.replace(/^\n+/,""); - - // strip trailing blank lines - blockText = blockText.replace(/\n+$/g,""); - - // Replace the element text with a marker ("~KxK" where x is its key) - blockText = "\n\n~K" + (g_html_blocks.push(blockText)-1) + "K\n\n"; - - return blockText; -}; - -var _RunBlockGamut = function(text, doNotUnhash) { -// -// These are all the transformations that form block-level -// tags like paragraphs, headers, and list items. -// - text = _DoHeaders(text); - - // Do Horizontal Rules: - var key = hashBlock("<hr />"); - text = text.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,key); - text = text.replace(/^[ ]{0,2}([ ]?-[ ]?){3,}[ \t]*$/gm,key); - text = text.replace(/^[ ]{0,2}([ ]?_[ ]?){3,}[ \t]*$/gm,key); - - text = _DoLists(text); - text = _DoCodeBlocks(text); - text = _DoBlockQuotes(text); - - // We already ran _HashHTMLBlocks() before, in Markdown(), but that - // was to escape raw HTML in the original Markdown source. This time, - // we're escaping the markup we've just created, so that we don't wrap - // <p> tags around block-level tags. - text = _HashHTMLBlocks(text); - text = _FormParagraphs(text, doNotUnhash); - - return text; -} - - -var _RunSpanGamut = function(text) { -// -// These are all the transformations that occur *within* block-level -// tags like paragraphs, headers, and list items. -// - - text = _DoCodeSpans(text); - text = _EscapeSpecialCharsWithinTagAttributes(text); - text = _EncodeBackslashEscapes(text); - - // Process anchor and image tags. Images must come first, - // because ![foo][f] looks like an anchor. - text = _DoImages(text); - text = _DoAnchors(text); - - // Make links out of things like `<http://example.com/>` - // Must come after _DoAnchors(), because you can use < and > - // delimiters in inline links like [this](<url>). - text = _DoAutoLinks(text); - text = _EncodeAmpsAndAngles(text); - text = _DoItalicsAndBold(text); - - // Do hard breaks: - text = text.replace(/ +\n/g," <br />\n"); - - return text; -} - -var _EscapeSpecialCharsWithinTagAttributes = function(text) { -// -// Within tags -- meaning between < and > -- encode [\ ` * _] so they -// don't conflict with their use in Markdown for code, italics and strong. -// - - // Build a regex to find HTML tags and comments. See Friedl's - // "Mastering Regular Expressions", 2nd Ed., pp. 200-201. - - // SE: changed the comment part of the regex - - var regex = /(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>)/gi; - - text = text.replace(regex, function(wholeMatch) { - var tag = wholeMatch.replace(/(.)<\/?code>(?=.)/g,"$1`"); - tag = escapeCharacters(tag,"\\`*_"); - return tag; - }); - - return text; -} - -var _DoAnchors = function(text) { -// -// Turn Markdown link shortcuts into XHTML <a> tags. -// - // - // First, handle reference-style links: [link text] [id] - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ( - (?: - \[[^\]]*\] // allow brackets nested one level - | - [^\[] // or anything else - )* - ) - \] - - [ ]? // one optional space - (?:\n[ ]*)? // one optional newline followed by spaces - - \[ - (.*?) // id = $3 - \] - )()()()() // pad remaining backreferences - /g,_DoAnchors_callback); - */ - text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,writeAnchorTag); - - // - // Next, inline-style links: [link text](url "optional title") - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ( - (?: - \[[^\]]*\] // allow brackets nested one level - | - [^\[\]] // or anything else - )* - ) - \] - \( // literal paren - [ \t]* - () // no id, so leave $3 empty - <?( // href = $4 - (?: - \([^)]*\) // allow one level of (correctly nested) parens (think MSDN) - | - [^()] - )*? - )>? - [ \t]* - ( // $5 - (['"]) // quote char = $6 - (.*?) // Title = $7 - \6 // matching quote - [ \t]* // ignore any spaces/tabs between closing quote and ) - )? // title is optional - \) - ) - /g,writeAnchorTag); - */ - - text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()<?((?:\([^)]*\)|[^()])*?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,writeAnchorTag); - - // - // Last, handle reference-style shortcuts: [link text] - // These must come last in case you've also got [link test][1] - // or [link test](/foo) - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ([^\[\]]+) // link text = $2; can't contain '[' or ']' - \] - )()()()()() // pad rest of backreferences - /g, writeAnchorTag); - */ - text = text.replace(/(\[([^\[\]]+)\])()()()()()/g, writeAnchorTag); - - return text; -} - -var writeAnchorTag = function(wholeMatch,m1,m2,m3,m4,m5,m6,m7) { - if (m7 == undefined) m7 = ""; - var whole_match = m1; - var link_text = m2; - var link_id = m3.toLowerCase(); - var url = m4; - var title = m7; - - if (url == "") { - if (link_id == "") { - // lower-case and turn embedded newlines into spaces - link_id = link_text.toLowerCase().replace(/ ?\n/g," "); - } - url = "#"+link_id; - - if (g_urls.get(link_id) != undefined) { - url = g_urls.get(link_id); - if (g_titles.get(link_id) != undefined) { - title = g_titles.get(link_id); - } - } - else { - if (whole_match.search(/\(\s*\)$/m)>-1) { - // Special case for explicit empty url - url = ""; - } else { - return whole_match; - } - } - } - - url = escapeCharacters(url,"*_"); - var result = "<a href=\"" + url + "\""; - - if (title != "") { - title = title.replace(/"/g,"""); - title = escapeCharacters(title,"*_"); - result += " title=\"" + title + "\""; - } - - result += ">" + link_text + "</a>"; - - return result; -} - - -var _DoImages = function(text) { -// -// Turn Markdown image shortcuts into <img> tags. -// - - // - // First, handle reference-style labeled images: ![alt text][id] - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - !\[ - (.*?) // alt text = $2 - \] - - [ ]? // one optional space - (?:\n[ ]*)? // one optional newline followed by spaces - - \[ - (.*?) // id = $3 - \] - )()()()() // pad rest of backreferences - /g,writeImageTag); - */ - text = text.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,writeImageTag); - - // - // Next, handle inline images:  - // Don't forget: encode * and _ - - /* - text = text.replace(/ - ( // wrap whole match in $1 - !\[ - (.*?) // alt text = $2 - \] - \s? // One optional whitespace character - \( // literal paren - [ \t]* - () // no id, so leave $3 empty - <?(\S+?)>? // src url = $4 - [ \t]* - ( // $5 - (['"]) // quote char = $6 - (.*?) // title = $7 - \6 // matching quote - [ \t]* - )? // title is optional - \) - ) - /g,writeImageTag); - */ - text = text.replace(/(!\[(.*?)\]\s?\([ \t]*()<?(\S+?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,writeImageTag); - - return text; -} - -var writeImageTag = function(wholeMatch,m1,m2,m3,m4,m5,m6,m7) { - var whole_match = m1; - var alt_text = m2; - var link_id = m3.toLowerCase(); - var url = m4; - var title = m7; - - if (!title) title = ""; - - if (url == "") { - if (link_id == "") { - // lower-case and turn embedded newlines into spaces - link_id = alt_text.toLowerCase().replace(/ ?\n/g," "); - } - url = "#"+link_id; - - if (g_urls.get(link_id) != undefined) { - url = g_urls.get(link_id); - if (g_titles.get(link_id) != undefined) { - title = g_titles.get(link_id); - } - } - else { - return whole_match; - } - } - - alt_text = alt_text.replace(/"/g,"""); - url = escapeCharacters(url,"*_"); - var result = "<img src=\"" + url + "\" alt=\"" + alt_text + "\""; - - // attacklab: Markdown.pl adds empty title attributes to images. - // Replicate this bug. - - //if (title != "") { - title = title.replace(/"/g,"""); - title = escapeCharacters(title,"*_"); - result += " title=\"" + title + "\""; - //} - - result += " />"; - - return result; -} - - -var _DoHeaders = function(text) { - - // Setext-style headers: - // Header 1 - // ======== - // - // Header 2 - // -------- - // - text = text.replace(/^(.+)[ \t]*\n=+[ \t]*\n+/gm, - function(wholeMatch,m1){return "<h1>" + _RunSpanGamut(m1) + "</h1>\n\n";}); - - text = text.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm, - function(matchFound,m1){return "<h2>" + _RunSpanGamut(m1) + "</h2>\n\n";}); - - // atx-style headers: - // # Header 1 - // ## Header 2 - // ## Header 2 with closing hashes ## - // ... - // ###### Header 6 - // - - /* - text = text.replace(/ - ^(\#{1,6}) // $1 = string of #'s - [ \t]* - (.+?) // $2 = Header text - [ \t]* - \#* // optional closing #'s (not counted) - \n+ - /gm, function() {...}); - */ - - text = text.replace(/^(\#{1,6})[ \t]*(.+?)[ \t]*\#*\n+/gm, - function(wholeMatch,m1,m2) { - var h_level = m1.length; - return "<h" + h_level + ">" + _RunSpanGamut(m2) + "</h" + h_level + ">\n\n"; - }); - - return text; -} - -// This declaration keeps Dojo compressor from outputting garbage: -var _ProcessListItems; - -var _DoLists = function(text) { -// -// Form HTML ordered (numbered) and unordered (bulleted) lists. -// - - // attacklab: add sentinel to hack around khtml/safari bug: - // http://bugs.webkit.org/show_bug.cgi?id=11231 - text += "~0"; - - // Re-usable pattern to match any entirel ul or ol list: - - /* - var whole_list = / - ( // $1 = whole list - ( // $2 - [ ]{0,3} // attacklab: g_tab_width - 1 - ([*+-]|\d+[.]) // $3 = first list item marker - [ \t]+ - ) - [^\r]+? - ( // $4 - ~0 // sentinel for workaround; should be $ - | - \n{2,} - (?=\S) - (?! // Negative lookahead for another list item marker - [ \t]* - (?:[*+-]|\d+[.])[ \t]+ - ) - ) - )/g - */ - var whole_list = /^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm; - - if (g_list_level) { - text = text.replace(whole_list,function(wholeMatch,m1,m2) { - var list = m1; - var list_type = (m2.search(/[*+-]/g)>-1) ? "ul" : "ol"; - - var result = _ProcessListItems(list, list_type); - - // Trim any trailing whitespace, to put the closing `</$list_type>` - // up on the preceding line, to get it past the current stupid - // HTML block parser. This is a hack to work around the terrible - // hack that is the HTML block parser. - result = result.replace(/\s+$/,""); - result = "<"+list_type+">" + result + "</"+list_type+">\n"; - return result; - }); - } else { - whole_list = /(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/g; - text = text.replace(whole_list,function(wholeMatch,m1,m2,m3) { - var runup = m1; - var list = m2; - - var list_type = (m3.search(/[*+-]/g)>-1) ? "ul" : "ol"; - var result = _ProcessListItems(list, list_type); - result = runup + "<"+list_type+">\n" + result + "</"+list_type+">\n"; - return result; - }); - } - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -} - -var _listItemMarkers = { ol: "\\d+[.]", ul: "[*+-]" }; - -_ProcessListItems = function(list_str, list_type) { -// -// Process the contents of a single ordered or unordered list, splitting it -// into individual list items. -// -// list_type is either "ul" or "ol". - - // The $g_list_level global keeps track of when we're inside a list. - // Each time we enter a list, we increment it; when we leave a list, - // we decrement. If it's zero, we're not in a list anymore. - // - // We do this because when we're not inside a list, we want to treat - // something like this: - // - // I recommend upgrading to version - // 8. Oops, now this line is treated - // as a sub-list. - // - // As a single paragraph, despite the fact that the second line starts - // with a digit-period-space sequence. - // - // Whereas when we're inside a list (or sub-list), that line will be - // treated as the start of a sub-list. What a kludge, huh? This is - // an aspect of Markdown's syntax that's hard to parse perfectly - // without resorting to mind-reading. Perhaps the solution is to - // change the syntax rules such that sub-lists must start with a - // starting cardinal number; e.g. "1." or "a.". - - g_list_level++; - - // trim trailing blank lines: - list_str = list_str.replace(/\n{2,}$/,"\n"); - - // attacklab: add sentinel to emulate \z - list_str += "~0"; - - // In the original attacklab WMD, list_type was not given to this function, and anything - // that matched /[*+-]|\d+[.]/ would just create the next <li>, causing this mismatch: - // - // Markdown rendered by WMD rendered by MarkdownSharp - // ------------------------------------------------------------------ - // 1. first 1. first 1. first - // 2. second 2. second 2. second - // - third 3. third * third - // - // We changed this to behave identical to MarkdownSharp. This is the constructed RegEx, - // with {MARKER} being one of \d+[.] or [*+-], depending on list_type: - /* - list_str = list_str.replace(/ - (^[ \t]*) // leading whitespace = $1 - ({MARKER}) [ \t]+ // list marker = $2 - ([^\r]+? // list item text = $3 - (\n+)) - (?= (~0 | \2 ({MARKER}) [ \t]+)) - /gm, function(){...}); - */ - - var marker = _listItemMarkers[list_type]; - var re = new RegExp("(^[ \\t]*)(" + marker + ")[ \\t]+([^\\r]+?(\\n+))(?=(~0|\\1(" + marker + ")[ \\t]+))", "gm"); - var last_item_had_a_double_newline = false; - list_str = list_str.replace(re, - function(wholeMatch,m1,m2,m3){ - var item = m3; - var leading_space = m1; - var ends_with_double_newline = /\n\n$/.test(item); - var contains_double_newline = ends_with_double_newline || item.search(/\n{2,}/)>-1; - - if (contains_double_newline || last_item_had_a_double_newline) { - item = _RunBlockGamut(_Outdent(item), /* doNotUnhash = */ true); - } - else { - // Recursion for sub-lists: - item = _DoLists(_Outdent(item)); - item = item.replace(/\n$/,""); // chomp(item) - item = _RunSpanGamut(item); - } - last_item_had_a_double_newline = ends_with_double_newline; - return "<li>" + item + "</li>\n"; - } - ); - - // attacklab: strip sentinel - list_str = list_str.replace(/~0/g,""); - - g_list_level--; - return list_str; -} - - -var _DoCodeBlocks = function(text) { -// -// Process Markdown `<pre><code>` blocks. -// - - /* - text = text.replace(text, - /(?:\n\n|^) - ( // $1 = the code block -- one or more lines, starting with a space/tab - (?: - (?:[ ]{4}|\t) // Lines must start with a tab or a tab-width of spaces - attacklab: g_tab_width - .*\n+ - )+ - ) - (\n*[ ]{0,3}[^ \t\n]|(?=~0)) // attacklab: g_tab_width - /g,function(){...}); - */ - - // attacklab: sentinel workarounds for lack of \A and \Z, safari\khtml bug - text += "~0"; - - text = text.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g, - function(wholeMatch,m1,m2) { - var codeblock = m1; - var nextChar = m2; - - codeblock = _EncodeCode( _Outdent(codeblock)); - codeblock = _Detab(codeblock); - codeblock = codeblock.replace(/^\n+/g,""); // trim leading newlines - codeblock = codeblock.replace(/\n+$/g,""); // trim trailing whitespace - - codeblock = "<pre><code>" + codeblock + "\n</code></pre>"; - - return "\n\n" + codeblock + "\n\n" + nextChar; - } - ); - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -} - -var hashBlock = function(text) { - text = text.replace(/(^\n+|\n+$)/g,""); - return "\n\n~K" + (g_html_blocks.push(text)-1) + "K\n\n"; -} - - -var _DoCodeSpans = function(text) { -// -// * Backtick quotes are used for <code></code> spans. -// -// * You can use multiple backticks as the delimiters if you want to -// include literal backticks in the code span. So, this input: -// -// Just type ``foo `bar` baz`` at the prompt. -// -// Will translate to: -// -// <p>Just type <code>foo `bar` baz</code> at the prompt.</p> -// -// There's no arbitrary limit to the number of backticks you -// can use as delimters. If you need three consecutive backticks -// in your code, use four for delimiters, etc. -// -// * You can use spaces to get literal backticks at the edges: -// -// ... type `` `bar` `` ... -// -// Turns to: -// -// ... type <code>`bar`</code> ... -// - - /* - text = text.replace(/ - (^|[^\\]) // Character before opening ` can't be a backslash - (`+) // $2 = Opening run of ` - ( // $3 = The code block - [^\r]*? - [^`] // attacklab: work around lack of lookbehind - ) - \2 // Matching closer - (?!`) - /gm, function(){...}); - */ - - text = text.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm, - function(wholeMatch,m1,m2,m3,m4) { - var c = m3; - c = c.replace(/^([ \t]*)/g,""); // leading whitespace - c = c.replace(/[ \t]*$/g,""); // trailing whitespace - c = _EncodeCode(c); - return m1+"<code>"+c+"</code>"; - }); - - return text; -} - - -var _EncodeCode = function(text) { -// -// Encode/escape certain characters inside Markdown code runs. -// The point is that in code, these characters are literals, -// and lose their special Markdown meanings. -// - // Encode all ampersands; HTML entities are not - // entities within a Markdown code span. - text = text.replace(/&/g,"&"); - - // Do the angle bracket song and dance: - text = text.replace(/</g,"<"); - text = text.replace(/>/g,">"); - - // Now, escape characters that are magic in Markdown: - text = escapeCharacters(text,"\*_{}[]\\",false); - -// jj the line above breaks this: -//--- - -//* Item - -// 1. Subitem - -// special char: * -//--- - - return text; -} - - -var _DoItalicsAndBold = function(text) { - - // <strong> must go first: - text = text.replace(/(\*\*|__)(?=\S)([^\r]*?\S[\*_]*)\1/g, - "<strong>$2</strong>"); - - text = text.replace(/(\*|_)(?=\S)([^\r]*?\S)\1/g, - "<em>$2</em>"); - - return text; -} - - -var _DoBlockQuotes = function(text) { - - /* - text = text.replace(/ - ( // Wrap whole match in $1 - ( - ^[ \t]*>[ \t]? // '>' at the start of a line - .+\n // rest of the first line - (.+\n)* // subsequent consecutive lines - \n* // blanks - )+ - ) - /gm, function(){...}); - */ - - text = text.replace(/((^[ \t]*>[ \t]?.+\n(.+\n)*\n*)+)/gm, - function(wholeMatch,m1) { - var bq = m1; - - // attacklab: hack around Konqueror 3.5.4 bug: - // "----------bug".replace(/^-/g,"") == "bug" - - bq = bq.replace(/^[ \t]*>[ \t]?/gm,"~0"); // trim one level of quoting - - // attacklab: clean up hack - bq = bq.replace(/~0/g,""); - - bq = bq.replace(/^[ \t]+$/gm,""); // trim whitespace-only lines - bq = _RunBlockGamut(bq); // recurse - - bq = bq.replace(/(^|\n)/g,"$1 "); - // These leading spaces screw with <pre> content, so we need to fix that: - bq = bq.replace( - /(\s*<pre>[^\r]+?<\/pre>)/gm, - function(wholeMatch,m1) { - var pre = m1; - // attacklab: hack around Konqueror 3.5.4 bug: - pre = pre.replace(/^ /mg,"~0"); - pre = pre.replace(/~0/g,""); - return pre; - }); - - return hashBlock("<blockquote>\n" + bq + "\n</blockquote>"); - }); - return text; -} - - -var _FormParagraphs = function(text, doNotUnhash) { -// -// Params: -// $text - string to process with html <p> tags -// - - // Strip leading and trailing lines: - text = text.replace(/^\n+/g,""); - text = text.replace(/\n+$/g,""); - - var grafs = text.split(/\n{2,}/g); - var grafsOut = new Array(); - - // - // Wrap <p> tags. - // - var end = grafs.length; - for (var i=0; i<end; i++) { - var str = grafs[i]; - - // if this is an HTML marker, copy it - if (str.search(/~K(\d+)K/g) >= 0) { - grafsOut.push(str); - } - else if (str.search(/\S/) >= 0) { - str = _RunSpanGamut(str); - str = str.replace(/^([ \t]*)/g,"<p>"); - str += "</p>" - grafsOut.push(str); - } - - } - // - // Unhashify HTML blocks - // - if (!doNotUnhash) { - end = grafsOut.length; - for (var i=0; i<end; i++) { - // if this is a marker for an html block... - while (grafsOut[i].search(/~K(\d+)K/) >= 0) { - var blockText = g_html_blocks[RegExp.$1]; - blockText = blockText.replace(/\$/g,"$$$$"); // Escape any dollar signs - grafsOut[i] = grafsOut[i].replace(/~K\d+K/,blockText); - } - } - } - return grafsOut.join("\n\n"); -} - - -var _EncodeAmpsAndAngles = function(text) { -// Smart processing for ampersands and angle brackets that need to be encoded. - - // Ampersand-encoding based entirely on Nat Irons's Amputator MT plugin: - // http://bumppo.net/projects/amputator/ - text = text.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&"); - - // Encode naked <'s - text = text.replace(/<(?![a-z\/?\$!])/gi,"<"); - - return text; -} - - -var _EncodeBackslashEscapes = function(text) { -// -// Parameter: String. -// Returns: The string, with after processing the following backslash -// escape sequences. -// - - // attacklab: The polite way to do this is with the new - // escapeCharacters() function: - // - // text = escapeCharacters(text,"\\",true); - // text = escapeCharacters(text,"`*_{}[]()>#+-.!",true); - // - // ...but we're sidestepping its use of the (slow) RegExp constructor - // as an optimization for Firefox. This function gets called a LOT. - - text = text.replace(/\\(\\)/g,escapeCharacters_callback); - text = text.replace(/\\([`*_{}\[\]()>#+-.!])/g,escapeCharacters_callback); - return text; -} - - -var _DoAutoLinks = function(text) { - - text = text.replace(/<((https?|ftp|dict):[^'">\s]+)>/gi,"<a href=\"$1\">$1</a>"); - - // Email addresses: <address@domain.foo> - - /* - text = text.replace(/ - < - (?:mailto:)? - ( - [-.\w]+ - \@ - [-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+ - ) - > - /gi, _DoAutoLinks_callback()); - */ - text = text.replace(/<(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi, - function(wholeMatch,m1) { - return _EncodeEmailAddress( _UnescapeSpecialChars(m1) ); - } - ); - - return text; -} - - -var _EncodeEmailAddress = function(addr) { -// -// Input: an email address, e.g. "foo@example.com" -// -// Output: the email address as a mailto link, with each character -// of the address encoded as either a decimal or hex entity, in -// the hopes of foiling most address harvesting spam bots. E.g.: -// -// <a href="mailto:foo@e -// xample.com">foo -// @example.com</a> -// -// Based on a filter by Matthew Wickline, posted to the BBEdit-Talk -// mailing list: <http://tinyurl.com/yu7ue> -// - - // attacklab: why can't javascript speak hex? - function char2hex(ch) { - var hexDigits = '0123456789ABCDEF'; - var dec = ch.charCodeAt(0); - return(hexDigits.charAt(dec>>4) + hexDigits.charAt(dec&15)); - } - - var encode = [ - function(ch){return "&#"+ch.charCodeAt(0)+";";}, - function(ch){return "&#x"+char2hex(ch)+";";}, - function(ch){return ch;} - ]; - - addr = "mailto:" + addr; - - addr = addr.replace(/./g, function(ch) { - if (ch == "@") { - // this *must* be encoded. I insist. - ch = encode[Math.floor(Math.random()*2)](ch); - } else if (ch !=":") { - // leave ':' alone (to spot mailto: later) - var r = Math.random(); - // roughly 10% raw, 45% hex, 45% dec - ch = ( - r > .9 ? encode[2](ch) : - r > .45 ? encode[1](ch) : - encode[0](ch) - ); - } - return ch; - }); - - addr = "<a href=\"" + addr + "\">" + addr + "</a>"; - addr = addr.replace(/">.+:/g,"\">"); // strip the mailto: from the visible part - - return addr; -} - - -var _UnescapeSpecialChars = function(text) { -// -// Swap back in all the special characters we've hidden. -// - text = text.replace(/~E(\d+)E/g, - function(wholeMatch,m1) { - var charCodeToReplace = parseInt(m1); - return String.fromCharCode(charCodeToReplace); - } - ); - return text; -} - - -var _Outdent = function(text) { -// -// Remove one level of line-leading tabs or spaces -// - - // attacklab: hack around Konqueror 3.5.4 bug: - // "----------bug".replace(/^-/g,"") == "bug" - - text = text.replace(/^(\t|[ ]{1,4})/gm,"~0"); // attacklab: g_tab_width - - // attacklab: clean up hack - text = text.replace(/~0/g,"") - - return text; -} - -var _Detab = function (text) { - if (!/\t/.test(text)) - return text; - - var spaces = [" ", " ", " ", " "], - skew = 0, - v; - - return text.replace(/[\n\t]/g, function (match, offset) { - if (match === "\n") { - skew = offset + 1; - return match; - } - v = (offset - skew) % 4; - skew = offset + 1; - return spaces[v]; - }); -} - -// -// attacklab: Utility functions -// - - -var escapeCharacters = function(text, charsToEscape, afterBackslash) { - // First we have to escape the escape characters so that - // we can build a character class out of them - var regexString = "([" + charsToEscape.replace(/([\[\]\\])/g,"\\$1") + "])"; - - if (afterBackslash) { - regexString = "\\\\" + regexString; - } - - var regex = new RegExp(regexString,"g"); - text = text.replace(regex,escapeCharacters_callback); - - return text; -} - - -var escapeCharacters_callback = function(wholeMatch,m1) { - var charCodeToEscape = m1.charCodeAt(0); - return "~E"+charCodeToEscape+"E"; -} - -} // end of Attacklab.showdown.converter - - -// Version 0.9 used the Showdown namespace instead of Attacklab.showdown -// The old namespace is deprecated, but we'll support it for now: -var Showdown = Attacklab.showdown; - -// If anyone's interested, tell the world that this file's been loaded -if (Attacklab.fileLoaded) { - Attacklab.fileLoaded("showdown.js"); -} \ No newline at end of file diff --git a/forum/skins/default/media/js/wmd/.svn/text-base/wmd-test.html.svn-base b/forum/skins/default/media/js/wmd/.svn/text-base/wmd-test.html.svn-base deleted file mode 100644 index d748501a5bebca30536efb3a828d3f0faa335743..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/.svn/text-base/wmd-test.html.svn-base +++ /dev/null @@ -1,158 +0,0 @@ -<!DOCTYPE html> -<html> - - <head> - <title>Test WMD Page</title> - - <link rel="stylesheet" type="text/css" href="wmd.css" /> - - <meta http-equiv="pragma" content="no-cache"> - <meta http-equiv="cache-control" content="no-cache"> - <meta http-equiv="pragma-directive" content="no-cache"> - <meta http-equiv="cache-directive" content="no-cache"> - <meta http-equiv="expires" content="0"> - - <script type="text/javascript" src="jQuery/jquery-1.2.6.js"></script> - <script type="text/javascript" src="showdown.js"></script> - </head> - - <body> - <div id="wmd-button-bar" class="wmd-panel"></div> - <br/> - <textarea id="editor" class="wmd-panel"></textarea> - <br/> - <div id="previewer" class="wmd-panel"></div> - <br/> - <div id="wmd-output" class="wmd-panel"></div> - - <p>To test that page up/down and arrow keys work, copy this above the WMD - control.</p> - - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - - <script type="text/javascript" src="wmd.js"></script> - </body> -</html> \ No newline at end of file diff --git a/forum/skins/default/media/js/wmd/.svn/text-base/wmd.css.svn-base b/forum/skins/default/media/js/wmd/.svn/text-base/wmd.css.svn-base deleted file mode 100644 index 2508c7417f94e97f4b087bca83b11e42e14232ae..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/.svn/text-base/wmd.css.svn-base +++ /dev/null @@ -1,117 +0,0 @@ -body -{ - background-color: White -} - -#wmd-editor -{ - background-color: Aquamarine; -} - -#wmd-preview -{ - background-color: LightSkyBlue; -} - -#wmd-output -{ - background-color: Pink; -} - -#wmd-button-row -{ - position: relative; - margin-left: 5px; - margin-right: 5px; - margin-bottom: 5px; - margin-top: 10px; - padding: 0px; - height: 20px; -} - -.wmd-spacer -{ - width: 1px; - height: 20px; - margin-left: 14px; - - position: absolute; - background-color: Silver; - display: inline-block; - list-style: none; -} - -.wmd-button -{ - width: 20px; - height: 20px; - margin-left: 5px; - margin-right: 5px; - - position: absolute; - background-image: url(images/wmd-buttons.png); - background-repeat: no-repeat; - background-position: 0px 0px; - display: inline-block; - list-style: none; -} - -.wmd-button > a -{ - width: 20px; - height: 20px; - margin-left: 5px; - margin-right: 5px; - - position: absolute; - display: inline-block; -} - - -/* sprite button slicing style information */ -#wmd-button-bar #wmd-bold-button {left: 0px; background-position: 0px 0;} -#wmd-button-bar #wmd-italic-button {left: 25px; background-position: -20px 0;} -#wmd-button-bar #wmd-spacer1 {left: 50px;} -#wmd-button-bar #wmd-link-button {left: 75px; background-position: -40px 0;} -#wmd-button-bar #wmd-quote-button {left: 100px; background-position: -60px 0;} -#wmd-button-bar #wmd-code-button {left: 125px; background-position: -80px 0;} -#wmd-button-bar #wmd-image-button {left: 150px; background-position: -100px 0;} -#wmd-button-bar #wmd-spacer2 {left: 175px;} -#wmd-button-bar #wmd-olist-button {left: 200px; background-position: -120px 0;} -#wmd-button-bar #wmd-ulist-button {left: 225px; background-position: -140px 0;} -#wmd-button-bar #wmd-heading-button {left: 250px; background-position: -160px 0;} -#wmd-button-bar #wmd-hr-button {left: 275px; background-position: -180px 0;} -#wmd-button-bar #wmd-spacer3 {left: 300px;} -#wmd-button-bar #wmd-undo-button {left: 325px; background-position: -200px 0;} -#wmd-button-bar #wmd-redo-button {left: 350px; background-position: -220px 0;} -#wmd-button-bar #wmd-help-button {right: 0px; background-position: -240px 0;} - - -.wmd-prompt-background -{ - background-color: Black; -} - -.wmd-prompt-dialog -{ - border: 1px solid #999999; - background-color: #F5F5F5; -} - -.wmd-prompt-dialog > div { - font-size: 0.8em; - font-family: arial, helvetica, sans-serif; -} - - -.wmd-prompt-dialog > form > input[type="text"] { - border: 1px solid #999999; - color: black; -} - -.wmd-prompt-dialog > form > input[type="button"]{ - border: 1px solid #888888; - font-family: trebuchet MS, helvetica, sans-serif; - font-size: 0.8em; - font-weight: bold; -} diff --git a/forum/skins/default/media/js/wmd/.svn/text-base/wmd.js.svn-base b/forum/skins/default/media/js/wmd/.svn/text-base/wmd.js.svn-base deleted file mode 100644 index fd429a4b241445b9ea532bc22ca6bc5705e29c38..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/.svn/text-base/wmd.js.svn-base +++ /dev/null @@ -1,2503 +0,0 @@ -jQuery.extend({createUploadIframe:function(d,b){var a="jUploadFrame"+d;if(window.ActiveXObject){var c=document.createElement('<iframe id="'+a+'" name="'+a+'" />');if(typeof b=="boolean"){c.src="javascript:false"}else{if(typeof b=="string"){c.src=b}}}else{var c=document.createElement("iframe");c.id=a;c.name=a}c.style.position="absolute";c.style.top="-1000px";c.style.left="-1000px";document.body.appendChild(c);return c},createUploadForm:function(g,b){var e="jUploadForm"+g;var a="jUploadFile"+g;var d=$('<form action="" method="POST" name="'+e+'" id="'+e+'" enctype="multipart/form-data"></form>');var c=$("#"+b);var f=$(c).clone();$(c).attr("id",a);$(c).before(f);$(c).appendTo(d);$(d).css("position","absolute");$(d).css("top","-1200px");$(d).css("left","-1200px");$(d).appendTo("body");return d},ajaxFileUpload:function(k){k=jQuery.extend({},jQuery.ajaxSettings,k);var a=new Date().getTime();var b=jQuery.createUploadForm(a,k.fileElementId);var i=jQuery.createUploadIframe(a,k.secureuri);var h="jUploadFrame"+a;var j="jUploadForm"+a;if(k.global&&!jQuery.active++){jQuery.event.trigger("ajaxStart")}var c=false;var f={};if(k.global){jQuery.event.trigger("ajaxSend",[f,k])}var d=function(l){var p=document.getElementById(h);try{if(p.contentWindow){f.responseText=p.contentWindow.document.body?p.contentWindow.document.body.innerText:null;f.responseXML=p.contentWindow.document.XMLDocument?p.contentWindow.document.XMLDocument:p.contentWindow.document}else{if(p.contentDocument){f.responseText=p.contentDocument.document.body?p.contentDocument.document.body.textContent||document.body.innerText:null;f.responseXML=p.contentDocument.document.XMLDocument?p.contentDocument.document.XMLDocument:p.contentDocument.document}}}catch(o){jQuery.handleError(k,f,null,o)}if(f||l=="timeout"){c=true;var m;try{m=l!="timeout"?"success":"error";if(m!="error"){var n=jQuery.uploadHttpData(f,k.dataType);if(k.success){k.success(n,m)}if(k.global){jQuery.event.trigger("ajaxSuccess",[f,k])}}else{jQuery.handleError(k,f,m)}}catch(o){m="error";jQuery.handleError(k,f,m,o)}if(k.global){jQuery.event.trigger("ajaxComplete",[f,k])}if(k.global&&!--jQuery.active){jQuery.event.trigger("ajaxStop")}if(k.complete){k.complete(f,m)}jQuery(p).unbind();setTimeout(function(){try{$(p).remove();$(b).remove()}catch(q){jQuery.handleError(k,f,null,q)}},100);f=null}};if(k.timeout>0){setTimeout(function(){if(!c){d("timeout")}},k.timeout)}try{var b=$("#"+j);$(b).attr("action",k.url);$(b).attr("method","POST");$(b).attr("target",h);if(b.encoding){b.encoding="multipart/form-data"}else{b.enctype="multipart/form-data"}$(b).submit()}catch(g){jQuery.handleError(k,f,null,g)}if(window.attachEvent){document.getElementById(h).attachEvent("onload",d)}else{document.getElementById(h).addEventListener("load",d,false)}return{abort:function(){}}},uploadHttpData:function(r,type){var data=!type;data=type=="xml"||data?r.responseXML:r.responseText;if(type=="script"){jQuery.globalEval(data)}if(type=="json"){eval("data = "+data)}if(type=="html"){jQuery("<div>").html(data).evalScripts()}return data}}); -/*Upload call*/ -function ajaxFileUpload(imageUrl) -{ - $("#loading").ajaxStart(function(){ - $(this).show(); - }).ajaxComplete(function(){ - $(this).hide(); - }); - - $("#upload").ajaxStart(function(){ - $(this).hide(); - }).ajaxComplete(function(){ - $(this).show(); - }); - - $.ajaxFileUpload - ( - { - url: scriptUrl+'upload/', - secureuri:false, - fileElementId:'file-upload', - dataType: 'xml', - success: function (data, status) - { - var fileURL = $(data).find('file_url').text(); - var error = $(data).find('error').text(); - if(error != ''){ - alert(error); - }else{ - imageUrl.attr('value', appUrl + fileURL); - } - - }, - error: function (data, status, e) - { - alert(e); - } - } - ); - - return false; -} - -var Attacklab = Attacklab || {}; - -Attacklab.wmdBase = function(){ - - // A few handy aliases for readability. - var wmd = top.Attacklab; - var doc = top.document; - var re = top.RegExp; - var nav = top.navigator; - - // Some namespaces. - wmd.Util = {}; - wmd.Position = {}; - wmd.Command = {}; - wmd.Global = {}; - - var util = wmd.Util; - var position = wmd.Position; - var command = wmd.Command; - var global = wmd.Global; - - - // Used to work around some browser bugs where we can't use feature testing. - global.isIE = /msie/.test(nav.userAgent.toLowerCase()); - global.isIE_5or6 = /msie 6/.test(nav.userAgent.toLowerCase()) || /msie 5/.test(nav.userAgent.toLowerCase()); - global.isIE_7plus = global.isIE && !global.isIE_5or6; - global.isOpera = /opera/.test(nav.userAgent.toLowerCase()); - global.isKonqueror = /konqueror/.test(nav.userAgent.toLowerCase()); - - - // ------------------------------------------------------------------- - // YOUR CHANGES GO HERE - // - // I've tried to localize the things you are likely to change to - // this area. - // ------------------------------------------------------------------- - - // The text that appears on the upper part of the dialog box when - // entering links. - var imageDialogText = "<p style='margin-top: 0px'>" + $.i18n._('enter image url') + "</p>"; - var linkDialogText = "<p style='margin-top: 0px'>" + $.i18n._('enter url') + "</p>"; - var uploadImageHTML ="<div>" + $.i18n._('upload image') + "</div>" + - "<input type=\"file\" name=\"file-upload\" id=\"file-upload\" size=\"26\" "+ - "onchange=\"return ajaxFileUpload($('#image-url'));\"/><br>" + - "<img id=\"loading\" src=\"" + mediaUrl("media/images/indicator.gif") + "\" style=\"display:none;\"/>"; - - // The default text that appears in the dialog input box when entering - // links. - var imageDefaultText = "http://"; - var linkDefaultText = "http://"; - - // The location of your button images relative to the base directory. - var imageDirectory = "images/"; - - // Some intervals in ms. These can be adjusted to reduce the control's load. - var previewPollInterval = 500; - var pastePollInterval = 100; - - // The link and title for the help button - var helpLink = "http://daringfireball.net/projects/markdown/syntax"; - var helpHoverTitle = "MarkDown Syntax"; - var helpTarget = "_blank"; - - // ------------------------------------------------------------------- - // END OF YOUR CHANGES - // ------------------------------------------------------------------- - - // A collection of the important regions on the page. - // Cached so we don't have to keep traversing the DOM. - wmd.PanelCollection = function(){ - this.buttonBar = doc.getElementById("wmd-button-bar"); - this.preview = doc.getElementById("previewer"); - this.output = doc.getElementById("wmd-output"); - this.input = doc.getElementById("editor"); - }; - - // This PanelCollection object can't be filled until after the page - // has loaded. - wmd.panels = undefined; - - // Internet explorer has problems with CSS sprite buttons that use HTML - // lists. When you click on the background image "button", IE will - // select the non-existent link text and discard the selection in the - // textarea. The solution to this is to cache the textarea selection - // on the button's mousedown event and set a flag. In the part of the - // code where we need to grab the selection, we check for the flag - // and, if it's set, use the cached area instead of querying the - // textarea. - // - // This ONLY affects Internet Explorer (tested on versions 6, 7 - // and 8) and ONLY on button clicks. Keyboard shortcuts work - // normally since the focus never leaves the textarea. - wmd.ieCachedRange = null; // cached textarea selection - wmd.ieRetardedClick = false; // flag - - // Returns true if the DOM element is visible, false if it's hidden. - // Checks if display is anything other than none. - util.isVisible = function (elem) { - - if (window.getComputedStyle) { - // Most browsers - return window.getComputedStyle(elem, null).getPropertyValue("display") !== "none"; - } - else if (elem.currentStyle) { - // IE - return elem.currentStyle["display"] !== "none"; - } - }; - - - // Adds a listener callback to a DOM element which is fired on a specified - // event. - util.addEvent = function(elem, event, listener){ - if (elem.attachEvent) { - // IE only. The "on" is mandatory. - elem.attachEvent("on" + event, listener); - } - else { - // Other browsers. - elem.addEventListener(event, listener, false); - } - }; - - - // Removes a listener callback from a DOM element which is fired on a specified - // event. - util.removeEvent = function(elem, event, listener){ - if (elem.detachEvent) { - // IE only. The "on" is mandatory. - elem.detachEvent("on" + event, listener); - } - else { - // Other browsers. - elem.removeEventListener(event, listener, false); - } - }; - - // Converts \r\n and \r to \n. - util.fixEolChars = function(text){ - text = text.replace(/\r\n/g, "\n"); - text = text.replace(/\r/g, "\n"); - return text; - }; - - // Extends a regular expression. Returns a new RegExp - // using pre + regex + post as the expression. - // Used in a few functions where we have a base - // expression and we want to pre- or append some - // conditions to it (e.g. adding "$" to the end). - // The flags are unchanged. - // - // regex is a RegExp, pre and post are strings. - util.extendRegExp = function(regex, pre, post){ - - if (pre === null || pre === undefined) - { - pre = ""; - } - if(post === null || post === undefined) - { - post = ""; - } - - var pattern = regex.toString(); - var flags = ""; - - // Replace the flags with empty space and store them. - // Technically, this can match incorrect flags like "gmm". - var result = pattern.match(/\/([gim]*)$/); - if (result === null) { - flags = result[0]; - } - else { - flags = ""; - } - - // Remove the flags and slash delimiters from the regular expression. - pattern = pattern.replace(/(^\/|\/[gim]*$)/g, ""); - pattern = pre + pattern + post; - - return new RegExp(pattern, flags); - } - - - // Sets the image for a button passed to the WMD editor. - // Returns a new element with the image attached. - // Adds several style properties to the image. - util.createImage = function(img){ - - var imgPath = imageDirectory + img; - - var elem = doc.createElement("img"); - elem.className = "wmd-button"; - elem.src = imgPath; - - return elem; - }; - - - // This simulates a modal dialog box and asks for the URL when you - // click the hyperlink or image buttons. - // - // text: The html for the input box. - // defaultInputText: The default value that appears in the input box. - // makeLinkMarkdown: The function which is executed when the prompt is dismissed, either via OK or Cancel - util.prompt = function(text, defaultInputText, makeLinkMarkdown){ - - // These variables need to be declared at this level since they are used - // in multiple functions. - var dialog; // The dialog box. - var background; // The background beind the dialog box. - var input; // The text box where you enter the hyperlink. - var type = 0; - // The dialog box type(0: Link, 1: Image) - if(arguments.length == 4){ - type = arguments[3]; - } - - if (defaultInputText === undefined) { - defaultInputText = ""; - } - - // Used as a keydown event handler. Esc dismisses the prompt. - // Key code 27 is ESC. - var checkEscape = function(key){ - var code = (key.charCode || key.keyCode); - if (code === 27) { - close(true); - } - }; - - // Dismisses the hyperlink input box. - // isCancel is true if we don't care about the input text. - // isCancel is false if we are going to keep the text. - var close = function(isCancel){ - util.removeEvent(doc.body, "keydown", checkEscape); - var text = input.value; - - if (isCancel){ - text = null; - } - else{ - // Fixes common pasting errors. - text = text.replace('http://http://', 'http://'); - text = text.replace('http://https://', 'https://'); - text = text.replace('http://ftp://', 'ftp://'); - - if (text.indexOf('http://') === -1 && text.indexOf('ftp://') === -1 && text.indexOf('https://') === -1) { - text = 'http://' + text; - } - } - - dialog.parentNode.removeChild(dialog); - background.parentNode.removeChild(background); - makeLinkMarkdown(text); - return false; - }; - - // Creates the background behind the hyperlink text entry box. - // Most of this has been moved to CSS but the div creation and - // browser-specific hacks remain here. - var createBackground = function(){ - - background = doc.createElement("div"); - background.className = "wmd-prompt-background"; - style = background.style; - style.position = "absolute"; - style.top = "0"; - - style.zIndex = "1000"; - - // Some versions of Konqueror don't support transparent colors - // so we make the whole window transparent. - // - // Is this necessary on modern konqueror browsers? - if (global.isKonqueror){ - style.backgroundColor = "transparent"; - } - else if (global.isIE){ - style.filter = "alpha(opacity=50)"; - } - else { - style.opacity = "0.5"; - } - - var pageSize = position.getPageSize(); - style.height = pageSize[1] + "px"; - - if(global.isIE){ - style.left = doc.documentElement.scrollLeft; - style.width = doc.documentElement.clientWidth; - } - else { - style.left = "0"; - style.width = "100%"; - } - - doc.body.appendChild(background); - }; - - // Create the text input box form/window. - var createDialog = function(){ - - // The main dialog box. - dialog = doc.createElement("div"); - dialog.className = "wmd-prompt-dialog"; - dialog.style.padding = "10px;"; - dialog.style.position = "fixed"; - dialog.style.width = "400px"; - dialog.style.zIndex = "1001"; - - // The dialog text. - var question = doc.createElement("div"); - question.innerHTML = text; - question.style.padding = "5px"; - dialog.appendChild(question); - - // The web form container for the text box and buttons. - var form = doc.createElement("form"); - form.onsubmit = function(){ return close(false); }; - style = form.style; - style.padding = "0"; - style.margin = "0"; - style.cssFloat = "left"; - style.width = "100%"; - style.textAlign = "center"; - style.position = "relative"; - dialog.appendChild(form); - - // The input text box - input = doc.createElement("input"); - input.id = "image-url"; - input.type = "text"; - input.value = defaultInputText; - style = input.style; - style.display = "block"; - style.width = "80%"; - style.marginLeft = style.marginRight = "auto"; - form.appendChild(input); - - // The upload file input - var upload = doc.createElement("div"); - upload.innerHTML = uploadImageHTML; - upload.style.padding = "5px"; - form.appendChild(upload); - - // The ok button - var okButton = doc.createElement("input"); - okButton.type = "button"; - okButton.onclick = function(){ return close(false); }; - okButton.value = "OK"; - style = okButton.style; - style.margin = "10px"; - style.display = "inline"; - style.width = "7em"; - - - // The cancel button - var cancelButton = doc.createElement("input"); - cancelButton.type = "button"; - cancelButton.onclick = function(){ return close(true); }; - cancelButton.value = "Cancel"; - style = cancelButton.style; - style.margin = "10px"; - style.display = "inline"; - style.width = "7em"; - - // The order of these buttons is different on macs. - if (/mac/.test(nav.platform.toLowerCase())) { - form.appendChild(cancelButton); - form.appendChild(okButton); - } - else { - form.appendChild(okButton); - form.appendChild(cancelButton); - } - - util.addEvent(doc.body, "keydown", checkEscape); - dialog.style.top = "50%"; - dialog.style.left = "50%"; - dialog.style.display = "block"; - if(global.isIE_5or6){ - dialog.style.position = "absolute"; - dialog.style.top = doc.documentElement.scrollTop + 200 + "px"; - dialog.style.left = "50%"; - } - doc.body.appendChild(dialog); - - // This has to be done AFTER adding the dialog to the form if you - // want it to be centered. - dialog.style.marginTop = -(position.getHeight(dialog) / 2) + "px"; - dialog.style.marginLeft = -(position.getWidth(dialog) / 2) + "px"; - - }; - - createBackground(); - - // Why is this in a zero-length timeout? - // Is it working around a browser bug? - top.setTimeout(function(){ - - createDialog(); - - var defTextLen = defaultInputText.length; - if (input.selectionStart !== undefined) { - input.selectionStart = 0; - input.selectionEnd = defTextLen; - } - else if (input.createTextRange) { - var range = input.createTextRange(); - range.collapse(false); - range.moveStart("character", -defTextLen); - range.moveEnd("character", defTextLen); - range.select(); - } - - input.focus(); - }, 0); - }; - - - // UNFINISHED - // The assignment in the while loop makes jslint cranky. - // I'll change it to a better loop later. - position.getTop = function(elem, isInner){ - var result = elem.offsetTop; - if (!isInner) { - while (elem = elem.offsetParent) { - result += elem.offsetTop; - } - } - return result; - }; - - position.getHeight = function (elem) { - return elem.offsetHeight || elem.scrollHeight; - }; - - position.getWidth = function (elem) { - return elem.offsetWidth || elem.scrollWidth; - }; - - position.getPageSize = function(){ - - var scrollWidth, scrollHeight; - var innerWidth, innerHeight; - - // It's not very clear which blocks work with which browsers. - if(self.innerHeight && self.scrollMaxY){ - scrollWidth = doc.body.scrollWidth; - scrollHeight = self.innerHeight + self.scrollMaxY; - } - else if(doc.body.scrollHeight > doc.body.offsetHeight){ - scrollWidth = doc.body.scrollWidth; - scrollHeight = doc.body.scrollHeight; - } - else{ - scrollWidth = doc.body.offsetWidth; - scrollHeight = doc.body.offsetHeight; - } - - if(self.innerHeight){ - // Non-IE browser - innerWidth = self.innerWidth; - innerHeight = self.innerHeight; - } - else if(doc.documentElement && doc.documentElement.clientHeight){ - // Some versions of IE (IE 6 w/ a DOCTYPE declaration) - innerWidth = doc.documentElement.clientWidth; - innerHeight = doc.documentElement.clientHeight; - } - else if(doc.body){ - // Other versions of IE - innerWidth = doc.body.clientWidth; - innerHeight = doc.body.clientHeight; - } - - var maxWidth = Math.max(scrollWidth, innerWidth); - var maxHeight = Math.max(scrollHeight, innerHeight); - return [maxWidth, maxHeight, innerWidth, innerHeight]; - }; - - // Watches the input textarea, polling at an interval and runs - // a callback function if anything has changed. - wmd.inputPoller = function(callback, interval){ - - var pollerObj = this; - var inputArea = wmd.panels.input; - - // Stored start, end and text. Used to see if there are changes to the input. - var lastStart; - var lastEnd; - var markdown; - - var killHandle; // Used to cancel monitoring on destruction. - // Checks to see if anything has changed in the textarea. - // If so, it runs the callback. - this.tick = function(){ - - if (!util.isVisible(inputArea)) { - return; - } - - // Update the selection start and end, text. - if (inputArea.selectionStart || inputArea.selectionStart === 0) { - var start = inputArea.selectionStart; - var end = inputArea.selectionEnd; - if (start != lastStart || end != lastEnd) { - lastStart = start; - lastEnd = end; - - if (markdown != inputArea.value) { - markdown = inputArea.value; - return true; - } - } - } - return false; - }; - - - var doTickCallback = function(){ - - if (!util.isVisible(inputArea)) { - return; - } - - // If anything has changed, call the function. - if (pollerObj.tick()) { - callback(); - } - }; - - // Set how often we poll the textarea for changes. - var assignInterval = function(){ - // previewPollInterval is set at the top of the namespace. - killHandle = top.setInterval(doTickCallback, interval); - }; - - this.destroy = function(){ - top.clearInterval(killHandle); - }; - - assignInterval(); - }; - - // Handles pushing and popping TextareaStates for undo/redo commands. - // I should rename the stack variables to list. - wmd.undoManager = function(callback){ - - var undoObj = this; - var undoStack = []; // A stack of undo states - var stackPtr = 0; // The index of the current state - var mode = "none"; - var lastState; // The last state - var poller; - var timer; // The setTimeout handle for cancelling the timer - var inputStateObj; - - // Set the mode for later logic steps. - var setMode = function(newMode, noSave){ - - if (mode != newMode) { - mode = newMode; - if (!noSave) { - saveState(); - } - } - - if (!global.isIE || mode != "moving") { - timer = top.setTimeout(refreshState, 1); - } - else { - inputStateObj = null; - } - }; - - var refreshState = function(){ - inputStateObj = new wmd.TextareaState(); - poller.tick(); - timer = undefined; - }; - - this.setCommandMode = function(){ - mode = "command"; - saveState(); - timer = top.setTimeout(refreshState, 0); - }; - - this.canUndo = function(){ - return stackPtr > 1; - }; - - this.canRedo = function(){ - if (undoStack[stackPtr + 1]) { - return true; - } - return false; - }; - - // Removes the last state and restores it. - this.undo = function(){ - - if (undoObj.canUndo()) { - if (lastState) { - // What about setting state -1 to null or checking for undefined? - lastState.restore(); - lastState = null; - } - else { - undoStack[stackPtr] = new wmd.TextareaState(); - undoStack[--stackPtr].restore(); - - if (callback) { - callback(); - } - } - } - - mode = "none"; - wmd.panels.input.focus(); - refreshState(); - }; - - // Redo an action. - this.redo = function(){ - - if (undoObj.canRedo()) { - - undoStack[++stackPtr].restore(); - - if (callback) { - callback(); - } - } - - mode = "none"; - wmd.panels.input.focus(); - refreshState(); - }; - - // Push the input area state to the stack. - var saveState = function(){ - - var currState = inputStateObj || new wmd.TextareaState(); - - if (!currState) { - return false; - } - if (mode == "moving") { - if (!lastState) { - lastState = currState; - } - return; - } - if (lastState) { - if (undoStack[stackPtr - 1].text != lastState.text) { - undoStack[stackPtr++] = lastState; - } - lastState = null; - } - undoStack[stackPtr++] = currState; - undoStack[stackPtr + 1] = null; - if (callback) { - callback(); - } - }; - - var handleCtrlYZ = function(event){ - - var handled = false; - - if (event.ctrlKey || event.metaKey) { - - // IE and Opera do not support charCode. - var keyCode = event.charCode || event.keyCode; - var keyCodeChar = String.fromCharCode(keyCode); - - switch (keyCodeChar) { - - case "y": - undoObj.redo(); - handled = true; - break; - - case "z": - if (!event.shiftKey) { - undoObj.undo(); - } - else { - undoObj.redo(); - } - handled = true; - break; - } - } - - if (handled) { - if (event.preventDefault) { - event.preventDefault(); - } - if (top.event) { - top.event.returnValue = false; - } - return; - } - }; - - // Set the mode depending on what is going on in the input area. - var handleModeChange = function(event){ - - if (!event.ctrlKey && !event.metaKey) { - - var keyCode = event.keyCode; - - if ((keyCode >= 33 && keyCode <= 40) || (keyCode >= 63232 && keyCode <= 63235)) { - // 33 - 40: page up/dn and arrow keys - // 63232 - 63235: page up/dn and arrow keys on safari - setMode("moving"); - } - else if (keyCode == 8 || keyCode == 46 || keyCode == 127) { - // 8: backspace - // 46: delete - // 127: delete - setMode("deleting"); - } - else if (keyCode == 13) { - // 13: Enter - setMode("newlines"); - } - else if (keyCode == 27) { - // 27: escape - setMode("escape"); - } - else if ((keyCode < 16 || keyCode > 20) && keyCode != 91) { - // 16-20 are shift, etc. - // 91: left window key - // I think this might be a little messed up since there are - // a lot of nonprinting keys above 20. - setMode("typing"); - } - } - }; - - var setEventHandlers = function(){ - - util.addEvent(wmd.panels.input, "keypress", function(event){ - // keyCode 89: y - // keyCode 90: z - if ((event.ctrlKey || event.metaKey) && (event.keyCode == 89 || event.keyCode == 90)) { - event.preventDefault(); - } - }); - - var handlePaste = function(){ - if (global.isIE || (inputStateObj && inputStateObj.text != wmd.panels.input.value)) { - if (timer == undefined) { - mode = "paste"; - saveState(); - refreshState(); - } - } - }; - - // pastePollInterval is specified at the beginning of this namespace. - poller = new wmd.inputPoller(handlePaste, pastePollInterval); - - util.addEvent(wmd.panels.input, "keydown", handleCtrlYZ); - util.addEvent(wmd.panels.input, "keydown", handleModeChange); - - util.addEvent(wmd.panels.input, "mousedown", function(){ - setMode("moving"); - }); - wmd.panels.input.onpaste = handlePaste; - wmd.panels.input.ondrop = handlePaste; - }; - - var init = function(){ - setEventHandlers(); - refreshState(); - saveState(); - }; - - this.destroy = function(){ - if (poller) { - poller.destroy(); - } - }; - - init(); - }; - - // I think my understanding of how the buttons and callbacks are stored in the array is incomplete. - wmd.editor = function(previewRefreshCallback){ - - if (!previewRefreshCallback) { - previewRefreshCallback = function(){}; - } - - var inputBox = wmd.panels.input; - - var offsetHeight = 0; - - var editObj = this; - - var mainDiv; - var mainSpan; - - var div; // This name is pretty ambiguous. I should rename this. - - // Used to cancel recurring events from setInterval. - var creationHandle; - - var undoMgr; // The undo manager - - // Perform the button's action. - var doClick = function(button){ - - inputBox.focus(); - - if (button.textOp) { - - if (undoMgr) { - undoMgr.setCommandMode(); - } - - var state = new wmd.TextareaState(); - - if (!state) { - return; - } - - var chunks = state.getChunks(); - - // Some commands launch a "modal" prompt dialog. Javascript - // can't really make a modal dialog box and the WMD code - // will continue to execute while the dialog is displayed. - // This prevents the dialog pattern I'm used to and means - // I can't do something like this: - // - // var link = CreateLinkDialog(); - // makeMarkdownLink(link); - // - // Instead of this straightforward method of handling a - // dialog I have to pass any code which would execute - // after the dialog is dismissed (e.g. link creation) - // in a function parameter. - // - // Yes this is awkward and I think it sucks, but there's - // no real workaround. Only the image and link code - // create dialogs and require the function pointers. - var fixupInputArea = function(){ - - inputBox.focus(); - - if (chunks) { - state.setChunks(chunks); - } - - state.restore(); - previewRefreshCallback(); - }; - - var useDefaultText = true; - var noCleanup = button.textOp(chunks, fixupInputArea, useDefaultText); - - if(!noCleanup) { - fixupInputArea(); - } - - } - - if (button.execute) { - button.execute(editObj); - } - }; - - var setUndoRedoButtonStates = function(){ - if(undoMgr){ - setupButton(document.getElementById("wmd-undo-button"), undoMgr.canUndo()); - setupButton(document.getElementById("wmd-redo-button"), undoMgr.canRedo()); - } - }; - - var setupButton = function(button, isEnabled) { - - var normalYShift = "0px"; - var disabledYShift = "-20px"; - var highlightYShift = "-40px"; - - if(isEnabled) { - button.style.backgroundPosition = button.XShift + " " + normalYShift; - button.onmouseover = function(){ - this.style.backgroundPosition = this.XShift + " " + highlightYShift; - }; - - button.onmouseout = function(){ - this.style.backgroundPosition = this.XShift + " " + normalYShift; - }; - - // IE tries to select the background image "button" text (it's - // implemented in a list item) so we have to cache the selection - // on mousedown. - if(global.isIE) { - button.onmousedown = function() { - wmd.ieRetardedClick = true; - wmd.ieCachedRange = document.selection.createRange(); - }; - } - - if (!button.isHelp) - { - button.onclick = function() { - if (this.onmouseout) { - this.onmouseout(); - } - doClick(this); - return false; - } - } - } - else { - button.style.backgroundPosition = button.XShift + " " + disabledYShift; - button.onmouseover = button.onmouseout = button.onclick = function(){}; - } - } - - var makeSpritedButtonRow = function(){ - - var buttonBar = document.getElementById("wmd-button-bar"); - - var normalYShift = "0px"; - var disabledYShift = "-20px"; - var highlightYShift = "-40px"; - - var buttonRow = document.createElement("ul"); - buttonRow.id = "wmd-button-row"; - buttonRow = buttonBar.appendChild(buttonRow); - - - var boldButton = document.createElement("li"); - boldButton.className = "wmd-button"; - boldButton.id = "wmd-bold-button"; - boldButton.title = "Strong <strong> Ctrl+B"; - boldButton.XShift = "0px"; - boldButton.textOp = command.doBold; - setupButton(boldButton, true); - buttonRow.appendChild(boldButton); - - var italicButton = document.createElement("li"); - italicButton.className = "wmd-button"; - italicButton.id = "wmd-italic-button"; - italicButton.title = "Emphasis <em> Ctrl+I"; - italicButton.XShift = "-20px"; - italicButton.textOp = command.doItalic; - setupButton(italicButton, true); - buttonRow.appendChild(italicButton); - - var spacer1 = document.createElement("li"); - spacer1.className = "wmd-spacer"; - spacer1.id = "wmd-spacer1"; - buttonRow.appendChild(spacer1); - - var linkButton = document.createElement("li"); - linkButton.className = "wmd-button"; - linkButton.id = "wmd-link-button"; - linkButton.title = "Hyperlink <a> Ctrl+L"; - linkButton.XShift = "-40px"; - linkButton.textOp = function(chunk, postProcessing, useDefaultText){ - return command.doLinkOrImage(chunk, postProcessing, false); - }; - setupButton(linkButton, true); - buttonRow.appendChild(linkButton); - - var quoteButton = document.createElement("li"); - quoteButton.className = "wmd-button"; - quoteButton.id = "wmd-quote-button"; - quoteButton.title = "Blockquote <blockquote> Ctrl+Q"; - quoteButton.XShift = "-60px"; - quoteButton.textOp = command.doBlockquote; - setupButton(quoteButton, true); - buttonRow.appendChild(quoteButton); - - var codeButton = document.createElement("li"); - codeButton.className = "wmd-button"; - codeButton.id = "wmd-code-button"; - codeButton.title = "Code Sample <pre><code> Ctrl+K"; - codeButton.XShift = "-80px"; - codeButton.textOp = command.doCode; - setupButton(codeButton, true); - buttonRow.appendChild(codeButton); - - var imageButton = document.createElement("li"); - imageButton.className = "wmd-button"; - imageButton.id = "wmd-image-button"; - imageButton.title = "Image <img> Ctrl+G"; - imageButton.XShift = "-100px"; - imageButton.textOp = function(chunk, postProcessing, useDefaultText){ - return command.doLinkOrImage(chunk, postProcessing, true); - }; - setupButton(imageButton, true); - buttonRow.appendChild(imageButton); - - var spacer2 = document.createElement("li"); - spacer2.className = "wmd-spacer"; - spacer2.id = "wmd-spacer2"; - buttonRow.appendChild(spacer2); - - var olistButton = document.createElement("li"); - olistButton.className = "wmd-button"; - olistButton.id = "wmd-olist-button"; - olistButton.title = "Numbered List <ol> Ctrl+O"; - olistButton.XShift = "-120px"; - olistButton.textOp = function(chunk, postProcessing, useDefaultText){ - command.doList(chunk, postProcessing, true, useDefaultText); - }; - setupButton(olistButton, true); - buttonRow.appendChild(olistButton); - - var ulistButton = document.createElement("li"); - ulistButton.className = "wmd-button"; - ulistButton.id = "wmd-ulist-button"; - ulistButton.title = "Bulleted List <ul> Ctrl+U"; - ulistButton.XShift = "-140px"; - ulistButton.textOp = function(chunk, postProcessing, useDefaultText){ - command.doList(chunk, postProcessing, false, useDefaultText); - }; - setupButton(ulistButton, true); - buttonRow.appendChild(ulistButton); - - var headingButton = document.createElement("li"); - headingButton.className = "wmd-button"; - headingButton.id = "wmd-heading-button"; - headingButton.title = "Heading <h1>/<h2> Ctrl+H"; - headingButton.XShift = "-160px"; - headingButton.textOp = command.doHeading; - setupButton(headingButton, true); - buttonRow.appendChild(headingButton); - - var hrButton = document.createElement("li"); - hrButton.className = "wmd-button"; - hrButton.id = "wmd-hr-button"; - hrButton.title = "Horizontal Rule <hr> Ctrl+R"; - hrButton.XShift = "-180px"; - hrButton.textOp = command.doHorizontalRule; - setupButton(hrButton, true); - buttonRow.appendChild(hrButton); - - var spacer3 = document.createElement("li"); - spacer3.className = "wmd-spacer"; - spacer3.id = "wmd-spacer3"; - buttonRow.appendChild(spacer3); - - var undoButton = document.createElement("li"); - undoButton.className = "wmd-button"; - undoButton.id = "wmd-undo-button"; - undoButton.title = "Undo - Ctrl+Z"; - undoButton.XShift = "-200px"; - undoButton.execute = function(manager){ - manager.undo(); - }; - setupButton(undoButton, true); - buttonRow.appendChild(undoButton); - - var redoButton = document.createElement("li"); - redoButton.className = "wmd-button"; - redoButton.id = "wmd-redo-button"; - redoButton.title = "Redo - Ctrl+Y"; - if (/win/.test(nav.platform.toLowerCase())) { - redoButton.title = "Redo - Ctrl+Y"; - } - else { - // mac and other non-Windows platforms - redoButton.title = "Redo - Ctrl+Shift+Z"; - } - redoButton.XShift = "-220px"; - redoButton.execute = function(manager){ - manager.redo(); - }; - setupButton(redoButton, true); - buttonRow.appendChild(redoButton); - - var helpButton = document.createElement("li"); - helpButton.className = "wmd-button"; - helpButton.id = "wmd-help-button"; - helpButton.XShift = "-240px"; - helpButton.isHelp = true; - - var helpAnchor = document.createElement("a"); - helpAnchor.href = helpLink; - helpAnchor.target = helpTarget - helpAnchor.title = helpHoverTitle; - helpButton.appendChild(helpAnchor); - - setupButton(helpButton, true); - buttonRow.appendChild(helpButton); - - setUndoRedoButtonStates(); - } - - var setupEditor = function(){ - - if (/\?noundo/.test(doc.location.href)) { - wmd.nativeUndo = true; - } - - if (!wmd.nativeUndo) { - undoMgr = new wmd.undoManager(function(){ - previewRefreshCallback(); - setUndoRedoButtonStates(); - }); - } - - makeSpritedButtonRow(); - - - var keyEvent = "keydown"; - if (global.isOpera) { - keyEvent = "keypress"; - } - - util.addEvent(inputBox, keyEvent, function(key){ - - // Check to see if we have a button key and, if so execute the callback. - if (key.ctrlKey || key.metaKey) { - - var keyCode = key.charCode || key.keyCode; - var keyCodeStr = String.fromCharCode(keyCode).toLowerCase(); - - switch(keyCodeStr) { - case "b": - doClick(document.getElementById("wmd-bold-button")); - break; - case "i": - doClick(document.getElementById("wmd-italic-button")); - break; - case "l": - doClick(document.getElementById("wmd-link-button")); - break; - case "q": - doClick(document.getElementById("wmd-quote-button")); - break; - case "k": - doClick(document.getElementById("wmd-code-button")); - break; - case "g": - doClick(document.getElementById("wmd-image-button")); - break; - case "o": - doClick(document.getElementById("wmd-olist-button")); - break; - case "u": - doClick(document.getElementById("wmd-ulist-button")); - break; - case "h": - doClick(document.getElementById("wmd-heading-button")); - break; - case "r": - doClick(document.getElementById("wmd-hr-button")); - break; - case "y": - doClick(document.getElementById("wmd-redo-button")); - break; - case "z": - if(key.shiftKey) { - doClick(document.getElementById("wmd-redo-button")); - } - else { - doClick(document.getElementById("wmd-undo-button")); - } - break; - default: - return; - } - - - if (key.preventDefault) { - key.preventDefault(); - } - - if (top.event) { - top.event.returnValue = false; - } - } - }); - - // Auto-continue lists, code blocks and block quotes when - // the enter key is pressed. - util.addEvent(inputBox, "keyup", function(key){ - if (!key.shiftKey && !key.ctrlKey && !key.metaKey) { - var keyCode = key.charCode || key.keyCode; - // Key code 13 is Enter - if (keyCode === 13) { - fakeButton = {}; - fakeButton.textOp = command.doAutoindent; - doClick(fakeButton); - } - } - }); - - // Disable ESC clearing the input textarea on IE - if (global.isIE) { - util.addEvent(inputBox, "keydown", function(key){ - var code = key.keyCode; - // Key code 27 is ESC - if (code === 27) { - return false; - } - }); - } - - if (inputBox.form) { - var submitCallback = inputBox.form.onsubmit; - inputBox.form.onsubmit = function(){ - convertToHtml(); - if (submitCallback) { - return submitCallback.apply(this, arguments); - } - }; - } - }; - - // Convert the contents of the input textarea to HTML in the output/preview panels. - var convertToHtml = function(){ - - if (wmd.showdown) { - var markdownConverter = new wmd.showdown.converter(); - } - var text = inputBox.value; - - var callback = function(){ - inputBox.value = text; - }; - - if (!/markdown/.test(wmd.wmd_env.output.toLowerCase())) { - if (markdownConverter) { - inputBox.value = markdownConverter.makeHtml(text); - top.setTimeout(callback, 0); - } - } - return true; - }; - - - this.undo = function(){ - if (undoMgr) { - undoMgr.undo(); - } - }; - - this.redo = function(){ - if (undoMgr) { - undoMgr.redo(); - } - }; - - // This is pretty useless. The setupEditor function contents - // should just be copied here. - var init = function(){ - setupEditor(); - }; - - this.destroy = function(){ - if (undoMgr) { - undoMgr.destroy(); - } - if (div.parentNode) { - div.parentNode.removeChild(div); - } - if (inputBox) { - inputBox.style.marginTop = ""; - } - top.clearInterval(creationHandle); - }; - - init(); - }; - - // The input textarea state/contents. - // This is used to implement undo/redo by the undo manager. - wmd.TextareaState = function(){ - - // Aliases - var stateObj = this; - var inputArea = wmd.panels.input; - - this.init = function() { - - if (!util.isVisible(inputArea)) { - return; - } - - this.setInputAreaSelectionStartEnd(); - this.scrollTop = inputArea.scrollTop; - if (!this.text && inputArea.selectionStart || inputArea.selectionStart === 0) { - this.text = inputArea.value; - } - - } - - // Sets the selected text in the input box after we've performed an - // operation. - this.setInputAreaSelection = function(){ - - if (!util.isVisible(inputArea)) { - return; - } - - if (inputArea.selectionStart !== undefined && !global.isOpera) { - - inputArea.focus(); - inputArea.selectionStart = stateObj.start; - inputArea.selectionEnd = stateObj.end; - inputArea.scrollTop = stateObj.scrollTop; - } - else if (doc.selection) { - - if (doc.activeElement && doc.activeElement !== inputArea) { - return; - } - - inputArea.focus(); - var range = inputArea.createTextRange(); - range.moveStart("character", -inputArea.value.length); - range.moveEnd("character", -inputArea.value.length); - range.moveEnd("character", stateObj.end); - range.moveStart("character", stateObj.start); - range.select(); - } - }; - - this.setInputAreaSelectionStartEnd = function(){ - - if (inputArea.selectionStart || inputArea.selectionStart === 0) { - - stateObj.start = inputArea.selectionStart; - stateObj.end = inputArea.selectionEnd; - } - else if (doc.selection) { - - stateObj.text = util.fixEolChars(inputArea.value); - - // IE loses the selection in the textarea when buttons are - // clicked. On IE we cache the selection and set a flag - // which we check for here. - var range; - if(wmd.ieRetardedClick && wmd.ieCachedRange) { - range = wmd.ieCachedRange; - wmd.ieRetardedClick = false; - } - else { - range = doc.selection.createRange(); - } - - var fixedRange = util.fixEolChars(range.text); - var marker = "\x07"; - var markedRange = marker + fixedRange + marker; - range.text = markedRange; - var inputText = util.fixEolChars(inputArea.value); - - range.moveStart("character", -markedRange.length); - range.text = fixedRange; - - stateObj.start = inputText.indexOf(marker); - stateObj.end = inputText.lastIndexOf(marker) - marker.length; - - var len = stateObj.text.length - util.fixEolChars(inputArea.value).length; - - if (len) { - range.moveStart("character", -fixedRange.length); - while (len--) { - fixedRange += "\n"; - stateObj.end += 1; - } - range.text = fixedRange; - } - - this.setInputAreaSelection(); - } - }; - - // Restore this state into the input area. - this.restore = function(){ - - if (stateObj.text != undefined && stateObj.text != inputArea.value) { - inputArea.value = stateObj.text; - } - this.setInputAreaSelection(); - inputArea.scrollTop = stateObj.scrollTop; - }; - - // Gets a collection of HTML chunks from the inptut textarea. - this.getChunks = function(){ - - var chunk = new wmd.Chunks(); - - chunk.before = util.fixEolChars(stateObj.text.substring(0, stateObj.start)); - chunk.startTag = ""; - chunk.selection = util.fixEolChars(stateObj.text.substring(stateObj.start, stateObj.end)); - chunk.endTag = ""; - chunk.after = util.fixEolChars(stateObj.text.substring(stateObj.end)); - chunk.scrollTop = stateObj.scrollTop; - - return chunk; - }; - - // Sets the TextareaState properties given a chunk of markdown. - this.setChunks = function(chunk){ - - chunk.before = chunk.before + chunk.startTag; - chunk.after = chunk.endTag + chunk.after; - - if (global.isOpera) { - chunk.before = chunk.before.replace(/\n/g, "\r\n"); - chunk.selection = chunk.selection.replace(/\n/g, "\r\n"); - chunk.after = chunk.after.replace(/\n/g, "\r\n"); - } - - this.start = chunk.before.length; - this.end = chunk.before.length + chunk.selection.length; - this.text = chunk.before + chunk.selection + chunk.after; - this.scrollTop = chunk.scrollTop; - }; - - this.init(); - }; - - // before: contains all the text in the input box BEFORE the selection. - // after: contains all the text in the input box AFTER the selection. - wmd.Chunks = function(){ - }; - - // startRegex: a regular expression to find the start tag - // endRegex: a regular expresssion to find the end tag - wmd.Chunks.prototype.findTags = function(startRegex, endRegex){ - - var chunkObj = this; - var regex; - - if (startRegex) { - - regex = util.extendRegExp(startRegex, "", "$"); - - this.before = this.before.replace(regex, - function(match){ - chunkObj.startTag = chunkObj.startTag + match; - return ""; - }); - - regex = util.extendRegExp(startRegex, "^", ""); - - this.selection = this.selection.replace(regex, - function(match){ - chunkObj.startTag = chunkObj.startTag + match; - return ""; - }); - } - - if (endRegex) { - - regex = util.extendRegExp(endRegex, "", "$"); - - this.selection = this.selection.replace(regex, - function(match){ - chunkObj.endTag = match + chunkObj.endTag; - return ""; - }); - - regex = util.extendRegExp(endRegex, "^", ""); - - this.after = this.after.replace(regex, - function(match){ - chunkObj.endTag = match + chunkObj.endTag; - return ""; - }); - } - }; - - // If remove is false, the whitespace is transferred - // to the before/after regions. - // - // If remove is true, the whitespace disappears. - wmd.Chunks.prototype.trimWhitespace = function(remove){ - - this.selection = this.selection.replace(/^(\s*)/, ""); - - if (!remove) { - this.before += re.$1; - } - - this.selection = this.selection.replace(/(\s*)$/, ""); - - if (!remove) { - this.after = re.$1 + this.after; - } - }; - - - wmd.Chunks.prototype.addBlankLines = function(nLinesBefore, nLinesAfter, findExtraNewlines){ - - if (nLinesBefore === undefined) { - nLinesBefore = 1; - } - - if (nLinesAfter === undefined) { - nLinesAfter = 1; - } - - nLinesBefore++; - nLinesAfter++; - - var regexText; - var replacementText; - - if (navigator.userAgent.match(/Chrome/)) { - "X".match(/()./) - } - - this.selection = this.selection.replace(/(^\n*)/, ""); - this.startTag = this.startTag + re.$1; - this.selection = this.selection.replace(/(\n*$)/, ""); - this.endTag = this.endTag + re.$1; - this.startTag = this.startTag.replace(/(^\n*)/, ""); - this.before = this.before + re.$1; - this.endTag = this.endTag.replace(/(\n*$)/, ""); - this.after = this.after + re.$1; - - if (this.before) { - - regexText = replacementText = ""; - - while (nLinesBefore--) { - regexText += "\\n?"; - replacementText += "\n"; - } - - if (findExtraNewlines) { - regexText = "\\n*"; - } - this.before = this.before.replace(new re(regexText + "$", ""), replacementText); - } - - if (this.after) { - - regexText = replacementText = ""; - - while (nLinesAfter--) { - regexText += "\\n?"; - replacementText += "\n"; - } - if (findExtraNewlines) { - regexText = "\\n*"; - } - - this.after = this.after.replace(new re(regexText, ""), replacementText); - } - }; - - // The markdown symbols - 4 spaces = code, > = blockquote, etc. - command.prefixes = "(?:\\s{4,}|\\s*>|\\s*-\\s+|\\s*\\d+\\.|=|\\+|-|_|\\*|#|\\s*\\[[^\n]]+\\]:)"; - - // Remove markdown symbols from the chunk selection. - command.unwrap = function(chunk){ - var txt = new re("([^\\n])\\n(?!(\\n|" + command.prefixes + "))", "g"); - chunk.selection = chunk.selection.replace(txt, "$1 $2"); - }; - - command.wrap = function(chunk, len){ - command.unwrap(chunk); - var regex = new re("(.{1," + len + "})( +|$\\n?)", "gm"); - - chunk.selection = chunk.selection.replace(regex, function(line, marked){ - if (new re("^" + command.prefixes, "").test(line)) { - return line; - } - return marked + "\n"; - }); - - chunk.selection = chunk.selection.replace(/\s+$/, ""); - }; - - command.doBold = function(chunk, postProcessing, useDefaultText){ - return command.doBorI(chunk, 2, "strong text"); - }; - - command.doItalic = function(chunk, postProcessing, useDefaultText){ - return command.doBorI(chunk, 1, "emphasized text"); - }; - - // chunk: The selected region that will be enclosed with */** - // nStars: 1 for italics, 2 for bold - // insertText: If you just click the button without highlighting text, this gets inserted - command.doBorI = function(chunk, nStars, insertText){ - - // Get rid of whitespace and fix up newlines. - chunk.trimWhitespace(); - chunk.selection = chunk.selection.replace(/\n{2,}/g, "\n"); - - // Look for stars before and after. Is the chunk already marked up? - chunk.before.search(/(\**$)/); - var starsBefore = re.$1; - - chunk.after.search(/(^\**)/); - var starsAfter = re.$1; - - var prevStars = Math.min(starsBefore.length, starsAfter.length); - - // Remove stars if we have to since the button acts as a toggle. - if ((prevStars >= nStars) && (prevStars != 2 || nStars != 1)) { - chunk.before = chunk.before.replace(re("[*]{" + nStars + "}$", ""), ""); - chunk.after = chunk.after.replace(re("^[*]{" + nStars + "}", ""), ""); - } - else if (!chunk.selection && starsAfter) { - // It's not really clear why this code is necessary. It just moves - // some arbitrary stuff around. - chunk.after = chunk.after.replace(/^([*_]*)/, ""); - chunk.before = chunk.before.replace(/(\s?)$/, ""); - var whitespace = re.$1; - chunk.before = chunk.before + starsAfter + whitespace; - } - else { - - // In most cases, if you don't have any selected text and click the button - // you'll get a selected, marked up region with the default text inserted. - if (!chunk.selection && !starsAfter) { - chunk.selection = insertText; - } - - // Add the true markup. - var markup = nStars <= 1 ? "*" : "**"; // shouldn't the test be = ? - chunk.before = chunk.before + markup; - chunk.after = markup + chunk.after; - } - - return; - }; - - command.stripLinkDefs = function(text, defsToAdd){ - - text = text.replace(/^[ ]{0,3}\[(\d+)\]:[ \t]*\n?[ \t]*<?(\S+?)>?[ \t]*\n?[ \t]*(?:(\n*)["(](.+?)[")][ \t]*)?(?:\n+|$)/gm, - function(totalMatch, id, link, newlines, title){ - defsToAdd[id] = totalMatch.replace(/\s*$/, ""); - if (newlines) { - // Strip the title and return that separately. - defsToAdd[id] = totalMatch.replace(/["(](.+?)[")]$/, ""); - return newlines + title; - } - return ""; - }); - - return text; - }; - - command.addLinkDef = function(chunk, linkDef){ - - var refNumber = 0; // The current reference number - var defsToAdd = {}; // - // Start with a clean slate by removing all previous link definitions. - chunk.before = command.stripLinkDefs(chunk.before, defsToAdd); - chunk.selection = command.stripLinkDefs(chunk.selection, defsToAdd); - chunk.after = command.stripLinkDefs(chunk.after, defsToAdd); - - var defs = ""; - var regex = /(\[)((?:\[[^\]]*\]|[^\[\]])*)(\][ ]?(?:\n[ ]*)?\[)(\d+)(\])/g; - - - - var addDefNumber = function(def){ - refNumber++; - def = def.replace(/^[ ]{0,3}\[(\d+)\]:/, " [" + refNumber + "]:"); - defs += "\n" + def; - }; - - // note that - // a) the recursive call to getLink cannot go infinite, because by definition - // of regex, inner is always a proper substring of wholeMatch, and - // b) more than one level of nesting is neither supported by the regex - // nor making a lot of sense (the only use case for nesting is a linked image) - var getLink = function (wholeMatch, before, inner, afterInner, id, end) { - inner = inner.replace(regex, getLink); - if (defsToAdd[id]) { - addDefNumber(defsToAdd[id]); - return before + inner + afterInner + refNumber + end; - - } - return wholeMatch; - }; - - chunk.before = chunk.before.replace(regex, getLink); - - if (linkDef) { - addDefNumber(linkDef); - } - else { - chunk.selection = chunk.selection.replace(regex, getLink); - } - - var refOut = refNumber; - - chunk.after = chunk.after.replace(regex, getLink); - - if (chunk.after) { - chunk.after = chunk.after.replace(/\n*$/, ""); - } - if (!chunk.after) { - chunk.selection = chunk.selection.replace(/\n*$/, ""); - } - - chunk.after += "\n\n" + defs; - - return refOut; - }; - - command.doLinkOrImage = function(chunk, postProcessing, isImage){ - - chunk.trimWhitespace(); - chunk.findTags(/\s*!?\[/, /\][ ]?(?:\n[ ]*)?(\[.*?\])?/); - - if (chunk.endTag.length > 1) { - - chunk.startTag = chunk.startTag.replace(/!?\[/, ""); - chunk.endTag = ""; - command.addLinkDef(chunk, null); - - } - else { - - if (/\n\n/.test(chunk.selection)) { - command.addLinkDef(chunk, null); - return; - } - - // The function to be executed when you enter a link and press OK or Cancel. - // Marks up the link and adds the ref. - var makeLinkMarkdown = function(link){ - - if (link !== null) { - - chunk.startTag = chunk.endTag = ""; - var linkDef = " [999]: " + link; - - var num = command.addLinkDef(chunk, linkDef); - chunk.startTag = isImage ? "![" : "["; - chunk.endTag = "][" + num + "]"; - - if (!chunk.selection) { - if (isImage) { - chunk.selection = "alt text"; - } - else { - chunk.selection = "link text"; - } - } - } - postProcessing(); - }; - - if (isImage) { - util.prompt(imageDialogText, imageDefaultText, makeLinkMarkdown); - } - else { - util.prompt(linkDialogText, linkDefaultText, makeLinkMarkdown); - } - return true; - } - }; - - util.makeAPI = function(){ - wmd.wmd = {}; - wmd.wmd.editor = wmd.editor; - wmd.wmd.previewManager = wmd.previewManager; - }; - - util.startEditor = function(){ - - if (wmd.wmd_env.autostart === false) { - util.makeAPI(); - return; - } - - var edit; // The editor (buttons + input + outputs) - the main object. - var previewMgr; // The preview manager. - - // Fired after the page has fully loaded. - var loadListener = function(){ - - wmd.panels = new wmd.PanelCollection(); - - previewMgr = new wmd.previewManager(); - var previewRefreshCallback = previewMgr.refresh; - - edit = new wmd.editor(previewRefreshCallback); - - previewMgr.refresh(true); - - }; - - util.addEvent(top, "load", loadListener); - }; - - wmd.previewManager = function(){ - - var managerObj = this; - var converter; - var poller; - var timeout; - var elapsedTime; - var oldInputText; - var htmlOut; - var maxDelay = 3000; - var startType = "delayed"; // The other legal value is "manual" - - // Adds event listeners to elements and creates the input poller. - var setupEvents = function(inputElem, listener){ - - util.addEvent(inputElem, "input", listener); - inputElem.onpaste = listener; - inputElem.ondrop = listener; - - util.addEvent(inputElem, "keypress", listener); - util.addEvent(inputElem, "keydown", listener); - // previewPollInterval is set at the top of this file. - poller = new wmd.inputPoller(listener, previewPollInterval); - }; - - var getDocScrollTop = function(){ - - var result = 0; - - if (top.innerHeight) { - result = top.pageYOffset; - } - else - if (doc.documentElement && doc.documentElement.scrollTop) { - result = doc.documentElement.scrollTop; - } - else - if (doc.body) { - result = doc.body.scrollTop; - } - - return result; - }; - - var makePreviewHtml = function(){ - - // If there are no registered preview and output panels - // there is nothing to do. - if (!wmd.panels.preview && !wmd.panels.output) { - return; - } - - var text = wmd.panels.input.value; - if (text && text == oldInputText) { - return; // Input text hasn't changed. - } - else { - oldInputText = text; - } - - var prevTime = new Date().getTime(); - - if (!converter && wmd.showdown) { - converter = new wmd.showdown.converter(); - } - - if (converter) { - text = converter.makeHtml(text); - } - - // Calculate the processing time of the HTML creation. - // It's used as the delay time in the event listener. - var currTime = new Date().getTime(); - elapsedTime = currTime - prevTime; - - pushPreviewHtml(text); - htmlOut = text; - }; - - // setTimeout is already used. Used as an event listener. - var applyTimeout = function(){ - - if (timeout) { - top.clearTimeout(timeout); - timeout = undefined; - } - - if (startType !== "manual") { - - var delay = 0; - - if (startType === "delayed") { - delay = elapsedTime; - } - - if (delay > maxDelay) { - delay = maxDelay; - } - timeout = top.setTimeout(makePreviewHtml, delay); - } - }; - - var getScaleFactor = function(panel){ - if (panel.scrollHeight <= panel.clientHeight) { - return 1; - } - return panel.scrollTop / (panel.scrollHeight - panel.clientHeight); - }; - - var setPanelScrollTops = function(){ - - if (wmd.panels.preview) { - wmd.panels.preview.scrollTop = (wmd.panels.preview.scrollHeight - wmd.panels.preview.clientHeight) * getScaleFactor(wmd.panels.preview); - ; - } - - if (wmd.panels.output) { - wmd.panels.output.scrollTop = (wmd.panels.output.scrollHeight - wmd.panels.output.clientHeight) * getScaleFactor(wmd.panels.output); - ; - } - }; - - this.refresh = function(requiresRefresh){ - - if (requiresRefresh) { - oldInputText = ""; - makePreviewHtml(); - } - else { - applyTimeout(); - } - }; - - this.processingTime = function(){ - return elapsedTime; - }; - - // The output HTML - this.output = function(){ - return htmlOut; - }; - - // The mode can be "manual" or "delayed" - this.setUpdateMode = function(mode){ - startType = mode; - managerObj.refresh(); - }; - - var isFirstTimeFilled = true; - - var pushPreviewHtml = function(text){ - - var emptyTop = position.getTop(wmd.panels.input) - getDocScrollTop(); - - // Send the encoded HTML to the output textarea/div. - if (wmd.panels.output) { - // The value property is only defined if the output is a textarea. - if (wmd.panels.output.value !== undefined) { - wmd.panels.output.value = text; - wmd.panels.output.readOnly = true; - } - // Otherwise we are just replacing the text in a div. - // Send the HTML wrapped in <pre><code> - else { - var newText = text.replace(/&/g, "&"); - newText = newText.replace(/</g, "<"); - wmd.panels.output.innerHTML = "<pre><code>" + newText + "</code></pre>"; - } - } - - if (wmd.panels.preview) { - wmd.panels.preview.innerHTML = text; - } - - setPanelScrollTops(); - - if (isFirstTimeFilled) { - isFirstTimeFilled = false; - return; - } - - var fullTop = position.getTop(wmd.panels.input) - getDocScrollTop(); - - if (global.isIE) { - top.setTimeout(function(){ - top.scrollBy(0, fullTop - emptyTop); - }, 0); - } - else { - top.scrollBy(0, fullTop - emptyTop); - } - }; - - var init = function(){ - - setupEvents(wmd.panels.input, applyTimeout); - makePreviewHtml(); - - if (wmd.panels.preview) { - wmd.panels.preview.scrollTop = 0; - } - if (wmd.panels.output) { - wmd.panels.output.scrollTop = 0; - } - }; - - this.destroy = function(){ - if (poller) { - poller.destroy(); - } - }; - - init(); - }; - - // Moves the cursor to the next line and continues lists, quotes and code. - command.doAutoindent = function(chunk, postProcessing, useDefaultText){ - - chunk.before = chunk.before.replace(/(\n|^)[ ]{0,3}([*+-]|\d+[.])[ \t]*\n$/, "\n\n"); - chunk.before = chunk.before.replace(/(\n|^)[ ]{0,3}>[ \t]*\n$/, "\n\n"); - chunk.before = chunk.before.replace(/(\n|^)[ \t]+\n$/, "\n\n"); - - useDefaultText = false; - - if(/(\n|^)[ ]{0,3}([*+-])[ \t]+.*\n$/.test(chunk.before)){ - if(command.doList){ - command.doList(chunk, postProcessing, false, true); - } - } - if(/(\n|^)[ ]{0,3}(\d+[.])[ \t]+.*\n$/.test(chunk.before)){ - if(command.doList){ - command.doList(chunk, postProcessing, true, true); - } - } - if(/(\n|^)[ ]{0,3}>[ \t]+.*\n$/.test(chunk.before)){ - if(command.doBlockquote){ - command.doBlockquote(chunk, postProcessing, useDefaultText); - } - } - if(/(\n|^)(\t|[ ]{4,}).*\n$/.test(chunk.before)){ - if(command.doCode){ - command.doCode(chunk, postProcessing, useDefaultText); - } - } - }; - - command.doBlockquote = function(chunk, postProcessing, useDefaultText){ - - chunk.selection = chunk.selection.replace(/^(\n*)([^\r]+?)(\n*)$/, - function(totalMatch, newlinesBefore, text, newlinesAfter){ - chunk.before += newlinesBefore; - chunk.after = newlinesAfter + chunk.after; - return text; - }); - - chunk.before = chunk.before.replace(/(>[ \t]*)$/, - function(totalMatch, blankLine){ - chunk.selection = blankLine + chunk.selection; - return ""; - }); - - var defaultText = useDefaultText ? "Blockquote" : ""; - chunk.selection = chunk.selection.replace(/^(\s|>)+$/ ,""); - chunk.selection = chunk.selection || defaultText; - - // The original code uses a regular expression to find out how much of the - // text *directly before* the selection already was a blockquote: - /* - if(chunk.before){ - chunk.before = chunk.before.replace(/\n?$/,"\n"); - } - chunk.before = chunk.before.replace(/(((\n|^)(\n[ \t]*)*>(.+\n)*.*)+(\n[ \t]*)*$)/, - function (totalMatch) { - chunk.startTag = totalMatch; - return ""; - }); - */ - // This comes down to: - // Go backwards as many lines a possible, such that each line - // a) starts with ">", or - // b) is almost empty, except for whitespace, or - // c) is preceeded by an unbroken chain of non-empty lines - // leading up to a line that starts with ">" and at least one more character - // and in addition - // d) at least one line fulfills a) - // - // Since this is essentially a backwards-moving regex, it's susceptible to - // catstrophic backtracking and can cause the browser to hang; - // see e.g. http://meta.stackoverflow.com/questions/9807. - // - // Hence we replaced this by a simple state machine that just goes through the - // lines and checks for a), b), and c). - - var match = ""; - var leftOver = ""; - if (chunk.before) { - var lines = chunk.before.replace(/\n$/, "").split("\n"); - var inChain = false; - for (var i in lines) { - var good = false; - line = lines[i]; - inChain = inChain && line.length > 0; // c) any non-empty line continues the chain - if (/^>/.test(line)) { // a) - good = true; - if (!inChain && line.length > 1) // c) any line that starts with ">" and has at least one more character starts the chain - inChain = true; - } else if (/^[ \t]*$/.test(line)) { // b) - good = true; - } else { - good = inChain; // c) the line is not empty and does not start with ">", so it matches if and only if we're in the chain - } - if (good) { - match += line + "\n"; - } else { - leftOver += match + line; - match = "\n"; - } - } - if (!/(^|\n)>/.test(match)) { // d) - leftOver += match; - match = ""; - } - } - - chunk.startTag = match; - chunk.before = leftOver; - - // end of change - - if(chunk.after){ - chunk.after = chunk.after.replace(/^\n?/,"\n"); - } - - chunk.after = chunk.after.replace(/^(((\n|^)(\n[ \t]*)*>(.+\n)*.*)+(\n[ \t]*)*)/, - function(totalMatch){ - chunk.endTag = totalMatch; - return ""; - }); - - var replaceBlanksInTags = function(useBracket){ - - var replacement = useBracket ? "> " : ""; - - if(chunk.startTag){ - chunk.startTag = chunk.startTag.replace(/\n((>|\s)*)\n$/, - function(totalMatch, markdown){ - return "\n" + markdown.replace(/^[ ]{0,3}>?[ \t]*$/gm, replacement) + "\n"; - }); - } - if(chunk.endTag){ - chunk.endTag = chunk.endTag.replace(/^\n((>|\s)*)\n/, - function(totalMatch, markdown){ - return "\n" + markdown.replace(/^[ ]{0,3}>?[ \t]*$/gm, replacement) + "\n"; - }); - } - }; - - if(/^(?![ ]{0,3}>)/m.test(chunk.selection)){ - command.wrap(chunk, wmd.wmd_env.lineLength - 2); - chunk.selection = chunk.selection.replace(/^/gm, "> "); - replaceBlanksInTags(true); - chunk.addBlankLines(); - } - else{ - chunk.selection = chunk.selection.replace(/^[ ]{0,3}> ?/gm, ""); - command.unwrap(chunk); - replaceBlanksInTags(false); - - if(!/^(\n|^)[ ]{0,3}>/.test(chunk.selection) && chunk.startTag){ - chunk.startTag = chunk.startTag.replace(/\n{0,2}$/, "\n\n"); - } - - if(!/(\n|^)[ ]{0,3}>.*$/.test(chunk.selection) && chunk.endTag){ - chunk.endTag=chunk.endTag.replace(/^\n{0,2}/, "\n\n"); - } - } - - if(!/\n/.test(chunk.selection)){ - chunk.selection = chunk.selection.replace(/^(> *)/, - function(wholeMatch, blanks){ - chunk.startTag += blanks; - return ""; - }); - } - }; - - command.doCode = function(chunk, postProcessing, useDefaultText){ - - var hasTextBefore = /\S[ ]*$/.test(chunk.before); - var hasTextAfter = /^[ ]*\S/.test(chunk.after); - - // Use 'four space' markdown if the selection is on its own - // line or is multiline. - if((!hasTextAfter && !hasTextBefore) || /\n/.test(chunk.selection)){ - - chunk.before = chunk.before.replace(/[ ]{4}$/, - function(totalMatch){ - chunk.selection = totalMatch + chunk.selection; - return ""; - }); - - var nLinesBefore = 1; - var nLinesAfter = 1; - - - if(/\n(\t|[ ]{4,}).*\n$/.test(chunk.before) || chunk.after === ""){ - nLinesBefore = 0; - } - if(/^\n(\t|[ ]{4,})/.test(chunk.after)){ - nLinesAfter = 0; // This needs to happen on line 1 - } - - chunk.addBlankLines(nLinesBefore, nLinesAfter); - - if(!chunk.selection){ - chunk.startTag = " "; - chunk.selection = useDefaultText ? "enter code here" : ""; - } - else { - if(/^[ ]{0,3}\S/m.test(chunk.selection)){ - chunk.selection = chunk.selection.replace(/^/gm, " "); - } - else{ - chunk.selection = chunk.selection.replace(/^[ ]{4}/gm, ""); - } - } - } - else{ - // Use backticks (`) to delimit the code block. - - chunk.trimWhitespace(); - chunk.findTags(/`/, /`/); - - if(!chunk.startTag && !chunk.endTag){ - chunk.startTag = chunk.endTag="`"; - if(!chunk.selection){ - chunk.selection = useDefaultText ? "enter code here" : ""; - } - } - else if(chunk.endTag && !chunk.startTag){ - chunk.before += chunk.endTag; - chunk.endTag = ""; - } - else{ - chunk.startTag = chunk.endTag=""; - } - } - }; - - command.doList = function(chunk, postProcessing, isNumberedList, useDefaultText){ - - // These are identical except at the very beginning and end. - // Should probably use the regex extension function to make this clearer. - var previousItemsRegex = /(\n|^)(([ ]{0,3}([*+-]|\d+[.])[ \t]+.*)(\n.+|\n{2,}([*+-].*|\d+[.])[ \t]+.*|\n{2,}[ \t]+\S.*)*)\n*$/; - var nextItemsRegex = /^\n*(([ ]{0,3}([*+-]|\d+[.])[ \t]+.*)(\n.+|\n{2,}([*+-].*|\d+[.])[ \t]+.*|\n{2,}[ \t]+\S.*)*)\n*/; - - // The default bullet is a dash but others are possible. - // This has nothing to do with the particular HTML bullet, - // it's just a markdown bullet. - var bullet = "-"; - - // The number in a numbered list. - var num = 1; - - // Get the item prefix - e.g. " 1. " for a numbered list, " - " for a bulleted list. - var getItemPrefix = function(){ - var prefix; - if(isNumberedList){ - prefix = " " + num + ". "; - num++; - } - else{ - prefix = " " + bullet + " "; - } - return prefix; - }; - - // Fixes the prefixes of the other list items. - var getPrefixedItem = function(itemText){ - - // The numbering flag is unset when called by autoindent. - if(isNumberedList === undefined){ - isNumberedList = /^\s*\d/.test(itemText); - } - - // Renumber/bullet the list element. - itemText = itemText.replace(/^[ ]{0,3}([*+-]|\d+[.])\s/gm, - function( _ ){ - return getItemPrefix(); - }); - - return itemText; - }; - - chunk.findTags(/(\n|^)*[ ]{0,3}([*+-]|\d+[.])\s+/, null); - - if(chunk.before && !/\n$/.test(chunk.before) && !/^\n/.test(chunk.startTag)){ - chunk.before += chunk.startTag; - chunk.startTag = ""; - } - - if(chunk.startTag){ - - var hasDigits = /\d+[.]/.test(chunk.startTag); - chunk.startTag = ""; - chunk.selection = chunk.selection.replace(/\n[ ]{4}/g, "\n"); - command.unwrap(chunk); - chunk.addBlankLines(); - - if(hasDigits){ - // Have to renumber the bullet points if this is a numbered list. - chunk.after = chunk.after.replace(nextItemsRegex, getPrefixedItem); - } - if(isNumberedList == hasDigits){ - return; - } - } - - var nLinesBefore = 1; - - chunk.before = chunk.before.replace(previousItemsRegex, - function(itemText){ - if(/^\s*([*+-])/.test(itemText)){ - bullet = re.$1; - } - nLinesBefore = /[^\n]\n\n[^\n]/.test(itemText) ? 1 : 0; - return getPrefixedItem(itemText); - }); - - if(!chunk.selection){ - chunk.selection = useDefaultText ? "List item" : " "; - } - - var prefix = getItemPrefix(); - - var nLinesAfter = 1; - - chunk.after = chunk.after.replace(nextItemsRegex, - function(itemText){ - nLinesAfter = /[^\n]\n\n[^\n]/.test(itemText) ? 1 : 0; - return getPrefixedItem(itemText); - }); - - chunk.trimWhitespace(true); - chunk.addBlankLines(nLinesBefore, nLinesAfter, true); - chunk.startTag = prefix; - var spaces = prefix.replace(/./g, " "); - command.wrap(chunk, wmd.wmd_env.lineLength - spaces.length); - chunk.selection = chunk.selection.replace(/\n/g, "\n" + spaces); - - }; - - command.doHeading = function(chunk, postProcessing, useDefaultText){ - - // Remove leading/trailing whitespace and reduce internal spaces to single spaces. - chunk.selection = chunk.selection.replace(/\s+/g, " "); - chunk.selection = chunk.selection.replace(/(^\s+|\s+$)/g, ""); - - // If we clicked the button with no selected text, we just - // make a level 2 hash header around some default text. - if(!chunk.selection){ - chunk.startTag = "## "; - chunk.selection = "Heading"; - chunk.endTag = " ##"; - return; - } - - var headerLevel = 0; // The existing header level of the selected text. - - // Remove any existing hash heading markdown and save the header level. - chunk.findTags(/#+[ ]*/, /[ ]*#+/); - if(/#+/.test(chunk.startTag)){ - headerLevel = re.lastMatch.length; - } - chunk.startTag = chunk.endTag = ""; - - // Try to get the current header level by looking for - and = in the line - // below the selection. - chunk.findTags(null, /\s?(-+|=+)/); - if(/=+/.test(chunk.endTag)){ - headerLevel = 1; - } - if(/-+/.test(chunk.endTag)){ - headerLevel = 2; - } - - // Skip to the next line so we can create the header markdown. - chunk.startTag = chunk.endTag = ""; - chunk.addBlankLines(1, 1); - - // We make a level 2 header if there is no current header. - // If there is a header level, we substract one from the header level. - // If it's already a level 1 header, it's removed. - var headerLevelToCreate = headerLevel == 0 ? 2 : headerLevel - 1; - - if(headerLevelToCreate > 0){ - - // The button only creates level 1 and 2 underline headers. - // Why not have it iterate over hash header levels? Wouldn't that be easier and cleaner? - var headerChar = headerLevelToCreate >= 2 ? "-" : "="; - var len = chunk.selection.length; - if(len > wmd.wmd_env.lineLength){ - len = wmd.wmd_env.lineLength; - } - chunk.endTag = "\n"; - while(len--){ - chunk.endTag += headerChar; - } - } - }; - - command.doHorizontalRule = function(chunk, postProcessing, useDefaultText){ - chunk.startTag = "----------\n"; - chunk.selection = ""; - chunk.addBlankLines(2, 1, true); - } -}; - - -Attacklab.wmd_env = {}; -Attacklab.account_options = {}; -Attacklab.wmd_defaults = {version:1, output:"HTML", lineLength:40, delayLoad:false}; - -if(!Attacklab.wmd) -{ - Attacklab.wmd = function() - { - Attacklab.loadEnv = function() - { - var mergeEnv = function(env) - { - if(!env) - { - return; - } - - for(var key in env) - { - Attacklab.wmd_env[key] = env[key]; - } - }; - - mergeEnv(Attacklab.wmd_defaults); - mergeEnv(Attacklab.account_options); - mergeEnv(top["wmd_options"]); - Attacklab.full = true; - - var defaultButtons = "bold italic link blockquote code image ol ul heading hr"; - Attacklab.wmd_env.buttons = Attacklab.wmd_env.buttons || defaultButtons; - }; - Attacklab.loadEnv(); - - }; - - Attacklab.wmd(); - Attacklab.wmdBase(); - Attacklab.Util.startEditor(); -}; - diff --git a/forum/skins/default/media/js/wmd/images/.svn/all-wcprops b/forum/skins/default/media/js/wmd/images/.svn/all-wcprops deleted file mode 100644 index 166b12c3ed8c6294dce75f53e6817327ec18ab3a..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/all-wcprops +++ /dev/null @@ -1,119 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images -END -link.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/link.png -END -separator.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/separator.png -END -wmd-on.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd-on.png -END -undo.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/undo.png -END -italic.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/italic.png -END -h1.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/h1.png -END -blockquote.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/blockquote.png -END -hr.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/hr.png -END -ol.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/ol.png -END -code.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/code.png -END -img.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/img.png -END -bg-fill.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/bg-fill.png -END -ul.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/ul.png -END -bold.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/bold.png -END -wmd-buttons.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd-buttons.png -END -wmd-buttons.psd -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd-buttons.psd -END -wmd.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd.png -END -bg.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/bg.png -END -redo.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/redo.png -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/entries b/forum/skins/default/media/js/wmd/images/.svn/entries deleted file mode 100644 index 8bcde8df6a857c0a8e1171852b4375ba15aac899..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/entries +++ /dev/null @@ -1,674 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/js/wmd/images -http://svn.osqa.net/svnroot - - - -2010-08-18T17:11:19.434296Z -559 -court - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -separator.png -file - - - - -2012-06-22T20:34:41.844851Z -2f9b84a8176f9c9240bf426b60f6a4b2 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -210 - -wmd-on.png -file - - - - -2012-06-22T20:34:41.848849Z -caf6e32d8f1f3e0d5f68aaefec01b90e -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -477 - -undo.png -file - - - - -2012-06-22T20:34:41.848849Z -bb47fa6e5a8358c3ae1e01de52199fe6 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -651 - -italic.png -file - - - - -2012-06-22T20:34:41.848849Z -3bf7831adb1602b7f96ec48f272324ea -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -247 - -h1.png -file - - - - -2012-06-22T20:34:41.860843Z -3ad50a82af1dab5154fcbbca299a4927 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -203 - -blockquote.png -file - - - - -2012-06-22T20:34:41.856845Z -f4200a028db71995a8e390c95654b836 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -284 - -hr.png -file - - - - -2012-06-22T20:34:41.860843Z -0e224193ad91f84c41bed48da2323704 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -218 - -ol.png -file - - - - -2012-06-22T20:34:41.860843Z -438f40ffe3553e7e880cbb802c64e69d -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -215 - -code.png -file - - - - -2012-06-22T20:34:41.860843Z -3d74a58ca89139123b466ee8b34794e3 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -214 - -img.png -file - - - - -2012-06-22T20:34:41.884831Z -15a0132a55cbab85d11b654d8e1ce371 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -447 - -bg-fill.png -file - - - - -2012-06-22T20:34:41.880833Z -c72ec596602b1830a6e433823f66124f -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -177 - -ul.png -file - - - - -2012-06-22T20:34:41.884831Z -0a164ac02e04d8410300f8d7251a1bb7 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -172 - -bold.png -file - - - - -2012-06-22T20:34:41.884831Z -2372ab7b3343bb0be16d5a6d479463e9 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -255 - -wmd-buttons.png -file - - - - -2012-06-22T20:34:41.884831Z -235c6a346ad74ce19e94ae5895d330f7 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -7465 - -wmd-buttons.psd -file - - - - -2012-06-22T20:34:41.888829Z -70878e8a40c65dae64d5fa5580d203ff -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -61236 - -wmd.png -file - - - - -2012-06-22T20:34:41.888829Z -97b2202006b39b7b1eefc8b73bf1fde3 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -518 - -bg.png -file - - - - -2012-06-22T20:34:41.888829Z -c4e9571610d631879fec1ead708df0a8 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -1814 - -redo.png -file - - - - -2012-06-22T20:34:41.888829Z -e9ccb05b9d605daabb2ab3d7dd3ab1d9 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -669 - -link.png -file - - - - -2012-06-22T20:34:41.844851Z -b4587a6d9da8d796c134a6c53319afe4 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -1079 - diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/bg-fill.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/bg-fill.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/bg-fill.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/bg.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/bg.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/bg.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/blockquote.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/blockquote.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/blockquote.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/bold.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/bold.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/bold.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/code.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/code.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/code.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/h1.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/h1.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/h1.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/hr.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/hr.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/hr.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/img.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/img.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/img.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/italic.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/italic.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/italic.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/link.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/link.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/link.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/ol.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/ol.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/ol.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/redo.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/redo.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/redo.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/separator.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/separator.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/separator.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/ul.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/ul.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/ul.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/undo.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/undo.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/undo.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-buttons.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-buttons.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-buttons.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-buttons.psd.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-buttons.psd.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-buttons.psd.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-on.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-on.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/js/wmd/images/.svn/prop-base/wmd.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/bg-fill.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/bg-fill.png.svn-base deleted file mode 100644 index ec503ce588b66f85975bbffad24e18a9f87c2d2c..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/bg-fill.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/bg.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/bg.png.svn-base deleted file mode 100644 index bcaed31b1fc34c375020fb84ba5a9943d19aca9e..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/bg.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/blockquote.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/blockquote.png.svn-base deleted file mode 100644 index 537864a9b4a92842e5b96436fc7da2cefde92e50..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/blockquote.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/bold.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/bold.png.svn-base deleted file mode 100644 index eac276334888bf44aaa1ad1643c02ce1f7026a7b..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/bold.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/code.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/code.png.svn-base deleted file mode 100644 index dc1011ce3571be1e214ad043cee13a5b28ad5f18..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/code.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/h1.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/h1.png.svn-base deleted file mode 100644 index 96baecbb181808e6195df19b34d30fdbe449005c..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/h1.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/hr.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/hr.png.svn-base deleted file mode 100644 index 08be8e56985b766a47b538a0b41994adac7e17ed..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/hr.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/img.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/img.png.svn-base deleted file mode 100644 index 596b989612bcbbd250360e16b894f0dabf0e2b51..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/img.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/italic.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/italic.png.svn-base deleted file mode 100644 index 412b0fca7d866a53dc97bd17c817cf8c4eaa9c9c..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/italic.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/link.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/link.png.svn-base deleted file mode 100644 index 1e11500c19ddc0f1d059ee3b6bc64a6111eb3dee..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/link.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/ol.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/ol.png.svn-base deleted file mode 100644 index 3df2b9b50741b0f3832b63dc6f917f07644af1c2..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/ol.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/redo.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/redo.png.svn-base deleted file mode 100644 index 736a78baef911e40f1c3f7a0bf713c837e244515..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/redo.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/separator.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/separator.png.svn-base deleted file mode 100644 index 9cb87b9a86bc39a2a468839fafdf0b8bc997740f..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/separator.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/ul.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/ul.png.svn-base deleted file mode 100644 index 978be7e755ee39077e8499f07c9370dc4cd47484..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/ul.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/undo.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/undo.png.svn-base deleted file mode 100644 index 533faaf606929565258d939068f288ca80e008ea..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/undo.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-buttons.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-buttons.png.svn-base deleted file mode 100644 index 50b37090363e6757e7bd0ba75cd1e0dfaabd13d2..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-buttons.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-buttons.psd.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-buttons.psd.svn-base deleted file mode 100644 index e61ff3777dbeac13c6b43df5c53247404518d2bb..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-buttons.psd.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-on.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-on.png.svn-base deleted file mode 100644 index 4844ae917f37c5d3ff72acdde3392e64cd431521..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd-on.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd.png.svn-base b/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd.png.svn-base deleted file mode 100644 index 04177fb85813f4c2b6071924ffa4a81eebc66b2b..0000000000000000000000000000000000000000 Binary files a/forum/skins/default/media/js/wmd/images/.svn/text-base/wmd.png.svn-base and /dev/null differ diff --git a/forum/skins/default/media/style/.svn/all-wcprops b/forum/skins/default/media/style/.svn/all-wcprops deleted file mode 100644 index 8407a861e1c146a501ac46e89ab684cbd360564c..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/all-wcprops +++ /dev/null @@ -1,65 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1208/osqa/trunk/forum/skins/default/media/style -END -markdown_help.css -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/304/osqa/trunk/forum/skins/default/media/style/markdown_help.css -END -openid.css -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/style/openid.css -END -user.css -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/media/style/user.css -END -jquery.autocomplete.css -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/72/osqa/trunk/forum/skins/default/media/style/jquery.autocomplete.css -END -style.css -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1208/osqa/trunk/forum/skins/default/media/style/style.css -END -auth.css -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/style/auth.css -END -default.css -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1033/osqa/trunk/forum/skins/default/media/style/default.css -END -djstyle_admin.css -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/media/style/djstyle_admin.css -END -prettify.css -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/style/prettify.css -END -admin.css -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1026/osqa/trunk/forum/skins/default/media/style/admin.css -END diff --git a/forum/skins/default/media/style/.svn/entries b/forum/skins/default/media/style/.svn/entries deleted file mode 100644 index 3e82180f470ea27306cf593f0c27be76f31728e3..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/entries +++ /dev/null @@ -1,368 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/style -http://svn.osqa.net/svnroot - - - -2011-12-07T21:51:23.050166Z -1208 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -default.css -file - - - - -2012-06-22T20:34:38.854343Z -fb949a14aa849bee692195056e18b0c7 -2011-05-09T17:33:49.619402Z -1033 -jordan - - - - - - - - - - - - - - - - - - - - - -26204 - -djstyle_admin.css -file - - - - -2012-06-22T20:34:38.858341Z -3effd51d279cb96362c940f5855d4dcb -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -1065 - -prettify.css -file - - - - -2012-06-22T20:34:38.858341Z -b3649fc1c0fc45f1e9565afb1dcad13c -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -689 - -admin.css -file - - - - -2012-06-22T20:34:38.846347Z -bbe2c61a11259860f12ef5a54128c3d1 -2011-05-07T10:14:00.218676Z -1026 -jordan - - - - - - - - - - - - - - - - - - - - - -1103 - -markdown_help.css -file - - - - -2012-06-22T20:34:38.846347Z -6860785f57024923f40118270ec808f7 -2010-05-19T14:20:21.569869Z -304 -qw3rty - - - - - - - - - - - - - - - - - - - - - -667 - -openid.css -file - - - - -2012-06-22T20:34:38.846347Z -9a7053abe7085dbacd344f3fbbf5f19a -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -681 - -user.css -file - - - - -2012-06-22T20:34:38.846347Z -3593651779af40f2e687c480ef3db438 -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -1952 - -jquery.autocomplete.css -file - - - - -2012-06-22T20:34:38.846347Z -14b21f521725b3295c97ae5c1e6d2241 -2010-04-26T10:16:55.949827Z -72 -hernani - - - - - - - - - - - - - - - - - - - - - -838 - -style.css -file - - - - -2012-06-22T20:34:38.854343Z -bbc99335e049126c3e7099d1d60f1798 -2011-12-07T21:51:23.050166Z -1208 -jordan - - - - - - - - - - - - - - - - - - - - - -33286 - -auth.css -file - - - - -2012-06-22T20:34:38.854343Z -7805111423f96a468bcff1651cb8940a -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -1454 - diff --git a/forum/skins/default/media/style/.svn/text-base/admin.css.svn-base b/forum/skins/default/media/style/.svn/text-base/admin.css.svn-base deleted file mode 100644 index 51810b023b1db0f8b09450685ba61e8b9ff11d62..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/admin.css.svn-base +++ /dev/null @@ -1,63 +0,0 @@ -#admin_form { - border-spacing: 10px; -} - -#admin_form input[type="text"], #admin_form input[type="submit"], #admin_form textarea, .string_list_widget_button { - line-height: 22px; - font-size: 140%; - font-family: sans-serif; - border: 1px solid #999; - color: black; -} - -#admin_form input[type="text"], #admin_form input[type="submit"], .string_list_widget_button { - height: 28px; -} - -#admin_form input[type="text"], #admin_form textarea { - width: 550px; -} - -#admin_form th input[type="text"] { - text-align: left; - vertical-align: top; - width: 125px; - padding: 2px 3px; - font-size: 12px; - height: auto; - line-height: 100%; -} - -#admin_form th { - -} - -#admin_form td { - color: gray; -} - -#admin_page_description { - color: gray; - padding-bottom: 20px; -} - -.string_list_widget input[type=text] { - width: 520px; -} - -.string_list_widget_button { - width: 28px; - font-size: 20px; - font-weight: bold; -} - -.string_list_widget_button.add { - position: relative; - left: 554px; -} - -table caption { - font-size: 120%; - padding: 3px 0; - text-align: left; -} \ No newline at end of file diff --git a/forum/skins/default/media/style/.svn/text-base/auth.css.svn-base b/forum/skins/default/media/style/.svn/text-base/auth.css.svn-base deleted file mode 100644 index 0734ce02c0b524c01ecb34cdfe785b44599ed1b7..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/auth.css.svn-base +++ /dev/null @@ -1,84 +0,0 @@ -#bigicon_providers, #smallicon_providers { - display: block; - padding: 0px; - width:600px; - margin:0px 0px 5px 0px; - clear:both; -} - -.provider_logo { - display: block; - border: 1px solid #DDD; - text-align: center; -} - -.provider_logo.big { - display: block; - border:1px solid #DDDDDD; - float:left; - height:60px; - margin:3px; - width:110px; -} - -.provider_logo.big .inner { - display:block; - margin: 0px auto; - margin-top: 18px; -} - -.provider_logo.small { - border:1px solid #DDDDDD; - float:left; - height:30px; - margin:3px; - width:30px; -} - -.provider_logo.small .inner { - display:block; - margin: 0px auto; - margin-top: 6px; -} - -.provider_logo.selected { - outline: 2px solid #FFF8C6; -} - -.provider_logo .provider_url { - display: none; -} - -.signin_form { - clear:both; -} - -.signin_form fieldset { - padding: 10px; -} - -.signin_form input[type="text"], .signin_form input[type="password"], .signin_form input[type="submit"] { - height: 28px; - line-height: 22px; - font-size: 140%; - border: 1px solid #999; - padding-left:5px; - margin-right:5px; -} - -.signin_form input[type="text"], .signin_form input[type="password"] { - padding-top:4px; /* balance of alignment between firefox/safari and IE */ -} - -.signin_form .icon_input { - padding-left: 20px; -} - -.signin_form #openid_identifier { - padding-left: 18px; -} - -.or_label { - margin-top: 20px; - margin-bottom: 10px; -} diff --git a/forum/skins/default/media/style/.svn/text-base/default.css.svn-base b/forum/skins/default/media/style/.svn/text-base/default.css.svn-base deleted file mode 100644 index 0cfd336894fca4d5167cf188a4c82d12e380008f..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/default.css.svn-base +++ /dev/null @@ -1,1764 +0,0 @@ -/* -Document : default -Created on : Dec 9, 2008, 8:48:40 PM -Author : Mike -Description: -Style sheet for cnprog.com -All rights reserved. 2008 CNPROG.COM -*/ - -@import url(media/style/jquery.autocomplete.css); -@import url(media/style/openid.css); -@import url(media/style/prettify.css); - -html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, form, label, table, caption, tbody, tfoot, thead, tr, th, td -{ - margin: 0; - padding: 0; - border: 0; - font-size: 100%; - vertical-align: baseline; - background: transparent; -} -html, body { - height: 100%; - overflow: auto; -} -body{ - font-family: "segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif; - font-size: 80%; - - margin:0; - padding:0; - text-align:center; - line-height: 1; -} -.wrapper { - position: relative; - width: 100%; - height: 100%; - overflow: auto; -} -blockquote, q -{ - quotes: none; -} -blockquote:before, blockquote:after, q:before, q:after -{ - content: ''; - content: none; -} -table -{ - border-collapse: collapse; - border-spacing: 0; -} - -input, select, button, textarea -{ - border: 1px solid #999; - font-size:100%; - font-family:"segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif; -} - -input -{ - /* - margin: 5px 0px 5px 0px;*/ - padding:3px; - -} - -pre -{ - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size:100%; - margin-bottom: 10px; - overflow: auto; - width: 580px; - background-color: #F5F5F5; - padding-left:5px; - padding-top:5px; - padding-bottom: 20px !ie7; -} - -code{ - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size:100%; - -} - -blockquote -{ - margin-bottom: 10px; - margin-right: 15px; - padding: 10px 0px 1px 10px; - background-color: #F5F5F5; -} - -b, strong -{ - font-weight: bold; -} - -i, em -{ - font-style: italic; -} - -ul -{ - list-style: disc; - margin-left: 30px; - margin-bottom: 1em; -} - -p -{ - clear: both; - margin-bottom: 1em; -} - -ol -{ - list-style: decimal; - margin-left: 30px; - margin-bottom: 1em; -} - -a {color:#07c;text-decoration: none;} -a:visited{color:#3E6D8E;text-decoration: none;} -a:hover{text-decoration: underline;} -a:active{text-decoration: none;} - -h1 { - font-family:Trebuchet MS,Helvetica,sans-serif; - font-size: 160%; -} -h2 { - font-family:Trebuchet MS,Helvetica,sans-serif; - font-size:140%; - font-weight:bold; - margin-bottom:7px; -} -h3 {display:block;font-size:120%;font-family:Trebuchet MS,"segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif;font-weight:bold;} -h3 a:visited{ - color:#86B0E1; -} -h4 {display:block;font-size:90%; font-family:Verdana;color:#ccc;} - -#top{ - width:100%; - border-bottom:solid 3px #ccc; - background-color:#eee; - margin:0px; -} - -#container{ - margin: 0px auto; - width:950px; - display:block; - text-align: left; -} - -#header{ - width:100%; - padding:3px 0 10px 0; -} - -#header-links{ - -} - -#header-links a{ - color:darkred; - font-weight:400; - font-size:100%; - /*letter-spacing:1px;*/ - -} - -#header-links a:hover{ - text-decoration:none; -} - - -#content{ - margin-top:5px; -} - -#main{ - float:left; - width:670px; -} - -#container{ - width:950px; -} - -#main-bar{ - border-bottom: 1px solid #666; - height: 34px; - width: 100%; - clear:both; - margin-bottom:5px; -} - -#main-bar h3{ - float: left; - font-size: 140%; - font-weight:700; - /*letter-spacing:3px;*/ - margin-top:8px; - padding:5px 0 0 3px ; - height:20px; - width:200px; - color:#333; -} - -#question-title{ - float:left; - border-bottom: 1px solid #666; - width: 98%; - clear:both; - padding:13px 0px 5px 0; - margin-bottom:5px; - -} - -#question-title h3{ - font-size: 130%; - font-weight:bold; - line-height:25px; -} - -#question-title a{ - color:#333; -} - -#main-body{ - float:left; - width:100%; -} - -#main-bar .golden{ - background:url(../../images/bg_title_golden.gif) no-repeat; -} - -#main-bar .pink{ - background:url(../../images/bg_title_red.gif) no-repeat; -} - -#main-bar .orange{ - background:url(../../images/bg_title_orange.gif) no-repeat; -} - -#main-bar .green{ - background:url(../../images/bg_title_green.gif) no-repeat; -} - -#tab{ - float:right; - position:relative; - display:block; - font-weight:bold; -} - -#tab a -{ - background: #eee; - border: 1px solid #eee; - color: #777; - display: block; - float: left; - font-size: 90%; - height: 24px; - line-height: 22px; - margin: 8px 4px 0 0; - padding: 0 11px 0 11px; - text-decoration: none; -} - -#tab a:hover -{ - background: #fff; - border: 1px solid #777; - border-bottom-color: #fff; - line-height: 20px; - margin-top: 9px; -} - -#tab a.youarehere -{ - background: #fff; - color:#333; - border: 1px solid #777; - border-bottom-color: #fff; - font-size: 100%; - height: 30px; - line-height: 28px; - margin-top: 3px; - padding: 0px 11px 0px 11px; -} - -#sidebar{ - float:right; - width:260px; -} - -#footer{ - background:#777777 none repeat scroll 0 0; - border-top:7px solid #000000; - clear:both; - margin-top:30px; - overflow:hidden; - padding:15px; - text-align:center; -} - -#footer a -{ - color: White; -} - -#askform{ - padding:5px; - line-height:20px; -} -#askform .title-desc{ - color:#999; - font-size:90%; -} - -#askform #description{ - padding:20px 0 20px 0; -} - -#askform .submit{ - padding:5px 10px 5px 10px; - font-size:120%; - font-weight:bold; - width:120px; - /*letter-spacing:1px;*/ - background-color:#D4D0C8; -} -.notify -{ - position: fixed; - top: 0px; - left: 0px; - width: 100%; - z-index: 100; - padding: 7px 0 5px 0; - text-align: center; - font-size: 130%; - font-weight: Bold; - color: #444; - background-color: #F4A83D; -} - -.notify span -{ - float: left; - width: 95%; - text-align: center; -} - -.close-notify -{ - float: right; - margin-right: 20px; - color: #735005; - text-decoration: none; - background-color: #FAD163; - border: 2px #735005 solid; - padding-left: 3px; - padding-right: 3px; - cursor:pointer; -} -.small{ - font-size:90%; - color:#777; -} -.big{ - font-size:120%; - font-weight:600; - -} - -.paragraph{ - line-height:20px; - margin-bottom:10px; -} - -.paragraph-extra{ - line-height:30px; - margin-bottom:10px; -} - -.darkred{ - color:darkred; -} - -.yellowbg{ - background-color:yellow; -} - -.header-table{ - width:100%; - /*solve template header space problem*/ - margin-top:-12px; -} - -.header-table a{ - font-weight:bold; -} - -.link-separator{ - color:#ccc; - padding:3px; -} - -.action-link-separator{ - color:#ccc; -} - -.nav -{ - font-size: 120%; -} - -.nav ul -{ - margin: 0; -} - -.nav li -{ - background: #777; - display: block; - float: left; - margin-right: 7px; -} - -.nav li.youarehere -{ - background: #f90; -} - -.nav a -{ - color: #fff; - display: block; - font-weight: bold; - padding: 6px 15px 6px 15px; - text-decoration: none; -} - -.nav li.youarehere a -{ - color: white; -} - -.nav li:hover -{ - background-color:#ff9900; -} - -.header-notification{ - font-size:85%; - color:red; -} - -.highlight-box{ - /*letter-spacing:1px;*/ - color:#735005; -} - -.highlight-box p{ - margin:5px 0 0px 0; -} - -.highlight-box a{ - color:#735005; - font-size:90%; - font-weight:bold; -} - -.yellow-box{ - background-color:#FFFFCC; - border:1px dotted #D8D2A9; - margin-bottom:20px; - line-height:20px; - padding:10px 10px 5px; - -} - -.yellow-box ul{ - margin-left:0px; -} - -.yellow-box h3{ - font-size:120%; - padding-bottom:5px; - margin-bottom:10px; - border-bottom:1px dotted #D8D2A9; -} - -.gray-box{ - background-color:#eee; - border:1px dotted #D8D2A9; - margin-bottom:20px; - line-height:20px; - padding:10px 10px 5px; - overflow:hidden; -} - -.gray-box ul{ - margin-left:0px; -} - -.gray-box h3{ - font-size:120%; - padding-bottom:5px; - margin-bottom:10px; - border-bottom:1px dotted #D8D2A9; -} - -.question-item{ - width:100%; - float:left; - margin:5px 0 10px 0; - border-bottom:1px dotted #D8D2A9; -} - -.boxes{ - float:left; - text-align:center; - color:#666; -} - -.boxes-cell{ - padding-right:5px; - vertical-align:top; -} - -.questions-summary-container{ - float:left; - width:580px; - -} -.questions-boxes-container{ - float:left; -} -.questions-boxes{ - float:left; - width: 70px; - text-align:center; - color:#666; - -} -.questions-vote-number{ - font-size:200%; - font-weight:bold; - font-family:Arial; -} -.questions-answer-number{ - font-size:140%; - font-weight:bold; - font-family:Arial; -} -.questions-answerbox{ - padding:5px; -} - -.questions-votebox{ - padding:5px; -} -.questions-viewbox{ - padding:5px; -} -.qustions-summary{ - line-height:20px; - margin-bottom:5px; -} -.question-body{ - min-height:100px; -} -.question-body IMG{ - max-width:600px; -} -.questions-mark{ - float:right; - text-align:left; - font-size:90%; - - line-height:20px; - width:160px; -} - -.questions-boxicon{ - width:15px; - vertical-align:top; -} -.questions-count{ - font-family:arial; - font-size:350%; - font-weight:bolder; - margin:15px 0 15px 0; - color:#777; -} -#questions-answerbox-cell{ - padding:5px; - -} - -.vote{ - background-color:#eee; -} - -.box-number{ - font-size:160%; - font-weight:bold; - font-family:Arial; -} - -.box-unit{ - padding:3px; - font-size:90%; -} - -.answer{ - border-bottom:1px dotted #666666; - padding-bottom:20px; - padding-top:20px; - width: 100%; - margin-bottom:10px; -} -.answer-body{ - min-height:80px; -} - -.answer-body IMG{ - max-width:600px; -} - -.accepted-answer{ - background-color:#E2FCE2; - border-bottom-color:#9BD59B; -} - -.accepted-answer .comments-link{ - background-color:#D9F5D9; -} - -.accepted-answer .comments-container{ - background-color:#D9F5D9; -} - -.answered -{ - background: #75845C; - color: white; -} - -.answered-accepted -{ - background: #75845C; - color: #E1E818; -} - -.answered-by-owner -{ - background: #E0EAF1; -} - -.answered-by-owner .comments-link -{ - background-color:#D6E4EE; -} - -.answered-by-owner .comments-container -{ - background-color:#D6E4EE; -} - -.answered-accepted strong -{ - color: #E1E818; -} - -.unanswered -{ - background: #9A4444; - color: white; -} - -.view{ - -} - -.subtitle{ - padding:15px 0 10px 0; -} - -.qustion-title{ - font-size:100%; - padding:0px; - line-height:20px; - margin-bottom:5px; -} - -.question-tag{ - float:left; - padding-bottom:3px; - width:250px; -} - -.post-tag -{ - color: #3E6D8E; - background-color: #E0EAF1; - border-bottom: 1px solid #3E6D8E; - border-right: 1px solid #7F9FB6; - margin: 2px 3px 2px 0; - padding: 2px 4px 2px 4px; - text-decoration: none; - height:20px; - font-family:Microsoft Yahei,����,Tahoma; - font-size: 90%; - line-height: 2.2; - white-space:nowrap; - vertical-align:baseline; -} - -.post-tag:hover -{ - background-color: #3E6D8E; - color: #E0EAF1; - border-bottom: 1px solid #37607D; - border-right: 1px solid #37607D; - text-decoration: none; -} - -.highlight-tag{ - background-color: #3E6D8E; - color: #fff; - font-weight:bold; - border-bottom: 1px solid #3E6D8E; - border-right: 1px solid #7F9FB6; - margin: 2px 6px 2px 0; - padding: 3px 4px 3px 4px; - text-decoration: none; - font-size: 90%; -} - -.question-started{ - font-size:90%; - padding-top:10px; - float:right; - padding-bottom:3px; - -} - -.updatedtime{ - font-weight:bold; - color:#999; -} - -.badge -{ - color: #fff; - background-color: #333; - border: 1px solid #333; - margin: 0 3px 3px 0; - padding: 4px 8px 4px 3px; - color: white !important; - text-decoration: none; - line-height: 1.9; -} - -.badge:hover -{ - border: 1px solid #555; - background-color: #555; - text-decoration: none; -} - -.badge-item{ - margin-bottom:10px; -} - -.badge1 -{ - margin-left:3px; - padding-right:2px; - font-size: 120%; - color: #FFCC00; -} - -.badge2 -{ - margin-left:3px; - padding-right:2px; - font-size: 120%; - color: #C0C0C0; -} - -.badge3 -{ - margin-left:3px; - padding-right:2px; - font-size: 120%; - color: #CC9966; -} - -.badgecount -{ - color: #808185; -} - -.reputation-score{ - font-family:arial; - font-weight: bold; - color: #333; - font-size: 120%; - margin-right:2px; -} - -#recent-tags .post-tag -{ - background-color: #eee; - border: none; - margin: 0; - font-size: 100%; - color: black !important; -} - -#recent-tags .post-tag:hover -{ - background-color: #777; - color: White !important; - border: none; - margin: 0; - text-decoration: none; -} - -#related-tags{ - line-height:30px; -} - -.list-item{ - list-style:inside square - -} -.list-item li{ - margin-bottom:5px; -} - -.list-item dt{ - line-height:20px; -} - -.list-item dd{ - line-height:20px; - margin-bottom:10px; -} - -#editor{ - font-size:100%; - min-height:200px; - line-height: 18px; - width:595px; -} - -.wmd-preview{ - margin-top:10px; - padding:6px; - width:590px; - background-color:#F5F5F5; - min-height:20px; -} - -/*adjustment for editor preview*/ -.wmd-preview pre{ - background-color:#E7F1F8; - -} - -.wmd-preview blockquote -{ - background-color: #eee; -} - -.wmd-preview IMG{ - max-width:600px; -} -.preview-toggle{ - font-size:90%; - font-weight:600; - margin-bottom:-10px; - width:600px; - color:#aaa; - /*letter-spacing:1px;*/ - -} - -.preview-toggle span:hover{ - cursor:pointer; -} - -.edit-content-html{ - border-top:1px dotted #D8D2A9; - border-bottom:1px dotted #D8D2A9; - margin:5px 0 5px 0; -} - -/* 2 textarea resizer styles */ -div.grippie { - background:#EEEEEE url(../../images/grippie.png) no-repeat scroll center 2px; - border-color:#DDDDDD; - border-style:solid; - border-width:0pt 1px 1px; - cursor:s-resize; - height:9px; - overflow:hidden; - width:600px; -} -.resizable-textarea textarea { - display:block; - margin-bottom:0pt; - width:95%; - height: 20%; -} - -.openid-input{ - background:url(../../images/openid.gif) no-repeat; - padding-left:15px; - cursor:pointer; -} - -.openid-login-input{ - background-position:center left; - background:url(../../images/openid.gif) no-repeat 0% 50%; - padding:5px 5px 5px 15px; - cursor:pointer; - font-family:Trebuchet MS; - font-weight:300; - font-size:150%; - width:500px; -} - -.openid-login-submit{ - padding:6px; - /*padding:4px;*/ - cursor:pointer; - font-weight:bold; - font-size:120%; - background-color:#D4D0C8; -} - -.openid-samples{ - -} - -.openid-samples .list, .list li{ - font-family:Trebuchet MS,"segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif; - list-style:none !important; - margin-left:-30px !important; - line-height:20px !important; -} - -.darkred{ - color:darkred; -} - -.gray{ - color:gray; -} - -.message{ - padding:5px; - font-weight:bold; - background-color:#eee; - margin:10px 0 10px 0; -} - -.warning{ - color:red; -} - -.vote-buttons{ - float:left; - text-align:center; - border:solid 0px #ccc; -} - -.vote-buttons img{ - cursor:pointer; -} - -.item-right{ - float:left; -} - -.vote-number{ - font-family:Arial; - padding:0px 0 3px 0; - font-size:220%; - font-weight:bold; - color:#777; -} -.favorite-number{ - font-size:100%; - font-family:Arial; - margin-top:-8px; - font-weight:bold; - color:#808185 -} - -.my-favorite-number{ - color:#D4A849; -} - -.tag-number{ - font-size:120%; - font-family:Arial; - font-weight:bold; -} - -#question-tags{ - margin:5px 0 5px 0; -} - -.question-tag-extra{ - float:left; - padding-bottom:3px; - width:100%; -} - -.question-mark{ - background-color:#E0EAF1; - text-align:left; - font-size:90%; - padding:5px; - overflow:hidden; -} - -.question-edit{ - text-align:left; - font-size:90%; - - overflow:hidden; -} - -.question-status{ - margin-top:10px; - padding: 20px; - background-color:#eee; - text-align:center; -} - -.answer-mark{ - text-align:left; - font-size:90%; - padding:5px; -} - -.wiki-category{ - margin-left:5px; - color:#999; - font-size:90%; -} - -.offensive-flag a{ - color:#777; - font-size:90%; - padding:3px; - cursor:pointer; -} - -.offensive-flag a:hover{ - background-color:#777; - text-decoration:none; - color:#fff; -} - -.linksopt a{ - color:#777; - font-size:90%; - padding:3px; - cursor:pointer; -} - -.linksopt a:hover{ - background-color:#777; - text-decoration:none; - color:#fff; -} - -.action-link a{ - color:#777; - font-size:90%; - padding:3px; - cursor:pointer; -} - -.action-link a:hover{ - background-color:#777; - text-decoration:none; - color:#fff; -} - -.dot-line{ - border-bottom:1px dotted #D8D2A9; - width:670px; /*IE*/ - /* - width:100% !important; - */ - margin-bottom:20px; -} - -.line{ - border-bottom:1px solid #777; - width:650px; /*IE*/ - /* - width:100% !important; - */ - margin-bottom:20px -} - -.taglist-td{ - width:190px; - line-height:26px; -} - -.list-table{ - margin-left:15px; -} - -.list-td{ - width:185px; - -} - -.submit{ - cursor:pointer; - #padding-bottom:0px; - #padding-top:0px - background-color:#D4D0C8; -} - -form .error{ - color:darkred; -} - -form .errorlist li{ - color: red; -} - -.vote-notification -{ - z-index: 1; - cursor: pointer; - display: none; - position: absolute; - padding: 15px; - color: White; - background-color: #AE0000; -} - -.vote-notification a -{ - color: White; - text-decoration:underline; -} - -.center-container{ - width:950px; -} - -#revisions{ - width:950px; -} - -.revision{ - margin:10px 0 10px 0; - width:100%; -} - -.revision .header{ - background-color:#eee; - padding:5px; - cursor:pointer; -} - -.revision .author{ - background-color:#E0EAF1; -} - -.revision .summary{ - padding: 5px 0 10px 0; -} - -.revision .summary span{ - /**background-color:yellow;/**/ - display:inline; -} -.revision h1{ - font-size:130%; - font-weight:600; - padding:15px 0 15px 0; -} - -.revision-mark{ - width:200px; - text-align:left; - font-size:90%; - overflow:hidden; -} - -.revision-number{ - font-size:300%; - font-weight:bold; - font-family:arial; -} - -.revision .body{ - padding-left:10px; - margin-bottom:50px; -} -.revision .answerbody{ - padding:10px 0 5px 10px; -} - -/* Revision pages */ -del { color: #FF5F5F; } -del .post-tag{ -color: #FF5F5F; -}; -ins { background-color: #97ff97;} -ins .post-tag{ -background-color: #97ff97; -}; - -/** PAGINATOR **/ -.paginator { - padding:5px 0 10px 0; - font:normal .8em arial; -} - -.paginator .prev-na, -.paginator .next-na { - padding:.3em; - font:bold .875em arial; -} - -.paginator .prev-na, -.paginator .next-na { - border:1px solid #ccc; - background-color:#f9f9f9; - color:#aaa; - font-weight:normal; -} - -.paginator .prev a, .paginator .prev a:visited, -.paginator .next a, .paginator .next a:visited { - border:1px solid #fff; - background-color:#fff; - color:#777; - padding:.3em; - font:bold 100% arial; -} - -.paginator .prev, .paginator .prev-na { margin-right:.5em; } -.paginator .next, .paginator .next-na { margin-left:.5em; } - -.paginator .page a, .paginator .page a:visited, .paginator .curr { - padding:.25em; - font:normal .875em verdana; - border:1px solid #ccc; - background-color:#fff; - margin:0em .25em; - color:#777; -} - -.paginator .curr { - background-color:#777; - color:#fff; - border:1px solid #777; - font-weight:bold; - font-size:1em; -} - -.paginator .page a:hover, -.paginator .curr a:hover, -.paginator .prev a:hover, -.paginator .next a:hover { - color:#fff; - background-color:#777; - border:1px solid #777; - text-decoration:none; -} - -.paginator .text{ - color:#777; - padding:.3em; - font:bold 100% arial; -} - -.paginator-container{ - float:right; - padding:10px 0 10px 0; -} - -.paginator-container-left{ - padding:5px 0 10px 0; -} - -.user-info { - clear:both; - height:45px; -} - -.user-info .user-action-time { - margin-bottom:4px; - margin-top:2px; -} - -.user-info .user-details { - float:left; - margin-left:5px; - overflow:hidden; - white-space:nowrap; - width:138px; -} -.user-details { - color:#888888; - line-height:17px; -} - -table.user-details td { - color:Black; - padding:4px 0; -} - -.user-info .user-gravatar32 { - float:left; - width:32px; -} - -#mainbar-full { - width:950px; -} - -#subheader { - border-bottom:1px solid #666666; - clear:both; - height:34px; - width:100%; -} - -#tabs { - float:right; - font-weight:bold; - position:relative; -} - -.summaryinfo { - color:#808185; - text-align:center; -} - -.summarycount { - font-family:arial; - color:#808185; - font-size:350%; - font-weight:bold; - text-align:center; -} -.summarysubcount { - font-family:arial; - color:#808185; - font-size:250%; - font-weight:bold; - text-align:center; -} - - -#user-about-me { - background-color:#EEEEEE; - height:200px; - line-height:20px; - margin:10px; - overflow:auto; - padding:10px; - width:90%; -} - -.favorites-count-off { - color:#919191; - float:left; - margin-top:13px; - text-align:center; -} - -.favorites-count { - color:#D4A849; - float:left; - margin-top:13px; - text-align:center; -} - -.question-summary { - border-bottom:1px dotted #999999; - float:left; - overflow:hidden; - padding:11px 0; - width:670px; -} - -.user-stats-table .question-summary { - width:800px; -} - -.narrow .stats { - background:transparent none repeat scroll 0 0; - float:left; - height:48px; - margin:0 0 0 7px; - padding:0; - width:auto; -} - -.narrow .votes { - background:#EEEEEE none repeat scroll 0 0; - float:left; - height:38px; - margin:0 3px 0 0; - padding:5px; - width:38px; -} - -.narrow .views { - float:left; - height:38px; - margin:0 7px 0 0; - padding:5px 0 5px 4px; - width:40px; -} - -.narrow .status { - float:left; - height:38px; - margin:0 3px 0 0; - padding:5px; - width:48px; -} - -.narrow .vote-count-post { - font-size:100%; - margin:0; -} - -div.votebox { - text-align:center; - vertical-align:middle; -} - -div.votebox span { - color:#808185; - display:block; - font-weight:bold; -} -.vote-count-post { - display:block; - font-size:240%; -} - -.answered-accepted { - background:#75845C none repeat scroll 0 0; - color:#E1E818; -} - -.status { - margin-top:-3px; - padding:4px 0; - text-align:center; -} - -.views { - color:#999999; - padding-top:4px; - text-align:center; -} - -.user-stats-table .summary { - width:600px; - line-height:22px; -} - -.user-stats-table .summary h3{ - margin:0px; - padding:0px; -} - -div.tags { - float:left; - line-height:18px; -} - -div.started { - color:#999999; - float:right; - line-height:18px; - width:185px; -} - -.narrow div.started { - line-height:inherit; - padding-top:4px; - white-space:nowrap; - width:auto; -} - -.relativetime { - font-weight:bold; - text-decoration:none; -} - -div.started a { - font-weight:bold; -} - -div.started .reputation-score { - margin-left:1px; -} - -.answer-summary { - clear:both; - padding:3px; -} - -.answer-votes { - background-color:#EEEEEE; - color:#555555; - float:left; - font-size:110%; - font-weight:bold; - height:15px; - padding:4px 4px 5px; - text-align:center; - text-decoration:none; - width:20px; -} - -.answered-accepted { - background:#75845C none repeat scroll 0 0; - color:#E1E818; -} - -.answer-link { - color:#555555; - float:left; - margin-top:5px; - padding-left:10px; - width:700px; -} - -.answer-link a { - font-weight:bold; -} - -.deleted{ - background:#F4E7E7 none repeat scroll 0 0; -} - -#mainbar-footer { - clear:both; - width:100%; -} - -#feed-link { - float:right; - text-align:right; -} - -#feed-link-image { - float:left; - margin-left:12px; - margin-right:5px; -} - -#feed-link-text { - float:left; -} - -.revision-comment { - background-color:#FFFE9B; - color:#333333; - line-height:1.4; - padding:3px; -} - -.accept-answer-link { - color:#508850 !important; - font-weight:bold; -} - -.accept-answer-link:hover { - background-color:#508850 !important; - color:#E1E818 !important; - text-decoration:none; -} - -div.comments { - line-height:150%; - padding:10px 0; -} - -div.post-comments{ - width:585px; - clear:both; - float:left; -} - -form.post-comments textarea { - height:6em; - margin-bottom:4px; -} - -form.post-comments input { - margin-left:10px; - margin-top:1px; - vertical-align:top; - width:100px; -} - -span.text-counter { - margin-right:20px; -} - -span.form-error { - color:#990000; - font-size:90%; - font-weight:normal; - margin-left:5px; -} - -div.comments-container, div.comments-container-accepted, div.comments-container-owner, div.comments-container-deleted { - display:none; - margin-top:-1px; - padding:0 5px 5px; -} - -div.comments-container, a.comments-link { - background-color:#EEEEEE; -} - -.post-comments a { - color:#888888; - padding:0 3px 2px; - font-size:90%; -} - -a.comments-link, a.comments-link-accepted, a.comments-link-owner, a.comments-link-deleted { - color:black; - padding:2px; - cursor:pointer; -} - -.post-comments a:hover { - background-color:#777777; - color:white; - text-decoration:none; -} - -a.comment-user, a.comment-user:hover { - background-color:inherit; - color:#0077CC; - padding:0; -} - -a.comment-user:hover { - text-decoration:underline; -} - -.user-action{ - -} -.user-action-1{ - font-weight:bold; - color:#333; -} -.user-action-2{ - font-weight:bold; - color:#75845C; -} -.user-action-3{ - color:#333; -} -.user-action-4{ - color:#333; -} -.user-action-5{ - color:darkred; -} -.user-action-6{ - color:darkred; -} -.user-action-7{ - color:#333; -} -.user-action-8{ - padding:3px; - font-weight:bold; - background-color:#75845C; - color:#E1E818; -} - -.revision-summary{ - /**background-color:#FFFE9B;/**/ - padding:2px; -} -.question-title-link a{ - font-weight:bold; - color:#0077CC; -} -.answer-title-link a{ - color:#333; -} - -.post-type-1 a { - font-weight:bold; - color:#0077CC; -} -.post-type-3 a { - font-weight:bold; - color:#0077CC; -} -.post-type-5 a { - font-weight:bold; - color:#0077CC; -} -.post-type-2 a{ - color:#333; -} -.post-type-4 a{ - color:#333; -} -.post-type-6 a{ - color:#333; -} -.post-type-8 a{ - color:#333; -} - -/* openid styles */ -.form-row{line-height:25px;} -.submit-row{line-height:30px;padding-top:10px;} -.errors{line-height:20px;color:red;} -.error{color:red;} -.error-list li{padding:5px;} -.login{margin-bottom:10px;} -.fieldset{border:solid 1px #777;margin-top:10px;padding:10px;} diff --git a/forum/skins/default/media/style/.svn/text-base/djstyle_admin.css.svn-base b/forum/skins/default/media/style/.svn/text-base/djstyle_admin.css.svn-base deleted file mode 100644 index 0ccd4ab237dd887d905e408f85df2cd2a44b099f..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/djstyle_admin.css.svn-base +++ /dev/null @@ -1,63 +0,0 @@ -@import "jquery.autocomplete.css"; - -textarea { - width: 100%; -} - -input.longstring { - width: 100%; -} - -#admin_form tr th { - white-space: nowrap; -} - -#admin_form tr th a { - font-size: 80%; -} - -#admin_form tr th .sep { - font-size: 80%; - margin-left: 6px; - margin-right: 6px; -} - -#admin_form tr td:first-of-type { - width: 100%; -} - -.string-list-input { - vertical-align: middle; -} - -.string-list-input input { - width: 600px; - margin: 0px; -} - -.string_list_widget_button { - background:url("../img/admin/nav-bg.gif") repeat-x scroll center bottom #dcdcdc; - border-color:#DDDDDD #AAAAAA #AAAAAA #DDDDDD; - border-style:solid; - border-width:1px; - color:black; - height: 20px; - width: 20px; -} - -.string_list_widget_button.add { - position: relative; - left: 612px; -} - -.admin_message { - background-color: #ffffe0; - border: 3px double #b8860b; - padding: 4px; -} - -.ajax_indicator { - background: transparent url('../images/indicator.gif') top left no-repeat; - padding: 7px 25px; - min-height: 24px; -} \ No newline at end of file diff --git a/forum/skins/default/media/style/.svn/text-base/jquery.autocomplete.css.svn-base b/forum/skins/default/media/style/.svn/text-base/jquery.autocomplete.css.svn-base deleted file mode 100644 index b8193939cacd88537188bcb9905f3f7c37619fe4..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/jquery.autocomplete.css.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -.ac_results { - padding: 0px; - border: 1px solid black; - background-color: white; - overflow: hidden; - z-index: 99999; - text-align:left; -} - -.ac_results ul { - width: 100%; - list-style-position: outside; - list-style: none; - padding: 0; - margin: 0; -} - -.ac_results li { - margin: 0px; - padding: 2px 5px; - cursor: default; - display: block; - /* - if width will be 100% horizontal scrollbar will apear - when scroll mode will be used - */ - /*width: 100%;*/ - font: menu; - font-size: 12px; - /* - it is very important, if line-height not setted or setted - in relative units scroll will be broken in firefox - */ - line-height: 16px; - overflow: hidden; -} - -.ac_loading { - background: white url(../../media/images/indicator.gif) right center no-repeat; -} - -.ac_odd { - background-color: #E7F1F8; -} - -.ac_over { - background-color: #0A246A; - color: white; -} diff --git a/forum/skins/default/media/style/.svn/text-base/markdown_help.css.svn-base b/forum/skins/default/media/style/.svn/text-base/markdown_help.css.svn-base deleted file mode 100644 index 13bc94a8724e84d03bea3e2eff62a43eb11fa366..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/markdown_help.css.svn-base +++ /dev/null @@ -1,45 +0,0 @@ -div.main-wrapper { - /* - margin: 30px auto; - overflow:hidden; - position:relative; - */ -} - -div.section { - padding-top:30px; -} - -h2.section-title { - padding-top:10px; - padding-left:10px; - width:100%; - background-color:#b6c4e2; -} - -div.section-description { - padding-top:20px; - padding-bottom:10px; -} - -table.section-example { - padding-top:5px; - padding-bottom:10px; - width:100%; -} - -table.section-example tr { -} - -table.section-example tr td { - background-color:#e5ebf8; - - padding:5px 5px 5px 5px; - width:50%; - - text-align:left; - - border: 1px solid #ccc; - -moz-border-radius:5px; - -webkit-border-radius:5px; -} diff --git a/forum/skins/default/media/style/.svn/text-base/openid.css.svn-base b/forum/skins/default/media/style/.svn/text-base/openid.css.svn-base deleted file mode 100644 index 0d201df2f4e1c6470218d4502075ecaa8b306725..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/openid.css.svn-base +++ /dev/null @@ -1,45 +0,0 @@ -#openid_form { - width: 470px; -} - #openid_form legend { - font-weight: bold; - } -#openid_choice { - display: none; -} -#openid_input_area { - clear: both; - padding: 10px; -} -#openid_btns, #openid_btns br { - clear: both; -} - #openid_highlight { - padding: 3px; - background-color: #FFFCC9; - float: left; - } - .openid_large_btn { - width: 100px; - height: 60px; - border: 1px solid #DDD; - margin: 3px; - float: left; - } - .openid_small_btn { - width: 24px; - height: 24px; - border: 1px solid #DDD; - margin: 3px; - float: left; - } - a.openid_large_btn:focus { - outline: none; - } - a.openid_large_btn:focus - { - -moz-outline-style: none; - } - .openid_selected { - border: 4px solid #DDD; - } diff --git a/forum/skins/default/media/style/.svn/text-base/prettify.css.svn-base b/forum/skins/default/media/style/.svn/text-base/prettify.css.svn-base deleted file mode 100644 index 10a37577c71edf6c398b1577e61266b20de1e4c4..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/prettify.css.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -/* Pretty printing styles. Used with prettify.js. */ - -.str { color: #080; } -.kwd { color: #008; } -.com { color: #800; } -.typ { color: #606; } -.lit { color: #066; } -.pun { color: #660; } -.pln { color: #000; } -.tag { color: #008; } -.atn { color: #606; } -.atv { color: #080; } -.dec { color: #606; } -pre.prettyprint { padding: 3px; border: 0px solid #888; } - -@media print { - .str { color: #060; } - .kwd { color: #006; font-weight: bold; } - .com { color: #600; font-style: italic; } - .typ { color: #404; font-weight: bold; } - .lit { color: #044; } - .pun { color: #440; } - .pln { color: #000; } - .tag { color: #006; font-weight: bold; } - .atn { color: #404; } - .atv { color: #060; } -} diff --git a/forum/skins/default/media/style/.svn/text-base/style.css.svn-base b/forum/skins/default/media/style/.svn/text-base/style.css.svn-base deleted file mode 100644 index 883c8913928b8de54eaa81e923d7669f49ddbabc..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/style.css.svn-base +++ /dev/null @@ -1,1946 +0,0 @@ -@import "jquery.autocomplete.css"; - -body { - /*overflow-y: scroll; - height: 100%; */ - background: none repeat scroll 0 0 #FFFFFF; - color: #000000; - font-family: sans-serif; - font-size: 12px; - line-height: 150%; - margin: 0; - padding: 0; -} - -div { - margin: 0 auto; - padding: 0; -} - -h1, h2, h3, ul, li, form, img, p { - border: medium none; - margin: 0; - padding: 0; -} - -label { - vertical-align: middle; -} - -.login label { - display: block; -} - -.login .form-row-vertical { - margin-bottom: 8px; -} - -hr { - border-color: #CCCCCE -moz-use-text-color -moz-use-text-color; - border-right: medium none; - border-style: dashed none none; - border-width: 1px medium medium; -} - -input, select { - font-family: Trebuchet MS, "segoe ui", Helvetica, "Microsoft YaHei", Tahoma, Verdana, MingLiu, PMingLiu, Arial, sans-serif; - vertical-align: middle; -} - -p { - font-size: 13px; - line-height: 140%; - margin-bottom: 13px; -} - -a { - color: #3060A8; - text-decoration: none; -} - -.clear { - clear: both; - width: 0px; - height: 0px; -} - -.badges a { - color: #763333; - text-decoration: underline; -} - -a:hover { - text-decoration: underline; -} - -.tright { - text-align: right; -} - -.spacer3 { - clear: both; - height: 30px; - line-height: 30px; - visibility: hidden; -} - -h1 { - font-size: 160%; - padding: 5px 0; - line-height: 110%; - overflow: hidden; -} - -h2 { - font-size: 140%; - padding: 3px 0; - line-height: 110%; -} - -h3 { - font-size: 120%; - padding: 3px 0; - line-height: 110%; -} - -ul { - list-style: disc outside none; - margin-bottom: 1em; - margin-left: 20px; - padding-left: 0; -} - -ol { - list-style: decimal outside none; - margin-bottom: 1em; - margin-left: 30px; - padding-left: 0; -} - -td ul { - vertical-align: middle; -} - -li input { - margin: 3px 3px 4px; -} - -pre { - background-color: #F5F5F5; - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size: 90%; - margin-bottom: 10px; - overflow: auto; - padding-left: 5px; - padding-top: 5px; - width: 580px; - white-space: pre-wrap; -} - -code { - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size: 90%; - white-space: pre-wrap; -} - -blockquote { - background-color: #F5F5F5; - margin-bottom: 10px; - margin-right: 15px; - padding: 10px 0 1px 10px; - max-width: 650px; -} - -blockquote blockquote { - margin: 0; - padding: 0; -} - -#wrapper, #announcement { - margin: auto; - padding: 0; - width: 990px; - background-color: #FFF; -} - -#roof { - width: 990px; -} - -#room { - background-color: #FFFFFF; - border-bottom: 1px solid #777777; - padding: 10px 0; -} - -#CALeft { - float: left; - position: relative; - width: 740px; -} - -#CARight { - float: right; - width: 240px; -} - -#CAFull { - float: left; - padding: 0 5px; - width: 950px; -} - -#ground { - background: none repeat scroll 0 0 #BDCCED; - border-top: 1px solid #000000; - padding-bottom: 0; - padding-top: 6px; - text-align: center; - width: 990px; -} - -#top { - float: right; - padding: 3px; - text-align: right; - width: 500px; -} - -#top a { - color: #333333; - font-size: 12px; - height: 35px; - margin-left: 20px; - text-align: right; - text-decoration: underline; -} - -#logo { - float: left; - padding: 5px 0 0; -} - -#nav { - float: right; - margin: 35px 0px 0px 0px; - width: 750px; -} - -#nav a { - background-color: #E5EBF8; - border-color: #888888 #888888 -moz-use-text-color; - border-style: solid solid none; - border-width: 1px 1px medium; - color: #333333; - display: block; - float: left; - font-size: 14px; - font-weight: 400; - height: 25px; - line-height: 30px; - margin-left: 10px; - padding: 0 12px 3px; - text-decoration: none; -} - -#nav a:hover { - text-decoration: underline; -} - -#nav a.on { - background: none repeat scroll 0 0 #356FCB; - border: 1px solid #356FCB; - color: #FFFFFF; - font-weight: 600; - height: 24px; - line-height: 28px; - text-decoration: none; -} - -#nav a#nav_ask { - float: right; - color: #B02B2C; - font-size: 14px; - font-weight: bold; - text-decoration: none; -} - -#nav a#nav_ask:hover { - text-decoration: underline; -} - -#nav a#nav_ask.on { - color: #FFFFFF; -} - -#searchBar { - text-align: center; - background-color: #B6C4E2; - border-color: #EEEEEC #A9ACA5 #BABDB6 #EEEEEC; - border-style: solid; - border-width: 1px; - padding: 4px 0 0; - width: 988px; -} - -#searchBar .content { -} - -#searchBar .searchInput { - border: 0px; - padding: 3px; - font-size: 13px; - height: 18px; - width: 400px; -} - -#searchBar .searchBtn { - font-size: 14px; - height: 26px; - width: 80px; -} - -#searchBar .options { - color: #333333; - font-size: 120%; - padding: 3px 0; -} - -#searchBar .options input { - margin: 0 3px 0 15px; -} - -#searchBar .options input:hover { - cursor: pointer; -} - -#listA { - background-color: #FFFFFF; - float: left; - padding: 0 0; - width: 100%; -} - -.thousand { - color: orange; -} - -.short-summary { - border-top: 1px dotted #CCCCCE; - float: left; - overflow: hidden; - padding: 3px 0px 5px 0; - position: relative; - width: 740px; -} - -#listA .short-summary:first-of-type { - border-top: 0; -} - -.user-stats-table .short-summary { - width: 764px; -} - -.short-summary h2 a { - color: #2A5594; - font-family: "Trebuchet MS", "segoe ui", arial, sans-serif; - font-size: 17px; -} - -.short-summary .userinfo { - color: #666666; - float: right; - margin-top: 8px; -} - -.userinfo a, a.userinfo { - color: #3060A8; -} - -.short-summary .counts { - float: left; - margin-right: 0px; - margin-top: 4px; - padding-right: 2px; -} - -.short-summary .counts .item-count { - font-size: 17px; - font-weight: bold; -} - -.short-summary .question-summary-wrapper { - float: right; - width: 565px; -} - -.short-summary .votes, .short-summary .status, .short-summary .views { - -moz-border-radius: 5px 5px 5px 5px; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - float: left; - font-size: 11px; - height: 42px; - margin: 0 6px 0 0px; - padding: 8px 2px 0; - text-align: center; - width: 46px; -} - -.short-summary .votes, .short-summary .views { - color: #666666; -} - -.short-summary .favorites { - width: 24px; - float: left; - text-align: center; -} - -#question-table { - margin-bottom: 10px; -} - -.questions-count { - color: #A40000; - font-family: sans-serif; - font-size: 24px; - font-weight: 600; - margin-top: 3px; - margin-right: 5px; - padding: 0 0 5px 0; -} - -.boxA { - background: none repeat scroll 0 0 #888A85; - margin-bottom: 8px; - padding: 6px; -} - -.boxA h3 { - color: #FFFFFF; - font-size: 13px; - font-weight: 800; - margin: 0 0 4px; - padding: 0; -} - -.boxA .body { - background: none repeat scroll 0 0 #FFFFFF; - border: 1px solid #999999; - font-size: 13px; - padding: 8px; -} - -.boxA .more { - font-weight: 800; - padding: 2px; - text-align: right; -} - -.boxC { - background: none repeat scroll 0 0 #E5EBF8; - border-color: #EEEEEC #A9ACA5 #BABDB6 #EEEEEC; - border-style: solid; - border-width: 1px; - margin-bottom: 8px; - padding: 10px; -} - -.boxC p { - margin-bottom: 8px; -} - -.boxC p.nomargin { - margin: 0; -} - -.boxC p.info-box-follow-up-links { - margin: 0; - text-align: right; -} - -.pager { - float: left; - margin-bottom: 16px; - margin-top: 10px; -} - -.pagesize { - float: right; - margin-bottom: 16px; - margin-top: 10px; -} - -.paginator { - font: 12px sans-serif; - padding: 5px 0 10px; -} - -.paginator .prev a, .paginator .prev a:visited, .paginator .next a, .paginator .next a:visited { - background-color: #FFFFFF; - border: 1px solid #FFFFFF; - color: #777777; - font: bold 100% sans-serif; - padding: 2px 4px 3px; -} - -.paginator .prev { - margin-right: 0.5em; -} - -.paginator .next { - margin-left: 0.5em; -} - -.paginator .page, .paginator .page a:visited, .paginator .curr { - background-color: #FFFFFF; - border: 1px solid #CCCCCC; - color: #777777; - font: 0.875em verdana; - margin: 0 0.25em; - padding: 0.25em; -} - -.paginator .curr { - background-color: #777777; - border: 1px solid #777777; - color: #FFFFFF; - font-weight: bold; -} - -.paginator .page:hover, .paginator .prev a:hover, .paginator .next a:hover { - background-color: #777777; - border: 1px solid #777777; - color: #FFFFFF; - text-decoration: none; -} - -.paginator .text { - color: #777777; - font: bold 100% sans-serif; - padding: 0.3em; -} - -.paginator-container-left { - padding: 5px 0 10px; -} - -.tags { - display: block; - font-family: sans-serif; - line-height: 200%; - margin-top: 5px; -} - -.tags a, span.tag { - background-color: #EEEEEE; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - color: #777777; - font-size: 11px; - font-weight: normal; - padding: 1px 8px; - text-decoration: none; - white-space: nowrap; -} - -.tags a:hover { - background-color: #356FCB; - color: #FFFFFF; -} - -.tag-number { - font-family: sans-serif; - font-weight: 700; -} - -.marked-tags { - margin-bottom: 5px; - margin-top: 0; -} - -.medal { - background: none repeat scroll 0 0 #FFFFCD; - border-color: #EEEEEE #CCCCCC #CCCCCC #EEEEEE; - border-left: 1px solid #EEEEEE; - border-style: solid; - border-width: 1px; - color: #333333; - font-size: 14px; - font-weight: bold; - line-height: 250%; - padding: 4px 12px 4px 6px; -} - -a.medal { - text-decoration: none; - color: #333333; -} - -a.medal:hover { - background: url("../images/medala_on.gif") no-repeat scroll 0 0 transparent; - border-color: #E7E296 #D1CA3D #D1CA3D #E7E296; - border-left: 1px solid #E7E296; - border-style: solid; - border-width: 1px; - color: #333333; - text-decoration: none; -} - -.tabBar { - background-color: #FFFFFF; - border-bottom: 1px solid white; - clear: both; - height: 30px; - margin-bottom: 3px; - width: 100%; -} - -.tabsA { - background-color: #FFFFFF; - display: block; - float: right; - font-weight: bold; - height: 20px; - position: relative; -} - -.tabsA a, .sticky-sort-tabs { - background: none repeat scroll 0 0 #EEEEEE; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - color: #888A85; - display: block; - float: left; - height: 20px; - line-height: 22px; - margin: 5px 4px 0 0; - text-decoration: none; -} - -.tabsA a { - padding: 0 11px; -} - -.sticky-sort-tabs { - width: 20px; - padding: 0; -} - -.sticky-sort-tabs input { - border: 0; - height: 14px; - width: 14px; - margin: 2px; -} - -.tabsA a.on, .tabsA a:hover { - background: none repeat scroll 0 0 #FFFFFF; - color: #A40000; -} - -.tabsA a:hover { - background: none repeat scroll 0 0 #356FCB; - color: #FFFFFF; -} - -.headlineA { - border-bottom: 1px solid #777777; - font-size: 13px; - font-weight: 800; - height: 30px; - margin-bottom: 12px; - padding-bottom: 2px; - text-align: right; -} - -.headQuestions { - background: url("../images/dot-list.gif") no-repeat scroll left center transparent; - border-bottom: 0 solid #777777; - float: left; - font-size: 15px; - font-weight: 700; - height: 23px; - line-height: 23px; - margin: 5px 0 0 5px; - padding: 0 6px 0 15px; -} - -.headUsers { - background: url("../images/dot-list.gif") no-repeat scroll left center transparent; - border-bottom: 0 solid #777777; - float: left; - font-size: 15px; - font-weight: 700; - height: 23px; - line-height: 23px; - margin: 5px 0 0 5px; - padding: 0 6px 0 15px; -} - -.headMedals { - background: url("../images/dot-list.gif") no-repeat scroll left center transparent; - border-bottom: 0 solid #777777; - float: left; - font-size: 15px; - font-weight: 700; - height: 23px; - line-height: 23px; - margin: 5px 0 0 5px; - padding: 0 6px 0 15px; -} - -.headNormal { - border-bottom: 1px solid #777777; - font-size: 15px; - font-weight: bold; - margin-bottom: 12px; - padding: 3px; - text-align: left; -} - -.headUser { - border-bottom: 1px solid #777777; - font-size: 20px; - font-weight: 800; - margin-bottom: 12px; - padding: 5px; - text-align: left; -} - -.questions-related { - font-weight: 700; - word-wrap: break-word; -} - -.questions-related p { - font-size: 100%; - line-height: 20px; - margin-bottom: 10px; -} - -.question-body { - font-size: 13px; - line-height: 20px; - min-height: 100px; -} - -.question-body img { - max-width: 640px; -} - -.vote-buttons { - float: left; - text-align: center; -} - -span.form-error { - color: #990000; - font-weight: normal; - margin-left: 5px; -} - -ul.errorlist li { - color: #990000; - font-weight: normal; - margin-left: 0px; - margin-top: 5px; -} - -.answer { - border-bottom: 1px solid #CCCCCE; - padding-top: 10px; - width: 100%; -} - -.answer-body { - font-size: 13px; - line-height: 20px; - min-height: 80px; - margin: 0 0 20px 0; -} - -.answer-body img { - max-width: 640px; -} - -/* Fixes OSQA-143 IE8 text overflow issue */ -div.question-body p, div.answer-body p { - max-width: 700px; -} - -.answered-by-owner { - background: none repeat scroll 0 0 #E9E9FF; -} - -.accepted-answer { - background-color: #EBFFE6; - border-bottom-color: #9BD59B; -} - -.answered { - background: none repeat scroll 0 0 #E5EBF8; - color: #314362; -} - -.answered-accepted, .answer-votes.answered-accepted { - background: none repeat scroll 0 0 #E6F8DD; - color: #3A6231; -} - -.unanswered { - background: none repeat scroll 0 0 #F3E3E1; - color: #6B2B28; -} - -.focusedAnswer { - background: #FFFFCC; -} - -.tagsList { - list-style-type: none; - margin: 0; - min-height: 360px; - padding: 0; -} - -.tagsList li { - float: left; - width: 235px; -} - -.badge-list { - list-style-type: none; - margin: 0; -} - -.badge-list a { - color: #3060A8; -} - -.badge-list a.medal { - color: #333333; -} - -#medalList .badgeListDescription { - float: left; - margin-top: 8px; - max-width: 60%; -} - -#medalList .badgeListItem { - float: left; - width: 32%; -} - -#medalList .intoMyBadges span { - font-size: 175%; - padding-right: 5px; - color: #5B9058; -} -#medalList .intoMyBadges { - float: left; - min-width: 5%; - text-align: right; - height:30px; -} - -.list-item { - margin-left: 15px; -} - -.list-item li { - font-size: 13px; - line-height: 20px; - list-style-type: disc; - margin-bottom: 10px; -} - -.form-row { - line-height: 25px; -} - -table.form-as-table { - margin-top: 5px; -} - -table.form-as-table ul { - display: inline; - list-style-type: none; -} - -table.form-as-table li { - display: inline; -} - -table.form-as-table pre { - display: inline; -} - -table.check-table td { - padding-right: 50px; -} - -.submit-row { - clear: both; - display: block; - line-height: 30px; - padding-top: 10px; -} - -.error { - color: darkred; - font-size: 10px; - margin: 0; -} - -.small { - font-size: 11px; -} - -span.form-error { - color: #990000; - font-size: 90%; - font-weight: normal; - margin-left: 5px; -} - -.title-desc { - color: #666666; - font-size: 90%; -} - -#editor { - font-size: 100%; - line-height: 18px; - min-height: 200px; - width: 100%; -} - -.wmd-preview { - background-color: #F5F5F5; - margin-top: 10px; - min-height: 20px; - padding: 6px; - width: 98%; - overflow: hidden; -} - -.preview-toggle { - color: #AAAAAA; - font-weight: 600; - text-align: left; - width: 100%; -} - -.preview-toggle span:hover { - cursor: pointer; -} - -#revisions { - width: 950px; -} - -.revision { - font-size: 13px; - margin: 10px 0; - width: 100%; -} - -.revision .rev-arrow { - cursor: pointer; -} - -.revision .header { - background-color: #EEEEEE; - padding: 5px; -} - -.revision .author { - background-color: #E9E9FF; -} - -.revision .summary { - padding: 5px 0 10px; -} - -.revision .summary span { - /**background-color: yellow;**/ - display: inline; - padding-left: 3px; - padding-right: 3px; -} - -.revision h1 { - font-size: 130%; - font-weight: 600; - padding: 15px 0; -} - -.revision-mark { - display: inline-block; - font-size: 90%; - overflow: hidden; - text-align: left; - width: 200px; -} - -.revision-number { - font-family: sans-serif; - font-size: 300%; - font-weight: bold; -} - -.revision .body { - margin-bottom: 50px; - padding-left: 10px; -} - -del { - color: #FF5F5F; -} - -ins { - background-color: #97FF97; -} - -.count { - color: #777777; - font-family: Arial; - font-size: 200%; - font-weight: 700; -} - -.scoreNumber { - color: #777777; - font-family: Arial; - font-size: 35px; - font-weight: 800; - line-height: 40px; -} - -.user-details { - font-size: 13px; -} - -.user-about { - background-color: #EEEEEE; - height: 200px; - line-height: 20px; - overflow: auto; - padding: 10px; - width: 90%; -} - -.user-edit-link { - background: url("../images/edit.png") no-repeat scroll 0 0 transparent; - padding-left: 20px; -} - -.user-info-table { - margin-bottom: 10px; -} - -.relativetime { - text-decoration: none; -} - -.answer-summary { - clear: both; - display: block; - padding: 3px; -} - -.answer-votes { - background-color: #EEEEEE; - color: #555555; - float: left; - font-family: Arial; - font-size: 110%; - font-weight: bold; - height: 15px; - margin-right: 10px; - padding: 4px 4px 5px; - text-align: center; - text-decoration: none; - width: 20px; -} - -.vote-count { - color: #777777; - font-family: Arial; - font-size: 160%; - font-weight: 700; -} - -.user-action-1 { - color: #333333; - font-weight: bold; -} - -.user-action-2 { - color: #CCCCCC; - font-weight: bold; -} - -.user-action-3 { - color: #333333; -} - -.user-action-4 { - color: #333333; -} - -.user-action-7 { - color: #333333; -} - -.user-action-8 { - background-color: #CCCCCC; - color: #763333; - font-weight: bold; - padding: 3px; -} - -.question-title-link a { - color: #0077CC; - font-weight: bold; -} - -.answer-title-link a { - color: #333333; -} - -.post-type-1 a { - font-weight: bold; -} - -.post-type-3 a { - font-weight: bold; -} - -.post-type-2 a { - color: #333333; -} - -.post-type-4 a { - color: #333333; -} - -.post-type-8 a { - color: #333333; -} - -.badge1 { - color: #FFCC00; -} - -.silver, .badge2 { - color: #CCCCCC; -} - -.bronze, .badge3 { - color: #CC9933; -} - -.score, .accept_rate { - color: #333333; - font-size: 110%; - font-weight: bold; - margin-left: 3px; -} - -.footerLinks { - color: #3060A8; - font-size: 13px; -} - -.footerLinks a { - color: #3060A8; - font-size: 13px; -} - -.user { - line-height: 140%; - padding: 5px; - width: 170px; - display: inline-block; -} - -.user ul { - list-style-type: none; - margin: 0; -} - -.user .thumb { - clear: both; - display: inline; - float: left; - margin-right: 4px; -} - -.message { - background-color: #EEEEEE; - border: 1px solid #AAAAAA; - margin: 10px 0; - padding: 5px; -} - -.message p { - margin-bottom: 0; -} - -.darkred { - color: darkred; -} - -.submit { - background-color: #D4D0C8; - border: 1px solid #777777; - cursor: pointer; - font-size: 120%; - font-weight: bold; - height: 40px; - padding-bottom: 4px; -} - -.submit:hover { - text-decoration: underline; -} - -.ask-body { - padding-right: 10px; -} - -.notify { - background-color: #F4A83D; - color: #444444; - font-weight: bold; - left: 0; - padding: 0; - position: fixed; - text-align: center; - top: 0; - width: 100%; - z-index: 100; -} - -* html .notify { - position: absolute; -} - -.notify p { - font-size: 16px; - margin-bottom: 5px; - margin-top: 5px; -} - -#close-notify { - background-color: #FAD163; - border: 2px solid #735005; - color: #735005; - cursor: pointer; - font-size: 14px; - line-height: 18px; - padding: 0 3px; - position: absolute; - right: 5px; - text-decoration: none; - top: 5px; -} - -#close-notify:hover { - text-decoration: none; -} - -.big { - font-size: 15px; -} - -.strong { - font-weight: bold; -} - -.orange { - color: #D64000; - font-weight: bold; -} - -.grey { - color: #808080; -} - -.about div { - border-top: 1px dashed #AAAAAA; - padding: 10px 5px; -} - -.about div.first { - border-top: medium none; - padding-top: 0; -} - -.about p { - margin-bottom: 10px; -} - -.about a { - color: #D64000; - text-decoration: underline; -} - -.about h3 { - font-size: 15px; - font-weight: 700; - line-height: 30px; - padding-top: 0; -} - -.nomargin { - margin: 0; -} - -.inline-block { - display: inline-block; -} - -.list-table td { - vertical-align: top; -} - -table.form-as-table input { - display: inline; - margin-left: 4px; -} - -ul.form-horizontal-rows { - list-style: none outside none; - margin: 0; -} - -ul.form-horizontal-rows li { - height: 40px; - position: relative; -} - -ul.form-horizontal-rows label { - display: inline-block; -} - -ul.form-horizontal-rows label { - bottom: 6px; - font-size: 12px; - left: 0; - line-height: 12px; - margin: 0; - position: absolute; -} - -ul.form-horizontal-rows li input { - bottom: 0; - left: 180px; - margin: 0; - position: absolute; -} - -#changepw-form li input { - left: 150px; -} - -.user-profile-tool-links { - font-weight: bold; - padding-bottom: 10px; -} - -.post-controls, .tags-container { - font-size: 11px; - line-height: 12px; - margin-bottom: 5px; - min-width: 200px; -} - -.tags-container { - margin: 0 0 16px 0; -} - -#question-tags { - margin-top: 15px; -} - -.post-controls { - float: left; -} - -#question-controls .tags { - margin: 0 0 3px; -} - -.post-update-info { - display: inline-block; - float: right; - margin-bottom: 5px; - width: 190px; -} - -.post-update-info p { - font-size: 11px; - line-height: 15px; - margin: 0 0 4px; - padding: 0; -} - -.post-update-info img { - float: left; - margin: 4px 8px 0 0; - width: 32px; -} - -#tagSelector { - padding-bottom: 2px; -} - -#hideIgnoredTagsControl { - margin: 5px 0 0; -} - -#hideIgnoredTagsCb { - margin: 0 2px 0 1px; -} - -a.sidebar_button { - background: none repeat scroll 0 0 #EEEEEE; - color: black; - cursor: pointer; - font-size: 11px; - padding: 3px; -} - -a.sidebar_button:hover { - background-color: #777777; - color: white; - text-decoration: none; -} - -a.post-vote, .favorite-mark, a.accept-answer { - display: block; - height: 24px; - position: relative; - width: 24px; -} - -a.post-vote.up { - background: url("../images/vote-arrow-up.png") no-repeat scroll center center transparent; -} - -a.post-vote.up.on, a.post-vote.up:hover { - background: url("../images/vote-arrow-up-on.png") no-repeat scroll center center transparent; -} - -a.post-vote.down { - background: url("../images/vote-arrow-down.png") no-repeat scroll center center transparent; -} - -a.post-vote.down.on, a.post-vote.down:hover { - background: url("../images/vote-arrow-down-on.png") no-repeat scroll center center transparent; -} - -a.accept-answer { - background: url("../images/vote-accepted.png") no-repeat scroll center center transparent; -} - -a.accept-answer.on, a.accept-answer:hover { - background: url("../images/vote-accepted-on.png") no-repeat scroll center center transparent; -} - -.community-wiki { - font-size: 11px; - color: #333; - background: url("../images/wiki.png") no-repeat left center; - padding-left: 36px; - margin: 6px 0 0 0; - min-height: 32px; - line-height: 15px; -} - -.post-score, .comments-char-left-count { - color: #777777; - font-family: Arial; - font-size: 165%; - font-weight: bold; - padding: 0 0 3px; -} - -.favorite-mark { - background: url("../images/vote-favorite-off.png") no-repeat scroll center center transparent; -} - -.favorite-mark.on, a.favorite-mark:hover { - background: url("../images/vote-favorite-on.png") no-repeat scroll center center transparent; -} - -.favorite-count { - color: #777777; - font-family: Arial; - font-size: 100%; - font-weight: bold; - padding: 0; -} - -.comments-container { - clear: both; -} - -.comments-container { - padding: 0; -} - -.answered-by-owner .comments-container { - background-color: #E6ECFF; -} - -.accepted-answer .comments-container { - background-color: #CCFFBF; -} - -.comment { - border-top: 1px dotted #CCCCCE; - margin: 0; - position: relative; -} - -.comment.not_top_scorer { - display: none; -} - -.comment-score { - color: #777777; - font-family: Arial; - font-size: 16px; - font-weight: bold; - padding-top: 3px; - vertical-align: top; - float: left; - width: 22px; - height: 100%; - text-align: center; -} - -.comment-text { - color: #444444; - font-size: 12px; - margin: 0 0 0 22px; - padding: 0; -} - -.comment-text p { - font-size: 12px; -} - -.comment-info { - font-size: 11px; - margin: 0 0 4px 0; - text-align: right; - height: 18px; - vertical-align: middle; -} - -.comment-info * { - float: right; - height: 18px; - margin-left: 4px; -} - -a.comment-like, a.comment-delete, a.comment-edit, a.comment-convert, a.comment-convert-to-question { - margin-left: 2px; - width: 18px; -} - -a.comment-like { - background: url("../images/comment-like.png") no-repeat scroll center center transparent; -} - -a.comment-like:hover, a.comment-like.on { - background: url("../images/comment-like-on.png") no-repeat scroll center center transparent; -} - -a.comment-delete { - background: url("../images/comment-delete.png") no-repeat scroll center center transparent; -} - -a.comment-delete:hover { - background: url("../images/comment-delete-hover.png") no-repeat scroll center center transparent; -} - -a.comment-convert { - background: url("../images/convert-off.png") no-repeat scroll center center transparent; -} - -a.comment-convert:hover { - background: url("../images/convert-hover.png") no-repeat scroll center center transparent; -} - -a.comment-convert-to-question { - background: url("../images/convert-to-question-off.png") no-repeat scroll center center transparent; -} - -a.comment-convert-to-question:hover { - background: url("../images/convert-to-question-hover.png") no-repeat scroll center center transparent; -} - -a.comment-edit { - background: url("../images/comment-edit.png") no-repeat scroll center center transparent; -} - -a.comment-edit:hover { - background: url("../images/comment-edit-hover.png") no-repeat scroll center center transparent; -} - -img.subscription-remove { - float:right; -} - -.comment-form-container { - display: none; - padding-top: 12px; - margin-bottom: 8px; -} - -.comment-form-widgets-container input { - vertical-align: top; -} - -.comment-form-widgets-container textarea { - height: 80px; - width: 80%; - float: left; -} - -span.comment-chars-left { - font-size: 11px; - margin-right: 20px; -} - -div.comment-tools { - border-top: 1px dotted #CCCCCE; - padding-top: 12px; - text-align: right; -} - -div.comment-tools span.comment-tools-separator { - float: left; - display: block; - line-height: 17px; - color: #ccc; - font-size: 15px; - margin-left: 1px; -} - -div.comment-tools .comments-showing { - color: #777777; - font-size: 11px; -} - -div.comment-tools a { - background: none repeat scroll 0 0 #EEEEEE; - color: black; - cursor: pointer; - font-size: 11px; - padding: 3px; -} - -div.comment-tools a:hover { - background-color: #777777; - color: white; - text-decoration: none; -} - -.action-link { - color: #777777; - cursor: pointer; - padding: 3px; -} - -.action-link a { - color: inherit; -} - -.action-link a.ajax-command:hover { - background-color: #777777; - color: #FFFFFF; - text-decoration: none; -} - -.action-link-separator { - color: #CCCCCC; -} - -.deleted { - background-color: #F4E7E7; -} - -#command-loader { - position: fixed; - bottom: 0px; - left: 0px; - width: 24px; - height: 24px; - background: url('/m/default/media/images/indicator.gif') -} - -#command-loader.success { - background: url('/m/default/media/images/vote-accepted-on.png') -} - -.comment-form-buttons { - width: 18%; - height: 100%; - float: right; -} - -.comment-form-buttons input, .user-prompt .prompt-buttons button { - height: 16px; - line-height: 12px; - font-size: 110%; - border: 1px solid #999; -} - -.comment-form-buttons input { - width: 100%; - height: auto; - padding: 2px 0 4px 0; - vertical-align: middle; - margin-top: 6px; -} - -.comments-char-left-count.warn { - color: orange; -} - -#ask-related-questions { - max-height: 150px; - overflow-y: auto; -} - -.context-menu { - position: relative; -} - -div.dialog, .context-menu-dropdown { - position: absolute; - background-color: #EEEEEE; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - -moz-box-shadow: 2px 2px 5px #3060A8; - -webkit-box-shadow: 2px 2px 5px #3060A8; -} - -.context-menu-dropdown { - display: none; - right: 0px; - top: 1.5em; - text-align: left; - list-style-type: none; - z-index: 500; -} - -.context-menu-dropdown li.item { - padding: 4px 8px 4px 8px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -.context-menu-dropdown li.item a { - color: inherit; - white-space: nowrap; - text-decoration: none; -} - -.context-menu-dropdown li.separator { - text-align: center; - padding: 10px 0 4px 0; - font-size: 120%; - font-weight: bold; -} - -.context-menu-dropdown li.item:hover { - background-color: #3060A8; - color: white; -} - -.context-menu-dropdown span { - margin-right: 4px; - float: left; - width: 16px; - height: 16px; -} - -.context-menu-trigger { - cursor: pointer; -} - -div.dialog .dialog-content { - padding: 12px 12px 42px 12px; - z-index: 1000; -} - -div.dialog .dialog-buttons { - margin: 0px; - height: 25px; - text-align: center; - position: absolute; - bottom: 0px; - left: 0px; - width: 100%; -} - -.dialog-yes, .dialog-no { - padding: 0px 5px; - margin: 0 3px 5px 3px; - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - background-color: #3060A8; - color: white; - line-height: 20px; - vertical-align: baseline; - font-weight: bold; - border: 0; -} - -div.dialog.confirm, div.dialog.warning { - text-align: center; -} - -div.dialog.confirm { - font-size: 140%; - font-weight: bold; -} - -div.dialog.prompt { - width: 355px; -} - -div.dialog.prompt .dialog-content select, div.dialog.prompt .dialog-content textarea, div.dialog.prompt .dialog-content input[type=text] { - width: 100%; - padding: 0; - border: 0; -} - -.user-prompt .prompt-buttons { - text-align: right; -} - -.suspended-user { - text-decoration: line-through; -} - -.feed-icon { - width: 14px; - height: 14px; - display: inline-block; -} - -div#subscription_list { - width: 100%; - /*float:left;*/ -} - -.subscription_switch { - display: inline-block; - zoom: 1; /* zoom and *display = ie7 hack for display:inline-block */ - *display: inline; - vertical-align: baseline; - margin: 0 2px; - outline: none; - cursor: pointer; - text-align: center; - text-decoration: none; - font: 11px Arial, Helvetica, sans-serif; - padding: .2em 1em .275em; - text-shadow: 0 1px 1px rgba(0,0,0,.3); - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - border-radius: .5em; - -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2); - -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2); - box-shadow: 0 1px 2px rgba(0,0,0,.2); - color: #101010 !important; - border: solid 1px #b7b7b7; - background: #fff; - background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed)); - background: -moz-linear-gradient(top, #fff, #ededed); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed'); -} -.subscription_switch:hover { - text-decoration: none; - background: #ededed; - background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dcdcdc)); - background: -moz-linear-gradient(top, #fff, #dcdcdc); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dcdcdc'); - color: #101010 !important; -} -.subscription_switch:active { - position: relative; - top: 1px; - background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#fff)); - background: -moz-linear-gradient(top, #ededed, #fff); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#ffffff'); -} - -div.subscription_summary { - border-top: 2px dotted #CCCCCE; - overflow: hidden; - padding: 3px 0px 5px 0; - position: relative; - width:100%; - margin-top: 5px; -} - -div.subscription_title { - /*float:left; - line-height:30px;*/ - margin-top: 5px; - font-size: 16px; - font-weight:bold; -} - -a.subscription_unsubscribe_button { - float:left; - font-size: 11px; - font-weight:bold; - - margin-right:15px; - margin-top: 5px; -} - -div.subscription_userinfo { - float:right; -} - -div.subscription_tags { - font-family: sans-serif; - float:left; -} -div.subscription_tags a, span.tag { - background-color: #EEEEEE; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - color: #777777; - font-size: 11px; - font-weight: normal; - padding: 1px 8px; - text-decoration: none; - white-space: nowrap; -} -div.subscription_tags a:hover { - background-color: #356FCB; - color: #FFFFFF; -} - -div.wmd-button { - color:white; -} -div.wmd-button-bar { - float:left; -} diff --git a/forum/skins/default/media/style/.svn/text-base/user.css.svn-base b/forum/skins/default/media/style/.svn/text-base/user.css.svn-base deleted file mode 100644 index 7c8bcbb350be7e131ae7205fbd21fd34126bdc8e..0000000000000000000000000000000000000000 --- a/forum/skins/default/media/style/.svn/text-base/user.css.svn-base +++ /dev/null @@ -1,82 +0,0 @@ -#user-menu-container { - position: relative; - text-align: right; -} - -#user-menu { - cursor: pointer; - height: 1em; - font-size: 120%; - font-weight: bold; - color: #3060A8; -} - -#user-menu-dropdown { - position: absolute; - background-color: #EEEEEE; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - -moz-box-shadow: 2px 2px 5px #3060A8; - -webkit-box-shadow: 2px 2px 5px #3060A8; -} - -div.dialog.award-rep-points table { - margin: auto; - margin-top: 8px; -} - -div.dialog.award-rep-points table th { - text-align: left; -} - -div.dialog.award-rep-points table input, div.dialog.award-rep-points table textarea { - width: 150px; - max-height: 35px; -} - -#user-menu-dropdown { - display: none; - right: 0px; - top: 1.5em; - text-align: left; - list-style-type: none; -} - -#user-menu-dropdown li.item { - padding: 4px 8px 4px 8px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -#user-menu-dropdown li.item a { - color: inherit; - white-space: nowrap; - text-decoration: none; -} - -#user-menu-dropdown li.separator { - text-align: center; - padding: 10px 0 4px 0; - font-size: 120%; - font-weight: bold; -} - -#user-menu-dropdown li.item:hover { - background-color: #3060A8; - color: white; -} - -#user-menu-dropdown span { - margin-right: 4px; - float: left; - width: 16px; - height: 16px; -} - -.user-auth { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 0; } -.user-award_rep { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -17px; } -.user-edit { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -34px; } -.user-moderator { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -51px; } -.user-subscriptions { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -68px; } -.user-superuser { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -85px; } - diff --git a/forum/skins/default/templates/.svn/all-wcprops b/forum/skins/default/templates/.svn/all-wcprops deleted file mode 100644 index 67db1f3cb4c4f51ac7ea44c75697c78f25080a5d..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/all-wcprops +++ /dev/null @@ -1,251 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/1261/osqa/trunk/forum/skins/default/templates -END -answer_edit_tips.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/656/osqa/trunk/forum/skins/default/templates/answer_edit_tips.html -END -answer_edit.html -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/answer_edit.html -END -base_content.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/1228/osqa/trunk/forum/skins/default/templates/base_content.html -END -503.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/411/osqa/trunk/forum/skins/default/templates/503.html -END -404.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/429/osqa/trunk/forum/skins/default/templates/404.html -END -notarobot.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/notarobot.html -END -privacy.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/privacy.html -END -paginator.html -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/paginator.html -END -feedback.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1206/osqa/trunk/forum/skins/default/templates/feedback.html -END -badges.html -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1173/osqa/trunk/forum/skins/default/templates/badges.html -END -subscription_status.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1019/osqa/trunk/forum/skins/default/templates/subscription_status.html -END -opensearch.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/478/osqa/trunk/forum/skins/default/templates/opensearch.html -END -header.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/header.html -END -questions.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1240/osqa/trunk/forum/skins/default/templates/questions.html -END -markdown_help.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/551/osqa/trunk/forum/skins/default/templates/markdown_help.html -END -401.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/641/osqa/trunk/forum/skins/default/templates/401.html -END -500.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/316/osqa/trunk/forum/skins/default/templates/500.html -END -search.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/search.html -END -close.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/close.html -END -403.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/428/osqa/trunk/forum/skins/default/templates/403.html -END -question_summary_list_roll.html -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/question_summary_list_roll.html -END -question.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/question.html -END -pagesize.html -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/pagesize.html -END -index.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/515/osqa/trunk/forum/skins/default/templates/index.html -END -logout.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/logout.html -END -sitemap_section_index.xml -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/961/osqa/trunk/forum/skins/default/templates/sitemap_section_index.xml -END -base.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/652/osqa/trunk/forum/skins/default/templates/base.html -END -question_edit_tips.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/860/osqa/trunk/forum/skins/default/templates/question_edit_tips.html -END -page.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/381/osqa/trunk/forum/skins/default/templates/page.html -END -account_settings.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/656/osqa/trunk/forum/skins/default/templates/account_settings.html -END -question_edit.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/question_edit.html -END -user.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/user.html -END -ask.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/ask.html -END -email_base.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/357/osqa/trunk/forum/skins/default/templates/email_base.html -END -revisions.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/479/osqa/trunk/forum/skins/default/templates/revisions.html -END -static.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/263/osqa/trunk/forum/skins/default/templates/static.html -END -reopen.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/reopen.html -END -question_retag.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/997/osqa/trunk/forum/skins/default/templates/question_retag.html -END -footer.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/904/osqa/trunk/forum/skins/default/templates/footer.html -END -tags.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/tags.html -END -badge.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/157/osqa/trunk/forum/skins/default/templates/badge.html -END diff --git a/forum/skins/default/templates/.svn/entries b/forum/skins/default/templates/.svn/entries deleted file mode 100644 index 6411981dff58d7996e0174acb1c1b59226287965..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/entries +++ /dev/null @@ -1,1449 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates -http://svn.osqa.net/svnroot - - - -2012-05-09T20:59:46.733114Z -1261 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -logout.html -file - - - - -2012-06-22T20:34:43.108220Z -1713647bbd63dc13b8393aac197a7f06 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -857 - -sitemap_section_index.xml -file - - - - -2012-06-22T20:34:43.108220Z -efc1b37f4536e17fb37ba0fabefd4d09 -2011-04-10T21:16:46.186499Z -961 -jordan - - - - - - - - - - - - - - - - - - - - - -216 - -osqaadmin -dir - -base.html -file - - - - -2012-06-22T20:34:43.108220Z -4935f7af2056623c0845485bb71ab0c7 -2010-12-29T20:27:36.313297Z -652 -jordan - - - - - - - - - - - - - - - - - - - - - -576 - -question_edit_tips.html -file - - - - -2012-06-22T20:34:43.108220Z -3cc3d4e387cb7a7a31978440e5a405e6 -2011-03-17T00:32:04.218237Z -860 -hernani - - - - - - - - - - - - - - - - - - - - - -820 - -page.html -file - - - - -2012-06-22T20:34:43.112218Z -393ad7e7de8cc1bd9222191ff9866db7 -2010-06-07T01:56:21.726777Z -381 -hernani - - - - - - - - - - - - - - - - - - - - - -764 - -account_settings.html -file - - - - -2012-06-22T20:34:43.112218Z -8c71d72e1c689e542756f5d6311846d6 -2010-12-29T23:28:38.783651Z -656 -jordan - - - - - - - - - - - - - - - - - - - - - -1588 - -question_edit.html -file - - - - -2012-06-22T20:34:43.096226Z -d11c6cede0853dd9cf6f46c4fddc91e8 -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -6864 - -ask.html -file - - - - -2012-06-22T20:34:43.096226Z -f1f90edf4c57257b48b25db7ef9ac63a -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -7518 - -user.html -file - - - - -2012-06-22T20:34:43.112218Z -ce15015f5e2b2803d74d621a21e2c3ac -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -1705 - -revisions.html -file - - - - -2012-06-22T20:34:43.100224Z -5e0885be0cdf72aa02618bba8cd2b2c1 -2010-06-30T22:54:52.815351Z -479 -qw3rty - - - - - - - - - - - - - - - - - - - - - -3264 - -email_base.html -file - - - - -2012-06-22T20:34:43.112218Z -a7cf9cbe0e256eb964fffec7a76e9025 -2010-06-02T19:58:07.706904Z -357 -hernani - - - - - - - - - - - - - - - - - - - - - -1157 - -feeds -dir - -static.html -file - - - - -2012-06-22T20:34:43.116216Z -6a0af753669e3756b94735f8d4631b65 -2010-05-13T18:24:03.445363Z -263 -hernani - - - - - - - - - - - - - - - - - - - - - -292 - -reopen.html -file - - - - -2012-06-22T20:34:43.116216Z -331b0d685361025734ca64f8eba3f318 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1523 - -question_retag.html -file - - - - -2012-06-22T20:34:43.116216Z -a32a961ab33dafd584d24efa98dfc324 -2011-04-22T14:42:12.133841Z -997 -hernani - - - - - - - - - - - - - - - - - - - - - -2817 - -auth -dir - -footer.html -file - - - - -2012-06-22T20:34:43.120214Z -3d7cd8d56da4fe2d66b3ce33a812ae02 -2011-03-27T21:10:14.806345Z -904 -jordan - - - - - - - - - - - - - - - - - - - - - -636 - -tags.html -file - - - - -2012-06-22T20:34:43.120214Z -04318a89eeb688daa48d420645968273 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -1769 - -badge.html -file - - - - -2012-06-22T20:34:43.100224Z -bc0f108df3ceb7961fba6b627aa25f8c -2010-05-07T11:03:36.561425Z -157 -hernani - - - - - - - - - - - - - - - - - - - - - -1428 - -answer_edit_tips.html -file - - - - -2012-06-22T20:34:43.204172Z -e57f64e273c99670ddf26a99dd040754 -2010-12-29T23:28:38.783651Z -656 -jordan - - - - - - - - - - - - - - - - - - - - - -877 - -answer_edit.html -file - - - - -2012-06-22T20:34:43.100224Z -744f09c1c65d0c751e8b9fdc75d742c1 -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -4604 - -base_content.html -file - - - - -2012-06-22T20:34:43.204172Z -deed5352389164ff435c2089731a63b9 -2012-02-12T18:58:38.553183Z -1228 -jordan - - - - - - - - - - - - - - - - - - - - - -7002 - -sidebar -dir - -notarobot.html -file - - - - -2012-06-22T20:34:43.104222Z -4221f257a985298429d0207cd915e94b -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -605 - -404.html -file - - - - -2012-06-22T20:34:43.104222Z -0b80400520e66025b91173f8e21b35b8 -2010-06-16T11:50:46.730407Z -429 -hernani - - - - - - - - - - - - - - - - - - - - - -1957 - -503.html -file - - - - -2012-06-22T20:34:43.104222Z -97b05e5a4be358bf7c254a9e3a1ceb43 -2010-06-12T01:16:53.583168Z -411 -hernani - - - - - - - - - - - - - - - - - - - - - -625 - -privacy.html -file - - - - -2012-06-22T20:34:43.112218Z -21da4c732077cf1c5b74ea6b6f8a14f2 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1161 - -paginator -dir - -node -dir - -feedback.html -file - - - - -2012-06-22T20:34:43.100224Z -72cb98b3bfce2383676165e6f3fd0975 -2011-12-03T14:29:28.173913Z -1206 -jordan - - - - - - - - - - - - - - - - - - - - - -2598 - -paginator.html -file - - - - -2012-06-22T20:34:43.116216Z -93d81ba0a21a44e56ddebc20ad50a5ae -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1461 - -badges.html -file - - - - -2012-06-22T20:34:43.100224Z -610cf42660d6c7b6970b5741cda24513 -2011-09-13T20:41:08.761865Z -1173 -jordan - - - - - - - - - - - - - - - - - - - - - -2302 - -opensearch.html -file - - - - -2012-06-22T20:34:43.100224Z -8854ebdd7251a9784f547956fa8308ae -2010-06-30T19:12:32.955591Z -478 -qw3rty - - - - - - - - - - - - - - - - - - - - - -498 - -subscription_status.html -file - - - - -2012-06-22T20:34:43.116216Z -028d3bc1665edfe450c49c0eda105d9b -2011-05-03T18:30:47.394780Z -1019 -jordan - - - - - - - - - - - - - - - - - - - - - -1906 - -header.html -file - - - - -2012-06-22T20:34:43.100224Z -12a91117cfc68c07ae523890b96b3363 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1841 - -markdown_help.html -file - - - - -2012-06-22T20:34:43.116216Z -754bd80b1c03e44c41001a691406c940 -2010-07-24T17:27:21.843513Z -551 -hernani - - - - - - - - - - - - - - - - - - - - - -11234 - -questions.html -file - - - - -2012-06-22T20:34:43.120214Z -18f60ec8be957d404f68c58a3b2f6973 -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - - - - - - - - -1639 - -users -dir - -question_list -dir - -401.html -file - - - - -2012-06-22T20:34:43.204172Z -24493dabac0e45ad3b594c274ff4ca4d -2010-12-28T03:07:01.928016Z -641 -jordan - - - - - - - - - - - - - - - - - - - - - -1475 - -500.html -file - - - - -2012-06-22T20:34:43.204172Z -6db6f7621628c0fdb2f1bd38510079a5 -2010-05-24T14:17:59.806133Z -316 -matt - - - - - - - - - - - - - - - - - - - - - -1172 - -search.html -file - - - - -2012-06-22T20:34:43.104222Z -540ea090890c58a84cf7ae4a5dcb5e27 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1054 - -close.html -file - - - - -2012-06-22T20:34:43.204172Z -f3ccc29df228a8545f0df7eec7e4c261 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1256 - -notifications -dir - -403.html -file - - - - -2012-06-22T20:34:43.208170Z -4252d7069ffd2c93d1e0c62711d19c5d -2010-06-16T11:41:52.609312Z -428 -hernani - - - - - - - - - - - - - - - - - - - - - -1452 - -pagesize.html -file - - - - -2012-06-22T20:34:43.108220Z -f6c2f7428ff0f4fe765ae611cac569a7 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -788 - -question.html -file - - - - -2012-06-22T20:34:43.104222Z -06c1436ba2242b23a1412d9475245e8e -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -14850 - -question_summary_list_roll.html -file - - - - -2012-06-22T20:34:43.104222Z -fb966035755a13dc125545e800eb8c16 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -2721 - -index.html -file - - - - -2012-06-22T20:34:43.208170Z -f187ba02a08f2685701582c5a6320807 -2010-07-09T22:22:53.221620Z -515 -hernani - - - - - - - - - - - - - - - - - - - - - -1044 - diff --git a/forum/skins/default/templates/.svn/text-base/401.html.svn-base b/forum/skins/default/templates/.svn/text-base/401.html.svn-base deleted file mode 100644 index 7c1023fd6fb39157ada46de8f144edad4ac05bcf..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/401.html.svn-base +++ /dev/null @@ -1,46 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% block title %}{% trans "Not logged in" %}{% endblock %} -{% block meta %} - <!-- <meta http-equiv="refresh" content="5;url={% url auth_signin %}"> --> -{% endblock %} -{% block forestyle%} - <style type="text/css"> - form input { margin-right: 5px; } - </style> -{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - window.setInterval(function() { - $('#redirect_loader').html($('#redirect_loader').html() + '.') - }, 800); - - window.setTimeout(function() { - window.location = "{% url auth_signin %}"; - }, 5000); - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Not logged in" %} -</div> -<div id="main-body" class=""> - <div style="padding:5px 0px 10px 0;line-height:25px;"> - <h3>{% trans "You are not logged in..." %}</h3> - <div style="margin-top:5px"> - {% trans "...and the resource you're trying to access is protected." %} - <p> - {% trans "Redirecting to the login page." %}<span id="redirect_loader"></span> - </p> - <p> - {% trans "If you're not automatically redirected in 5 seconds, please click" %} - <a href="{% url auth_signin %}">{% trans "here" %}</a>. - </p> - </div> - </div> - -</div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/.svn/text-base/403.html.svn-base b/forum/skins/default/templates/.svn/text-base/403.html.svn-base deleted file mode 100644 index 26b563f63fd812f72e244d71db6cb97177820c70..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/403.html.svn-base +++ /dev/null @@ -1,36 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% block title %}{% trans "Forbidden" %}{% endblock %} -{% block forestyle%} - <style type="text/css"> - form input { margin-right: 5px; } - </style> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Forbidden" %} -</div> -<div id="main-body" class=""> - <div style="padding:5px 0px 10px 0;line-height:25px;"> - <h3>{% trans "Sorry, you don't have permissions to access this page." %}</h3> - <div style="margin-top:5px"> - {% trans "This might have happened for the following reasons:" %}<br/> - <ul> - <li>{% trans "you followed a link on an email, but you're currently logged in as another user;" %}</li> - <li>{% trans "there are errors in the url, please confirm it;" %}</li> - <li>{% trans "if you believe you shouldn't bee seeing this error, please" %} - <a href="{% if settings.CONTACT_URL %}{{ settings.CONTACT_URL }}{% else %}{% url feedback %}{% endif %}" target="_blank"> - {% trans "report this problem" %} - </a> - </li> - </ul> - </div> - <ul> - <li><a href="{% url index %}">{% trans "to home page" %} »</a></li> - <li><a href="{% url questions %}">{% trans "see all questions" %} »</a></li> - <li><a href="{% url tags %}">{% trans "see all tags" %} »</a></li> - </ul> - </div> - -</div> -{% endblock %} diff --git a/forum/skins/default/templates/.svn/text-base/404.html.svn-base b/forum/skins/default/templates/.svn/text-base/404.html.svn-base deleted file mode 100644 index ad2ac68cdbf563856385e5acba9e2d0432fd16ee..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/404.html.svn-base +++ /dev/null @@ -1,48 +0,0 @@ -{% extends "base_content.html" %} -<!-- template 404.html --> -{% load i18n %} -{% block title %}{% trans "404 Error" %}{% endblock %} -{% block forestyle%} - <style type="text/css"> - form input { margin-right: 5px; } - </style> -{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $("#linkPrevious").bind("click", back=function(){history.go(-1);}) - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "404 Not Found" %} -</div> -<div id="main-body" class=""> - <div style="padding:5px 0px 10px 0;line-height:25px;"> - <h3>{% trans "Sorry, could not find the page you requested." %}</h3> - <div style="margin-top:5px"> - {% trans "This might have happened for the following reasons:" %}<br/> - <ul> - <li>{% trans "this question or answer has been deleted;" %}</li> - <li>{% trans "url has error - please check it;" %}</li> - <li>{% trans "if you believe this error 404 should not have occurred, please" %} - <a href="{% if settings.CONTACT_URL %}{{ settings.CONTACT_URL }}{% else %}{% url feedback %}{% endif %}">{% trans "report this problem" %}</a></li> - </ul> - </div> - <script type="text/javascript"> - var GOOG_FIXURL_LANG = '{{settings.LANGUAGE_CODE}}'; - var GOOG_FIXURL_SITE = '{{site_url}}'; - </script> - <script type="text/javascript" src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script> - <ul> - <li><a href="#" id="linkPrevious">{% trans "back to previous page" %} »</a></li> - <li><a href="{% url questions %}">{% trans "see all questions" %} »</a></li> - <li><a href="{% url tags %}">{% trans "see all tags" %} »</a></li> - </ul> - </div> - -</div> -{% endblock %} -<!-- end template 404.html --> diff --git a/forum/skins/default/templates/.svn/text-base/500.html.svn-base b/forum/skins/default/templates/.svn/text-base/500.html.svn-base deleted file mode 100644 index 3300b8e91a8ed4796972e8955c2f97b549043352..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/500.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% extends "base_content.html" %} -<!-- template 500.html --> -{% load i18n %} -{% block title %}{% spaceless %}500 Error{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $("#linkPrevious").bind("click", back=function(){history.go(-1);}) - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class=""> - <h3> - 500 Server Error - </h3> - -</div> -<div id="main-body" class="headNormal"> - <div style="padding:5px 0px 10px 0;line-height:25px"> - <h3>{% trans "sorry, system error" %}</h3> - <br/> - {% trans "system error log is recorded, error will be fixed as soon as possible" %}<br/> - {% trans "please report the error to the site administrators if you wish" %} - <ul> - <li><a href="#" id="linkPrevious">{% trans "back to previous page" %}</a></li> - <li><a href="{% url questions %}">{% trans "see latest questions" %}</a></li> - <li><a href="{% url tags %}">{% trans "see tags" %}</a></li> - </ul> - </div> - -</div> -{% endblock %} -<!-- end template 500.html --> diff --git a/forum/skins/default/templates/.svn/text-base/503.html.svn-base b/forum/skins/default/templates/.svn/text-base/503.html.svn-base deleted file mode 100644 index 8f1664c890bd7c6d4c69e1534e776f4b0b250ab1..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/503.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n %} - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <title>{% trans "System down for maintenance" %}</title> - <style> - #content { - margin: auto; - } - </style> - </head> - <body> - <div id="content"> - <img src="{{ app_logo }}"> - <p>{{ app_title }}</p> - <h3>{% trans "System down for maintenance" %}</h3> - <br/> - {{ message }} - </div> - </body> -</html> diff --git a/forum/skins/default/templates/.svn/text-base/account_settings.html.svn-base b/forum/skins/default/templates/.svn/text-base/account_settings.html.svn-base deleted file mode 100644 index d1349ec77c42e2399fb28ff11454ee470100349d..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/account_settings.html.svn-base +++ /dev/null @@ -1,45 +0,0 @@ -{% extends "base_content.html" %} -<!-- settings.html --> -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Account functions" %}{% endspaceless %}{% endblock %} -{% block head %} -<style type="text/css" media="screen"> - h4 {font-size:12pt;} - dt, dd { padding:0 0 0.35em 0; } - dt { float: left; width: 21ex; } - dd { margin-left: 23ex; } - - #settings-options, #settings-intro { padding: 4em 1.5em;} - #settings-options { min-height: 300px; border-left: 1px solid #333;} - - #settings-options h5 { font-weight: bold;} -</style> -{% endblock %} - -{% block content %} -<div id="main-bar"> - <h3><strong>{{ request.user.username }} {% trans "Profile" %}</strong></h3> -</div> -<div id="settings-options"> - {% if msg %} - <p class="error">{{ msg }}</p> - {% endif %} - - <dl class="list-item"> - <dt>» <a href="{% url user_changepw %}">{% trans "Change password" %}</a></dt> - <dd>{% trans "Give your account a new password." %}</dd> - {% comment %} - <dt>» <a href="{% url user_changeemail %}">{% trans "Change email " %}</a></dt> - <dd>{% trans "Add or update the email address associated with your account." %}</dd> - - <dt>» <a href="{% url user_changeopenid %}">{% trans "Change OpenID" %}</a></dt> - <dd>{% trans "Change openid associated to your account" %}</dd> - - - <dt>» <a href="{% url user_delete %}">{% trans "Delete account" %}</a></dt> - <dd>{% trans "Erase your username and all your data from website" %}</dd> - {% endcomment %} - </dl> -</div> -{% endblock %} -<!-- end settings.html --> diff --git a/forum/skins/default/templates/.svn/text-base/answer_edit.html.svn-base b/forum/skins/default/templates/.svn/text-base/answer_edit.html.svn-base deleted file mode 100644 index 3201dd26de651966b3c59b537a3f3a33f5ab650f..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/answer_edit.html.svn-base +++ /dev/null @@ -1,116 +0,0 @@ -{% extends "base.html" %} -<!-- template answer_edit.html --> -{% load i18n %} -{% load extra_tags %} -{% block title %}{% spaceless %}{% trans "Edit answer" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - <script type="text/javascript"> - - $().ready(function(){ - $("#nav_questions").attr('className',"on"); - $('#editor').TextAreaResizer(); - - - //toggle preview of editor - var display = true; - var txt = "{% trans "hide preview" %}"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "{% trans "show preview" %}" : "{% trans "hide preview" %}"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - - - $('#id_revision').unbind().change(function(){ - $("#select_revision").click(); - }); - - - answer = $("textarea#editor")[0].value; - }); - - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - $("input.submit")[1].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - if($("textarea#editor")[0].value != answer) { - return yourWorkWillBeLost(e); - } - } - window.addEventListener('beforeunload', beforeUnload, true); - - var answer = ""; - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Edit answer" %} [<a href="{{ answer.question.get_absolute_url }}#{{ answer.id }}">{% trans "back" %}</a>] -</div> -<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" %}:</strong></label> <br/> - {% if revision_form.revision.errors %}{{ revision_form.revision.errors.as_ul }}{% endif %} - <div> - {{ revision_form.revision }} <input type="submit" style="display:none" id="select_revision" name="select_revision" value="{% trans "select revision" %}"> - </div> - <div class="form-item"> - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ form.text }} - <span class="form-error"></span> - <div class="preview-toggle"><span id="pre-collapse" - title="{% trans "Toggle the real time Markdown editor preview" %}">{% trans "toggle preview" %}</span> - <span style="text-align: right; margin-left: 200px;" id="editor-metrics"></span> - {% if settings.WIKI_ON %} - <div style="float:right;"> - {{ form.wiki }} <span style="color:#000;cursor:help" title="{{form.wiki.help_text}}">{{ form.wiki.label_tag }} </span> - </div> - {% endif %} - </div> - <div id="previewer" class="wmd-preview"></div> - </div> - - <strong>{{ form.summary.label_tag }}</strong> <br/> - {{ form.summary }} {{ form.summary.errors }} - <div class="title-desc"> - {{ form.summary.help_text }} - </div> - - {% if form.recaptcha %} - <div class="question-captcha"> - {{ form.recaptcha.errors }} - {{ form.recaptcha }} - </div> - {% endif %} - - <input type="button" value="{% trans "Save edit" %}" class="submit" onclick="submitClicked(event, this.form)" /> - <input type="button" value="{% trans "Cancel" %}" class="submit" onclick="submitClicked(event, this.form);history.back(-1);" /> - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -{% include "answer_edit_tips.html" %} -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end template answer_edit.html --> diff --git a/forum/skins/default/templates/.svn/text-base/answer_edit_tips.html.svn-base b/forum/skins/default/templates/.svn/text-base/answer_edit_tips.html.svn-base deleted file mode 100644 index 39e1f3c2a34aac7088b6764175c9ba57ec52d6f1..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/answer_edit_tips.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -<!-- template answer_edit_tips.html --> -{% load i18n general_sidebar_tags %} -<div class="boxC"> - <p class="subtitle darkred">{% trans "answer tips" %}</p> - <div> - <ul class="list-item"> - <li> <b>{% trans "please make your answer relevant to this community" %}</b> - </li> - <li> - {% trans "try to give an answer, rather than engage into a discussion" %} - </li> - <li> - {% trans "please try to provide details" %} - </li> - <li> - {% trans "be clear and concise" %} - </li> - </ul> - <p class='info-box-follow-up-links'> - <a href="{% url faq %}" target="_blank" title="{% trans "see frequently asked questions" %}">faq »</a> - </p> - </div> -</div> - -{% markdown_help %} -<!-- end template answer_edit_tips.html --> diff --git a/forum/skins/default/templates/.svn/text-base/ask.html.svn-base b/forum/skins/default/templates/.svn/text-base/ask.html.svn-base deleted file mode 100644 index ec5b1a8e80d6ac2fd5fb38cd541f9bdc9a1beff9..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/ask.html.svn-base +++ /dev/null @@ -1,178 +0,0 @@ -{% extends "base.html" %} -<!-- template ask.html --> -{% load i18n extra_tags extra_filters %} -{% block title %}{% spaceless %}{% trans "Ask a question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - <script type="text/html" id="question-summary-template"> - <div class="answer-summary"> - <a href="%URL%"><div class="answer-votes">%SCORE%</div></a> - <div class="answer-link"> - <a class="question-hyperlink" href="%URL%" title="%SUMMARY%">%TITLE%</a> - </div> - </div> - </script> - <script type="text/javascript"> - $(function(){ - //set current module button style - $("#nav_ask").attr('className',"on"); - $('#editor').TextAreaResizer(); - - //toggle preview of editor - //todo remove copy-paste - var display = true; - var txt = "[{% trans "hide preview" %}]"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "[{% trans "show preview" %}]" : "[{% trans "hide preview" %}]"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - - //Tags autocomplete action - $("#id_tags").autocomplete("{% url matching_tags %}", { - minChars: 1, - matchContains: true, - max: 10, - multiple: true, - multipleSeparator: " ", - highlightItem: true, - scroll: true, - scrollHeight: 300, - - - /* - formatItem: function(row, i, max) { - return row.n + " ("+ row.c +")"; - }, - formatResult: function(row, i, max){ - return row.n; - } - */ - - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - - }); - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - if($("input#id_title")[0].value != "" || $("textarea#editor")[0].value != "" || $("input#id_tags")[0].value != "") { - return yourWorkWillBeLost(e); - } - } - window.addEventListener('beforeunload', beforeUnload, true); - - var related_questions_url = "{% url related_questions %}"; - </script> - <script src="{% media "/media/js/osqa.ask.js" %}" type="text/javascript"></script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Ask a question" %} -</div> -<div id="main-body" class="ask-body"> - <div id="askform"> - <form id="fmask" action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - {% if not request.user.is_authenticated %} - <div class="message"> - <span class="strong big">{% trans "You are welcome to start submitting your question anonymously." %}</span> - <p>{% blocktrans %} - After submiting your question, you will be redirected to the login/signup page. - Your question will be saved in the current session and will be published after you login with your existing account, - or signup for a new account{% endblocktrans %}{% if "ask"|contained_in:settings.REQUIRE_EMAIL_VALIDATION_TO %} - {% trans "and validate your email." %}{% else %}.{% endif %}</p> - </div> - {% else %} - {% if not request.user.email_valid_and_can_ask %} - <div class="message"> - {% blocktrans %}Remember, your question will not be published until you validate your email.{% endblocktrans %} - <a href="{% url send_validation_email %}">{% trans "Send me a validation link." %}</a> - </div> - {% endif %} - {% endif %} - <div class="form-item"> - <label for="id_title" ><strong>{{ form.title.label_tag }}:</strong></label> <span class="form-error"></span><br/> - {{ form.title }} {{ form.title.errors }} - <div class="title-desc"> - {{ form.title.help_text }} - </div> - </div> - <div id="ask-related-questions"></div> - <div class="form-item"> - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ form.text }} {{ form.text.errors }} - <div class="preview-toggle"> - <table width="100%"> - <tr> - <td> - <span id="pre-collapse" title="{% trans "Toggle the real time Markdown editor preview" %}">{% trans "toggle preview" %}</span> - </td> - <td style="text-align: right;" id="editor-metrics"></td> - {% if settings.WIKI_ON %} - <td class="tright"> - {{ form.wiki }} <span class="help_text" title="{{form.wiki.help_text}}">{{ form.wiki.label_tag }} </span> - </td> - {% endif %} - </tr> - - </table> - </div> - <div id="previewer" class="wmd-preview"></div> - <span class="form-error"></span> - </div> - <div class="form-item"> - <strong>{{ form.tags.label_tag }}:</strong> {% trans "(required)" %} <span class="form-error"></span><br/> - {{ form.tags }} {{ form.tags.errors }} - </div> - <p class="title-desc"> - {{ form.tags.help_text }} - </p> - - {% if form.recaptcha %} - <div class="question-captcha" style="float: left"> - {{ form.recaptcha.errors }} - {{ form.recaptcha }} - </div> - <div class="clear"></div> - {% endif %} - - {% if not request.user.is_authenticated %} - <input name="ask" type="button" value="{% trans "Login/signup to post your question" %}" class="submit" onclick="submitClicked(event, this.form)"/> - {% else %} - <input name="ask" type="button" value="{% trans "Ask your question" %}" class="submit" onclick="submitClicked(event, this.form)"/> - {% endif %} - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -{% include "question_edit_tips.html" %} -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end template ask.html --> diff --git a/forum/skins/default/templates/.svn/text-base/badge.html.svn-base b/forum/skins/default/templates/.svn/text-base/badge.html.svn-base deleted file mode 100644 index 341f2393b97ba56613244fe86414c9eb2f0a68a7..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/badge.html.svn-base +++ /dev/null @@ -1,38 +0,0 @@ -{% extends "base_content.html" %} -<!-- template badge.html --> -{% load i18n %} -{% load extra_tags %} -{% load user_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{{ badge.name }} - {% trans "Badge" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $("#nav_badges").attr('className',"on"); - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Badge" %} -</div> -<div id="main-body" style="width:100%;margin-bottom:20px"> - <p> - <a href="{{badge.get_absolute_url}}" title="{{ badge.get_type_display }} : {{ badge.description }}" class="medal"><span class="badge{{ badge.type }}">●</span> {{ badge.name }}</a> {{ badge.description }} - </p> - <div> - {% if badge.awarded_count %} - <p style="float:left"><span class="count">{{ award_count|intcomma }}</span> - <strong>{% trans "The users have been awarded with badges:" %}</strong></p> - {% endif %} - </div> - <div id="award-list" style="clear:both;margin-left:20px;line-height:25px;"> - {% for award in awards %} - <p style="width:220px;float:left">{% user_signature award.user "badges" %}<span class="tag-number"> × {{ award.count|intcomma }}</span></p> - {% endfor %} - </div> - -</div> -{% endblock %} -<!-- end template badge.html --> diff --git a/forum/skins/default/templates/.svn/text-base/badges.html.svn-base b/forum/skins/default/templates/.svn/text-base/badges.html.svn-base deleted file mode 100644 index 019a329f4e31ee1a6403e1aa6b462d99dd7c7fd2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/badges.html.svn-base +++ /dev/null @@ -1,65 +0,0 @@ -{% extends "base.html" %} -<!-- template badges.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Badges summary" %}{% endspaceless %}{% endblock %} -{% block content %} -<div class="headlineA"> - <span class="headMedals">{% trans "Badges" %}</span> -</div> -<div class="badges" id="main-body" style="width:100%"> - <p> - {% trans "Community gives you awards for your questions, answers and votes." %} - {% blocktrans %}Below is the list of available badges and number of times each type of badge has been awarded. - {% endblocktrans %} - </p> - <div id="medalList"> - {% for badge in badges %} - <div style="clear:both;line-height:30px"> - <div class="intoMyBadges"> - {% if badge.id in mybadges %} - <span>✔</span> - {% endif %} - </div> - <div class="badgeListItem"> - <a href="{{badge.get_absolute_url}}" title="{{ badge.get_type_display }} : {{ badge.description }}" class="medal"><span class="badge{{ badge.type }}">●</span> {{ badge.name }}</a><strong> × {{ badge.awarded_count|intcomma }}</strong> - </div> - <p class="badgeListDescription"> - {{ badge.description }} - </p> - </div> - {% endfor %} - </div> -</div> -{% endblock %} -{% block sidebar %} - -<div class="boxC"> - <h3>{% trans "Community badges" %}</h3> - <div class="body"> - <p> - <span title="{% trans "gold badge: the highest honor and is very rare" %}" class="medal"><span class="badge1">●</span> {% trans "gold" %}</span> - </p> - <p> - {% trans "gold badge description" %} - </p> - <p> - <span - title="{% trans "silver badge: occasionally awarded for the very high quality contributions" %}" - class="medal"><span class="badge2">●</span> {% trans "silver" %}</span> - </p> - <p> - {% trans "silver badge description" %} - </p> - <p> - <span title="{% trans "bronze badge: often given as a special honor" %}" class="medal"> - <span class="badge3">●</span> {% trans "bronze" %}</span> - </p> - <p> - {% trans "bronze badge description" %} - </p> - </div> -</div> -{% endblock %} -<!-- end template badges.html --> diff --git a/forum/skins/default/templates/.svn/text-base/base.html.svn-base b/forum/skins/default/templates/.svn/text-base/base.html.svn-base deleted file mode 100644 index 141dc39071aa0a4f966e697362340982a86329b8..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/base.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% extends "base_content.html" %} -{% block page_center %} - -{% block full_width_banner %}{% endblock %} - -<div id="wrapper"> - {% block site_width_banner %}{% endblock %} - - <div id="room"> - <div id="CALeft"> - {% block content%} - {% endblock%} - - </div> - <div id="CARight"> - {% block sidebar%} - {% endblock%} - - </div> - <div id="tail" style="clear:both;"> - {% block tail %} - {% endblock %} - </div> - </div> - <div class="spacer3"></div> -</div> -{% endblock %} - diff --git a/forum/skins/default/templates/.svn/text-base/base_content.html.svn-base b/forum/skins/default/templates/.svn/text-base/base_content.html.svn-base deleted file mode 100644 index 789710d2177d359b05464d750375450c1427c2cc..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/base_content.html.svn-base +++ /dev/null @@ -1,152 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!-- base_content.html --> -{% load i18n extra_tags extra_filters markup ui_registry %} -<html xmlns="http://www.w3.org/1999/xhtml"> - <head>{% block after_head_js %}{% endblock %} - <title>{% block fulltitle %}{% block title %}{% endblock %} - {{ settings.APP_SHORT_NAME }}{% endblock %}</title> - <meta name="description" content="{% block metadescription %}{{ settings.APP_DESCRIPTION }}{% endblock %}" /> - <meta name="keywords" content="{% block metakeywords %}{{ settings.APP_KEYWORDS }}{% endblock %}" /> - {% block meta %}{% endblock %} - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - {% if settings.GOOGLE_SITEMAP_CODE %} - <meta name="google-site-verification" content="{{ settings.GOOGLE_SITEMAP_CODE }}" /> - {% endif %} - <link rel="shortcut icon" href="{{ settings.APP_FAVICON }}" /> - <link href="{% media "/media/style/style.css" %}" rel="stylesheet" type="text/css" /> - {% if settings.USE_CUSTOM_CSS|or_preview:request %} - <link href="{% url custom_css %}" rel="stylesheet" type="text/css" /> - {% endif %} - <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/base/jquery-ui.css" /> - <!--[if IE 6]> - <style type="text/css"> - img, div, a { behavior: url({% media "/media/iepngfix/iepngfix.htc" %}) } - </style> - <![endif]--> - {% block forestyle %}{% endblock %} - - <script src="http://www.google.com/jsapi" type="text/javascript"></script> - <script type="text/javascript"> - /*<![CDATA[*/ - google.load("jquery", "1"); - google.load("jqueryui", "1", {autoload:true}); - - var i18nLang = '{{ settings.LANGUAGE_CODE }}'; - var appUrl = '{{ settings.APP_URL }}' - var scriptUrl = '{{ settings.FORCE_SCRIPT_NAME }}/' - var osqaSkin = '{{ settings.OSQA_SKIN }}'; - - var messages = { - username: '{{ user.username }}', - confirm: "{% trans "Are you sure?" %}", - yes: "{% trans "Yes" %}", - no: "{% trans "No" %}", - message: "{% trans "Message:" %}", - cancel: "{% trans "Cancel" %}", - close: "{% trans "Close" %}", - ok: "{% trans "Ok" %}", - matching_tags_url: "{% url matching_tags %}", - word: "{% trans "word" %}", - words: "{% trans "words" %}", - character: "{% trans "character" %}", - characters: "{% trans "characters" %}" - } - /*]]>*/ - </script> - <script type="text/javascript" src="{% media "/media/js/osqa.main.js" %}"></script> - {% if user_messages %} - <style type="text/css"> - body { margin-top:2.4em; } - </style> - <script type="text/javascript"> - $(document).ready(function() { - var element = $('#validate_email_alert'); - element.click(function(){notify.close(true);}) - notify.show(); - }); - </script> - {% endif %} - {% if settings.USE_CUSTOM_HEAD|or_preview:request %} - {{ settings.CUSTOM_HEAD|or_preview:request|safe }} - {% endif %} - {% block forejs %}{% endblock %} - <link rel="search" type="application/opensearchdescription+xml" href="{% url opensearch %}" title="{{ settings.APP_SHORT_NAME }} Search" /> - {% loadregistry head_content %}{% endloadregistry %} - </head> - <body> - <div class="wrapper"> - {% if settings.USE_CUSTOM_HEADER|or_preview:request %} - <div id="custom_header"> - {{ settings.CUSTOM_HEADER|or_preview:request|static_content:settings.CUSTOM_HEADER_RENDER_MODE }} - </div> - {% endif %} - {% include "header.html" %} - {% block page_center %} - <div id="wrapper"> - <div id="room"> - <div id="CAFull"> - {% block content%} - {% endblock%} - - </div> - <div id="tail" style="clear:both;"> - {% block tail %} - {% endblock %} - </div> - </div> - <div class="spacer3"></div> - </div> - {% endblock %} - {% if settings.USE_CUSTOM_FOOTER|or_preview:request %} - {% ifequal settings.CUSTOM_FOOTER_MODE|or_preview:request "above" %} - <div id="custom_footer"> - {{ settings.CUSTOM_FOOTER|or_preview:request|static_content:settings.CUSTOM_FOOTER_RENDER_MODE }} - </div> - {% endifequal %} - <div id="ground"> - {% ifequal settings.CUSTOM_FOOTER_MODE|or_preview:request "replace" %} - {{ settings.CUSTOM_FOOTER|or_preview:request|static_content:settings.CUSTOM_FOOTER_RENDER_MODE }} - {% else %} - {% include "footer.html" %} - {% endifequal %} - </div> - {% ifequal settings.CUSTOM_FOOTER_MODE|or_preview:request "below" %} - <div id="custom_footer"> - {{ settings.CUSTOM_FOOTER|or_preview:request|static_content:settings.CUSTOM_FOOTER_RENDER_MODE }} - </div> - {% endifequal %} - {% else %} - <div id="ground"> - {% include "footer.html" %} - </div> - {% endif %} - {% block endjs %} - {% endblock %} - {% if settings.GOOGLE_ANALYTICS_KEY %} - <script type="text/javascript"> - var _gaq = _gaq || []; - _gaq.push(['_setAccount', '{{ settings.GOOGLE_ANALYTICS_KEY }}']); - _gaq.push(['_trackPageview']); - - (function() { - var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; - ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; - var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); - })(); - </script> - {% endif %} - </div> - - <!-- Put all elements with fixed position here, IE6 fixed position fix: http://ryanfait.com/position-fixed-ie6/ --> - <div class="notify" style="display:none"> - {% autoescape off %} - {% if user_messages %} - {% for message in user_messages %} - <p class="darkred">{{ message }}</p> - {% endfor %} - {% endif %} - {% endautoescape %} - <a id="close-notify" onclick="notify.close(true)">×</a> - </div> - </body> -</html> -<!-- end template base_content.html --> diff --git a/forum/skins/default/templates/.svn/text-base/close.html.svn-base b/forum/skins/default/templates/.svn/text-base/close.html.svn-base deleted file mode 100644 index 2e8af8d335da9b09b9b1aebd229dc690527de30c..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/close.html.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -{% extends "base_content.html" %} -<!-- template close.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Close question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $('#btBack').bind('click', function(){ history.back(); }); - }); - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Close question" %} -</div> -<div id="main-body" style="width:100%;margin-bottom:10px"> - <p>{% trans "Close the question" %}: <a href="{{ question.get_absolute_url }}"> - <strong>{{ question.get_question_title }}</strong></a> - </p> - - <form id="fmclose" action="{% url close question.id %}" method="post" > - {% csrf_token %} - <p> - <strong>{% trans "Reasons" %}:</strong> {{ form.reason }} - </p> - <div id="" style="padding-top:20px"> - <input type="submit" value="{% trans "OK to close" %}" class="submit" /> - <input id="btBack" type="button" class="submit" value="{% trans "Cancel" %}" /> - - </div> - - </form> -</div> -{% endblock %} -<!-- end template close.html --> diff --git a/forum/skins/default/templates/.svn/text-base/email_base.html.svn-base b/forum/skins/default/templates/.svn/text-base/email_base.html.svn-base deleted file mode 100644 index 211b394442682b0cff77c75b584899d2a20ac1c5..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/email_base.html.svn-base +++ /dev/null @@ -1,47 +0,0 @@ -{% load extra_filters %} -{% load extra_tags %} -{% load email_tags %} -{% load i18n %} - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <style type="text/css"> - body { - background: #FFF; - font-size: 12px; - line-height: 150%; - margin: 0; - padding: 0; - color: #000; - font-family: sans-serif; - } - - #wrapper { - width: 600px; - margin: auto; - padding: 0; - } - - a img { - border: none; - } - </style> - </head> - <body> - <a href="{% fullurl index %}"> - <img src="cid:logo" title="{% trans "home" %}" alt="{{settings.APP_TITLE}} logo"/> - </a> - <br /> - <p>{{ settings.APP_TITLE }}</p> - <br /><br /> - <div id="wrapper"> - <div id="room"> - <div id="CALeft"> - {% block content%} - {% endblock%} - </div> - </div> - <div class="spacer3"></div> - </div> - </body> -</html> \ No newline at end of file diff --git a/forum/skins/default/templates/.svn/text-base/feedback.html.svn-base b/forum/skins/default/templates/.svn/text-base/feedback.html.svn-base deleted file mode 100644 index 690e9439a73307315470d24b7250202149937922..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/feedback.html.svn-base +++ /dev/null @@ -1,72 +0,0 @@ -{% extends "base_content.html" %} -<!-- template about.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Feedback" %}{% endspaceless %}{% endblock %} -{% block forejs %} -{% endblock %} -{% block content %} -<div class="headNormal"> -{% trans "Give us your feedback!" %} -</div> -<div class="content"> - <form method="post" action="{% url feedback %}" accept-charset="utf-8"> - {% csrf_token %} - {% if user.is_authenticated %} - <p class="message"> - {% blocktrans with user.username as user_name %} - <span class='big strong'>Dear {{user_name}}</span>, we look forward to hearing your feedback. - Please type and send us your message below. - {% endblocktrans %} - <p> - {% else %} - <p class="message"> - {% blocktrans %} - <span class='big strong'>Dear visitor</span>, we look forward to hearing your feedback. - Please type and send us your message below. - {% endblocktrans %} - </p> - <div class="form-row"><label for="id_name">{{form.name.label}}</label><br/>{{form.name}}</div> - <div class="form-row"> - <label for="id_email">{{form.email.label}} - {% if form.errors.email %} - <strong>(please enter a valid email)</strong> - {% endif %} - </label><br/>{{form.email}} - </div> - {% endif %} - <div class="form-row"> - <label for="id_message">{{form.message.label}} - {% if form.errors.message %} - <strong>{% trans "(this field is required)" %}</strong> - {% endif %} - </label> - <br/> - {{form.message}} - </div> - - {% if form.recaptcha %} - <div class="form-row"> - <label for="recaptcha_response_field">Are you a human? - {% if form.errors.recaptcha %} - <strong>{% trans "(wrong captcha)" %}</strong> - {% endif %} - </label> - <br/> - <div style="float: left;"> - {{ form.recaptcha }} - </div> - <div class="clear"></div> - </div> - {% endif %} - - {{form.next}} - <div class="submit-row"> - <input type="submit" class="submit" value="{% trans "Send Feedback" %}"/> - <input type="submit" class="submit" name="cancel" value="{% trans "Cancel" %}"/> - </div> - </form> -</div> -{% endblock %} -<!-- end template about.html --> diff --git a/forum/skins/default/templates/.svn/text-base/footer.html.svn-base b/forum/skins/default/templates/.svn/text-base/footer.html.svn-base deleted file mode 100644 index f5090aa6322acea722c145db93539cdf165e76dc..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/footer.html.svn-base +++ /dev/null @@ -1,19 +0,0 @@ -{% load extra_tags ui_registry i18n %} - - -<div> - <div class="footerLinks" > - {% loadregistry footer_links %}<span class="link-separator"> |</span>{% endloadregistry %} - </div> - <p> - <a href="http://osqa.net" target="_blank" title="OSQA {{ settings.OSQA_VERSION }} ({{ settings.SVN_REVISION }})"> - powered by OSQA - </a> - </p> -</div> - <div id="licenseLogo"> - <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"> - <img src="{% media "/media/images/by-sa-88x31.png" %}" title="Creative Commons: Attribution - Share Alike" alt="cc-by-sa" width="88" height="31" /> - </a> - </div> - diff --git a/forum/skins/default/templates/.svn/text-base/header.html.svn-base b/forum/skins/default/templates/.svn/text-base/header.html.svn-base deleted file mode 100644 index 0e3a73f7d0805b9ef9fc76770bf9fa60e9670149..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/header.html.svn-base +++ /dev/null @@ -1,48 +0,0 @@ -<!-- template header.html --> -{% load extra_tags ui_registry i18n extra_filters markup %} - - <div id="roof"> - - <div id="logo"> - <a href="{% url index %}"> - <img src="{{ settings.APP_LOGO }}" title="{% trans "back to home page" %}" alt="{{settings.APP_TITLE}} logo"/> - </a> - </div> - - <div id="top"> - {% loadregistry header_links %}{% endloadregistry %} - </div> - - <div id="nav"> - {% loopregistry page_top_tabs %}{% spaceless %} - <a id="nav_{{ tab_name }}"{% ifequal tab tab_name %} class="on"{% endifequal %} href="{{ tab_url }}" >{{ tab_title }}</a> - {% endspaceless %}{% endloopregistry %} - <a id="nav_ask" href="{% url ask %}" class="special">{% trans "ask a question" %}</a> - </div> - </div> - - <div class="clear"></div> - - <div id="searchBar"> - <form action="{% url search %}" method="get"> - {% csrf_token %} - <div> - <input type="text" class="searchInput" value="{{ keywords }}" name="q" id="keywords" /> - <input type="submit" name="Submit" value="{% trans "search" %}" class="searchBtn" /> - </div> - <div class="options"> - <input id="type-question" type="radio" value="question" name="t" - checked="checked" /><label for="type-question">{% trans "questions" %}</label> - <input id="type-tag" type="radio" value="tag" name="t" /><label for="type-tag">{% trans "tags" %}</label> - <input id="type-user" type="radio" value="user" name="t" /><label for="type-user">{% trans "users" %}</label> - </div> - </form> - </div> - - {% if settings.USE_ANNOUNCEMENT_BAR|or_preview:request %} - <div id="announcement"> - {{ settings.ANNOUNCEMENT_BAR|or_preview:request|static_content:settings.ANNOUNCEMENT_BAR_RENDER_MODE }} - </div> - {% endif %} - -<!-- end template header.html --> diff --git a/forum/skins/default/templates/.svn/text-base/index.html.svn-base b/forum/skins/default/templates/.svn/text-base/index.html.svn-base deleted file mode 100644 index 94552e60490184e8a83b847fc40643cdb6a5ac1d..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/index.html.svn-base +++ /dev/null @@ -1,30 +0,0 @@ -{% extends "questions.html" %} -<!-- index.html --> -{% load general_sidebar_tags %} -{% load question_list_tags %} -{% load i18n %} -{% block fulltitle %}{{ settings.APP_TITLE }}{% endblock %} -{% block sidebar %} - {% if not request.user.is_authenticated %} - {% if settings.SHOW_WELCOME_BOX %} - <div class="boxA"> - <h3>{% trans "welcome to " %}{{ settings.APP_SHORT_NAME }}</h3> - <div class="body"> - {{ settings.APP_INTRO|safe }} - <div class="more"><a href="{% url about %}">{% trans "about" %} </a></div> - <div class="more"><a href="{% url faq %}">{% trans "faq" %} </a></div> - </div> - </div> - {% endif %} - {% endif %} - {% include "question_list/count.html" %} - {% sidebar_upper %} - {% if request.user.is_authenticated %} - {% tag_selector %} - {% endif %} - {% sidebar_lower %} - {% recent_tags %} - {% recent_awards %} -{% endblock %} -<!-- index.html --> - diff --git a/forum/skins/default/templates/.svn/text-base/logout.html.svn-base b/forum/skins/default/templates/.svn/text-base/logout.html.svn-base deleted file mode 100644 index 650ba044fc2dcd2cfa5c5f711481fabccd3d25c1..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/logout.html.svn-base +++ /dev/null @@ -1,23 +0,0 @@ -{% extends "base_content.html" %} -<!-- template logout.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Logout" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $('#btLogout').bind('click', function(){ window.location.href='{% url user_signout %}?next={{ next }}'; }); - }); - </script> -{% endblock %} -{% block content %} -<div class="headNormal"> - {% trans "Logout" %} -</div> -<div id="main-body" style="width:100%"> - <p>{% trans "As a registered user you can login with your OpenID, log out of the site or permanently remove your account." %}</p> - <input id="btLogout" type="button" class="submit" value="{% trans "Logout now" %}"><!-- style="width:150px">--> -</div> -{% endblock %} -<!-- end logout.html --> diff --git a/forum/skins/default/templates/.svn/text-base/markdown_help.html.svn-base b/forum/skins/default/templates/.svn/text-base/markdown_help.html.svn-base deleted file mode 100644 index 78e11ce71b97b2e07e616b85212862cf7d904312..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/markdown_help.html.svn-base +++ /dev/null @@ -1,250 +0,0 @@ -{% extends "base_content.html" %} -{% load extra_tags %} -{% load humanize %} -{% load i18n %} - -{% block fulltitle %}{% spaceless %}{% trans "Markdown Help" %}{% endspaceless %}{% endblock %} - -{% block forejs %} - <link rel="stylesheet" type="text/css" media="all" href="{% media "/media/style/markdown_help.css" %}" /> -{% endblock %} - -{% block content %} - <div id="main-wrapper"><br /><br /> - <div id="heading"> - <h1>{% trans "Markdown Syntax" %}</h1> - <p>{% blocktrans %}This document describes some of the more important parts of Markdown (for writers, that is). There's a lot more to the syntax than is mentioned here, though. To get the full syntax documentation, go to John Gruber's <a href="http://daringfireball.net/projects/markdown/syntax" rel="nofollow">Markdown Syntax</a> page{% endblocktrans %}</p> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Headers" %}</h2> - <div class="section-description"> - {% trans "For top-level headers underline the text with equal signs. For second-level headers use dashes to underline." %} - </div> - <table class="section-example"><tr> - <td> - <code>{% trans "This is an H1" %}</code><br /> - <code>============= </code> - </td> - <td> - <h1>{% trans "This is an H1" %}</h1> - </td> - </tr></table> - - <table class="section-example"><tr> - <td> - <code>{% trans "This is an H2" %}</code><br /> - <code>-------------</code> - </td> - <td> - <h2>{% trans "This is an H2" %}</h2> - </td> - </tr></table> - - <div class="section-description"> - {% blocktrans %}If you would rather, you can prefix headers with a hash (#) symbol instead. The number of hash symbols indicates the header level. For example, a single hash indicates a header level of one while two indicates the second header level:{% endblocktrans %} - </div> - <table class="section-example"><tr> - <td> - <code># {% trans "This is an H1" %}</code> - </td> - <td> - <h1>{% trans "This is an H1" %}</h1> - </td> - </tr></table> - - <table class="section-example"><tr> - <td> - <code>## {% trans "This is an H2" %}</code> - </td> - <td> - <h2>{% trans "This is an H2" %}</h2> - </td> - </tr></table> - - <table class="section-example"><tr> - <td> - <code>### {% trans "This is an H3" %}</code> - </td> - <td> - <h3>{% trans "This is an H3" %}</h3> - </td> - </tr></table> - - <div class="section-description"> - {% trans "Which you choose is a matter of style. Whichever you thinks looks better in the text document. In both cases, the final, fully formatted, document looks the same." %} - </div> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Paragraphs" %}</h2> - <div class="section-description"> - {% trans "Paragraphs are surrounded by blank lines." %} - </div> - <div class="section-example"> - <code>{% trans "This is paragraph one." %}</code> - </div><br /> - <div class="section-example"> - <code>{% trans "This is paragraph two." %}</code> - </div> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Links" %}</h2> - <div class="section-description"> - {% blocktrans %} - There are two parts to every link. - The first is the actual text that the user will see and it is surrounded by brackets. - The second is address of the page you wish to link to and it is surrounded in parenthesis. - {% endblocktrans %} - </div> - <table class="section-example"><tr> - <td> - <code>[{% trans "link text" %}]({% trans "http://example.com/" %})</code> - </td> - <td> - <a>{% trans "link text" %}</a> - </td> - </tr></table> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Formatting" %}</h2> - <div class="section-description"> - {% trans "To indicate bold text surround the text with two star (*) symbols or two underscore (_) symbols:" %} - </div> - <table class="section-example"><tr> - <td> - <code>**{% trans "This is bold" %}**</code> - </td> - <td> - <strong>{% trans "This is bold" %}</strong> - </td> - </tr></table> - <table class="section-example"><tr> - <td> - <code>__{% trans "This is also bold" %}__</code> - </td> - <td> - <strong>{% trans "This is also bold" %}</strong> - </td> - </tr></table> - - <div class="section-description"> - {% trans "To indicate italicized text surround the text with a single star (*) symbol or underscore (_) symbol:" %} - </div> - <table class="section-example"><tr> - <td> - <code>*{% trans "This is italics" %}*</code> - </td> - <td> - <i>{% trans "This is italics" %}</i> - </td> - </tr></table> - <table class="section-example"><tr> - <td> - <code>_{% trans "This is also italics" %}_</code> - </td> - <td> - <i>{% trans "This is also italics" %}</i> - </td> - </tr></table> - - <div class="section-description"> - {% trans "To indicate italicized and bold text surround the text with three star (*) symbol or underscore (_) symbol:" %} - </div> - <table class="section-example"><tr> - <td> - <code>***{% trans "This is bold and italics" %}***</code> - </td> - <td> - <strong><i>{% trans "This is bold and italics" %}</i></strong> - </td> - </tr></table> - <table class="section-example"><tr> - <td> - <code>___{% trans "This is also bold and italics" %}___</code> - </td> - <td> - <strong><i>{% trans "This is also bold and italics" %}</i></strong> - </td> - </tr></table> - </div> - - - <div class="section"> - <h2 class="section-title">{% trans "Blockquotes" %}</h2> - <div class="section-description"> - {% trans "To create an indented area use the right angle bracket (>) character before each line to be included in the blockquote." %} - </div> - <table class="section-example"><tr> - <td> - <code>> {% trans "This is part of a blockquote." %}</code><br /> - <code>> {% trans "This is part of the same blockquote." %}</code> - </td> - <td> - <p style="padding-left:15px;">{% trans "This is part of a blockquote." %}<br />{% trans "This is part of the same blockquote." %}</p> - </td> - </tr></table> - - <div class="section-description"> - {% trans "Rather than putting it in front of each line to include in the block quote you can put it at the beginning and end the quote with a newline." %} - </div> - <table class="section-example"><tr> - <td> - <code>> {% trans "This is part of a blockquote." %}</code><br /> - <code>{% trans "This continues the blockquote even though there's no bracket." %}</code><br /><br /> - <code>{% trans "The blank line ends the blockquote." %}</code> - </td> - <td> - <p style="padding-left:15px;">{% trans "This is part of a blockquote." %} <br /> {% trans "This continues the blockquote even though there's no bracket." %}</p> - <p>{% trans "The blank line ends the blockquote." %}</p> - </td> - </tr></table> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Lists" %}</h2> - <div class="section-description"> - {% trans "To create a numbered list in Markdown, prefix each item in the list with a number followed by a period and space. The number you use actually doesn't matter." %} - </div> - <table class="section-example"><tr> - <td> - <code>1. {% trans "Item" %} 1</code><br /> - <code>2. {% trans "Item" %} 2</code><br /> - <code>3. {% trans "Item" %} 3</code> - </td> - <td> - <ol> - <li>{% trans "Item" %} 1</li> - <li>{% trans "Item" %} 2</li> - <li>{% trans "Item" %} 3</li> - </ol> - </td> - </tr></table> - - <div class="section-description"> - {% trans "To create a bulleted list, prefix each item in the list with a star (*) character." %} - </div> - <table class="section-example"><tr> - <td> - <code>* {% trans "A list item" %}</code><br /> - <code>* {% trans "Another list item" %}</code><br /> - <code>* {% trans "A third list item" %}</code> - </td> - <td> - <ul> - <li>{% trans "A list item" %}</li> - <li>{% trans "Another list item" %}</li> - <li>{% trans "A third list item" %}</li> - </ul> - </td> - </tr></table> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "A Lot More" %}</h2> - <div class="section-description">{% blocktrans %}There's a lot more to the Markdown syntax than is mentioned here. But for creative writers, this covers a lot of the necessities. To find out more about Markdown than you'd ever want to really know, <a href="http://daringfireball.net/projects/markdown/syntax" target="_blank" rel="nofollow">go to the Markdown page where it all started</a>.{% endblocktrans %}</div> - </div> - </div> -{% endblock %} diff --git a/forum/skins/default/templates/.svn/text-base/notarobot.html.svn-base b/forum/skins/default/templates/.svn/text-base/notarobot.html.svn-base deleted file mode 100644 index dae82b4a546cc821d53d415ac312fadf82fd7ee5..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/notarobot.html.svn-base +++ /dev/null @@ -1,16 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Please prove that you are a Human Being" %}{% endspaceless %}{% endblock %} -{% block content %} -{% comment %} this form is set up to be used in wizards {% endcomment %} -<form name="notarobot" action="." method="POST"> - {% csrf_token %} - <div> - {{form}} - </div> - <input type="submit" value="{% trans "I am a Human Being" %}" class="submit" style="float:left"/> - <input type="hidden" name="{{ step_field }}" value="{{ step0 }}" /> - {{ previous_fields|safe }} - </form> -</form> -{% endblock %} diff --git a/forum/skins/default/templates/.svn/text-base/opensearch.html.svn-base b/forum/skins/default/templates/.svn/text-base/opensearch.html.svn-base deleted file mode 100644 index 0c9d6bf270a65eb2b5602959f0d3e5743122bb54..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/opensearch.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n %} -<?xml version="1.0" encoding="UTF-8"?> -<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> - <ShortName>{{ settings.APP_SHORT_NAME }} {% trans "Search" %}</ShortName> - <Description>{% trans "Search" %} {{ settings.APP_SHORT_NAME }} {% trans "using your browser." %}</Description> - <Tags>{{ settings.APP_KEYWORDS }}</Tags> - <Url type="text/html" template="{{ settings.APP_URL }}/{% trans "search" %}/?q={searchTerms}&t=question"/> -</OpenSearchDescription> \ No newline at end of file diff --git a/forum/skins/default/templates/.svn/text-base/page.html.svn-base b/forum/skins/default/templates/.svn/text-base/page.html.svn-base deleted file mode 100644 index cf9b459d0ee06de653ad07f6a9ce3e809cac6fc5..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/page.html.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -{% extends base %} -{% load i18n markup node_tags general_sidebar_tags %} -{% block title %}{% spaceless %}{{ page.title }}{% endspaceless %}{% endblock %} - -{% block content %} -<div class="headNormal">{{ page.title }}</div> -<div class="content"> -{{ body }} -</div> -{% if page.extra.comments %} - {% comments page request.user %} -{% endif %} -{% endblock %} - -{% ifequal page.extra.template "sidebar" %} - {% block sidebar %} - {% sidebar_upper %} - {% if page.extra.sidebar %} - {% if page.extra.sidebar_wrap %}<div class="boxC"><div class="body">{% endif %} - {{ sidebar }} - {% if page.extra.sidebar_wrap %}</div></div>{% endif %} - {% endif %} - {% sidebar_lower %} - {% endblock %} -{% endifequal %} - - diff --git a/forum/skins/default/templates/.svn/text-base/pagesize.html.svn-base b/forum/skins/default/templates/.svn/text-base/pagesize.html.svn-base deleted file mode 100644 index 5037f1f6c7b06eb4be852f93a40cbbb67bd9ccb2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/pagesize.html.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -<!-- template pagesize.html --> -{% spaceless %} -{% load i18n %} -{% if is_paginated %} -<div class="paginator"> - <span class="text">{% trans "posts per page" %}</span> - {% ifequal pagesize 10 %} - <span class="curr">10</span> - {% else %} - <span class="page"><a href="{{base_url}}pagesize=10">10</a></span> - {% endifequal %} - - {% ifequal pagesize 30 %} - <span class="curr">30</span> - {% else %} - <span class="page"><a href="{{base_url}}pagesize=30">30</a></span> - {% endifequal %} - - {% ifequal pagesize 50 %} - <span class="curr">50</span> - {% else %} - <span class="page"><a href="{{base_url}}pagesize=50">50</a></span> - {% endifequal %} -</div> -{% endif %} -{% endspaceless %} -<!-- end template pagesize.html --> diff --git a/forum/skins/default/templates/.svn/text-base/paginator.html.svn-base b/forum/skins/default/templates/.svn/text-base/paginator.html.svn-base deleted file mode 100644 index 2fba5425185779331fc3b83a6ebd578ac20f9700..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/paginator.html.svn-base +++ /dev/null @@ -1,38 +0,0 @@ -<!-- paginator.html --> -{% spaceless %} -{% load i18n %} -{% if is_paginated %} -<div class="paginator"> -{% if has_previous %}<span class="prev"><a href="{{base_url}}page={{ previous }}{{ extend_url }}" title="{% trans "previous" %}"> -« {% trans "previous" %}</a></span>{% endif %} -{% if not in_leading_range %} - {% for num in pages_outside_trailing_range %} - <span class="page"><a href="{{base_url}}page={{ num }}{{ extend_url }}" >{{ num }}</a></span> - {% endfor %} - ... -{% endif %} - -{% for num in page_numbers %} - {% ifequal num page %} - {% ifequal pages 1 %} - {% else %} - <span class="curr" title="{% trans "current page" %}">{{ num }}</span> - {% endifequal %} - {% else %} - <span class="page"><a href="{{base_url}}page={{ num }}{{ extend_url }}" title="{% trans "page number " %}{{ num }}{% trans "number - make blank in english" %}">{{ num }}</a></span> - {% endifequal %} -{% endfor %} - -{% if not in_trailing_range %} - ... - {% for num in pages_outside_leading_range reversed %} - <span class="page"><a href="{{base_url}}page={{ num }}{{ extend_url }}" title="{% trans "page number " %}{{ num }}{% trans "number - make blank in english" %}">{{ num }}</a></span> - {% endfor %} -{% endif %} - -{% if has_next %}<span class="next"><a href="{{base_url}}page={{ next }}{{ extend_url }}" title="{% trans "next page" %}">{% trans "next page" %} »</a></span>{% endif %} -</div> -{% endif %} - -{% endspaceless %} -<!-- end paginator.html --> diff --git a/forum/skins/default/templates/.svn/text-base/privacy.html.svn-base b/forum/skins/default/templates/.svn/text-base/privacy.html.svn-base deleted file mode 100644 index e66086ddfe854c344f28db3d56f4ca4dabae8268..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/privacy.html.svn-base +++ /dev/null @@ -1,42 +0,0 @@ -{% extends "base_content.html" %} -<!-- privacy.html --> -{% load extra_tags %} -{% load i18n %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Privacy policy" %}{% endspaceless %}{% endblock %} -{% block forejs %} -{% endblock %} -{% block content %} -<div class="headNormal"> - {% trans "Privacy policy" %} -</div> -<div id="main-body" style="width:100%"> - <p> - {% trans "general message about privacy" %} - </p> - - <h3 class="subtitle">{% trans "Site Visitors" %}</h3> - <p> - {% trans "what technical information is collected about visitors" %} - </p> - - <h3 class="subtitle">{% trans "Personal Information" %}</h3> - <p> - {% trans "details on personal information policies" %} - </p> - - <h3 class="subtitle">{% trans "Other Services" %}</h3> - <p> - {% trans "details on sharing data with third parties" %} - </p> - - <h3 class="subtitle">Cookies</h3> - <p> - {% trans "cookie policy details" %} - </p> - <h3 class="subtitle">{% trans "Policy Changes" %}</h3> - <p>{% trans "how privacy policies can be changed" %} - </p> -</div> -{% endblock %} -<!-- end privacy.html --> diff --git a/forum/skins/default/templates/.svn/text-base/question.html.svn-base b/forum/skins/default/templates/.svn/text-base/question.html.svn-base deleted file mode 100644 index 228285730fd1946d0fbfe269fd765e4b6d94d203..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/question.html.svn-base +++ /dev/null @@ -1,331 +0,0 @@ -{% extends "base.html" %} -<!-- question.html --> -{% load node_tags %} -{% load extra_tags %} -{% load extra_filters %} -{% load general_sidebar_tags %} -{% load smart_if %} -{% load humanize %} -{% load i18n %} -{% load cache %} -{% block metadescription %}{{ question.meta_description }}{% endblock %} -{% block metakeywords %}{{question.tagname_meta_generator}}{% endblock %} -{% block meta %} - <link rel="canonical" href="{{settings.APP_BASE_URL}}{{question.get_absolute_url}}" /> - <link rel="alternate" type="application/rss+xml" title="RSS" href="{{ question.get_absolute_url }}?type=rss"> -{% endblock %} -{% block title %}{% spaceless %}{{ question.headline }}{% endspaceless %}{% endblock %} -{% block forejs %} - {% if not question.nis.closed %} - <script type='text/javascript' src='{% media "/media/js/osqa.question.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/jquery.caret.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - - {% if embed_youtube_videos %} - <script type='text/javascript' src='{% media "/media/js/viewbox_min.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/youtube.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/viewbox.css" %}" /> - {% endif %} - {% endif %} - - <script type="text/javascript"> - $().ready(function(){ - $("#nav_questions").attr('className',"on"); - var answer_sort_tab = "{{ tab_id }}"; - - if (answer_sort_tab) { - $("#" + answer_sort_tab).attr('className',"on"); - } - - $('#editor').TextAreaResizer(); - - //toggle preview of editor - var display = true; - var txt = "[{% trans "hide preview" %}]"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "[{% trans "show preview" %}]" : "[{% trans "hide preview" %}]"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - }); - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - - if($("textarea#editor")[0].value != "") { - return yourWorkWillBeLost(e); - } - - var commentBoxes = $("textarea.commentBox"); - for(var index = 0; index < commentBoxes.length; index++) { - if(commentBoxes[index].value != "") { - return yourWorkWillBeLost(e); - } - } - } - window.addEventListener('beforeunload', beforeUnload, true); - </script> - <noscript> - <style> - .comment.not_top_scorer { - display: block; - } - .comment-form-container { - display: block; - } - .div.comment-tools { - display: none; - } - </style> - </noscript> -{% endblock %} - -{% block content %} -<div class="headNormal"> - <h1><a href="{{ question.get_absolute_url }}">{{ question.headline }}</a></h1> -</div> -<div id="main-body" class=""> - <div id="askform"> - <table style="width:100%;" id="question-table" {% post_classes question %}> - <tr> - <td style="width:30px;vertical-align:top"> - <div class="vote-buttons"> - {% vote_buttons question request.user %} - {% favorite_mark question request.user %} - </div> - </td> - <td> - <div id="item-right"> - <div class="question-body"> - {{ question.html|safe }} - </div> - <div id="question-tags" class="tags-container tags"> - {% for tag in question.tagname_list %} - <a href="{% url tag_questions tag|urlencode %}" class="post-tag tag-link-{{ tag }}" - title="{% blocktrans with tag as tagname %}see questions tagged '{{ tagname }}'{% endblocktrans %}" rel="tag">{{ tag }}</a> - {% endfor %} - </div> - <div id="question-controls" class="post-controls"> - {% post_controls question request.user %} - {% wiki_symbol request.user question %} - </div> - <div class="post-update-info-container"> - {% contributors_info question %} - </div> - {% comments question request.user %} - </div> - - </td> - </tr> - </table> - {% if question.nis.closed %} - <div class="question-status" style="margin-bottom:15px"> - <h3> - {% blocktrans with question.nstate.closed.extra as close_reason %}The question has been closed for the following reason "{{ close_reason }}" by{% endblocktrans %} - <a href="{{ question.nstate.closed.by.get_profile_url }}">{{ question.nstate.closed.by.username }}</a> - {% diff_date question.nstate.closed.at %} - </h3> - </div> - {% endif %} - {% if answers %} - <hr/> - <div class="tabBar"> - <a name="sort-top"></a> - <div class="headQuestions"> - {% blocktrans count answers.paginator.count as counter %}One Answer:{% plural %}{{counter}} Answers:{% endblocktrans %} - </div> - {{ answers.paginator.sort_tabs }} - </div> - {{ answers.paginator.page_numbers }} - - {% for answer in answers.paginator.page %} - <a name="{{ answer.id }}"></a> - <div id="answer-container-{{ answer.id }}" class="answer {% post_classes answer %}{% ifequal answer.id focused_answer_id %} focusedAnswer{% endifequal %}"> - <table style="width:100%;"> - <tr> - <td style="width:30px;vertical-align:top"> - <div class="vote-buttons"> - {% vote_buttons answer request.user %} - {% accept_button answer request.user %} - </div> - </td> - <td> - <div class="item-right"> - <div class="answer-body"> - {{ answer.html|safe }} - </div> - <div class="answer-controls post-controls"> - {% post_controls answer request.user %} - {% wiki_symbol request.user answer %} - </div> - <div class="post-update-info-container"> - {% contributors_info answer %} - </div> - {% comments answer request.user %} - </div> - </td> - </tr> - </table> - </div> - {% endfor %} - <div class="paginator-container-left"> - {{ answers.paginator.page_numbers }} - </div> - {% endif %} - <form id="fmanswer" action="{% url answer question.id %}" method="post"> - {% csrf_token %} - <div style="clear:both"> - </div> - - {% if not question.closed %} - <div style="padding:10px 0 0 0;"> - {% spaceless %} - <div class="headNormal"> - {% if answers %} - {% trans "Your answer" %} - {% else %} - {% trans "Be the first one to answer this question!" %} - {% endif %} - </div> - {% endspaceless %} - </div> - {% comment %} - {% if not request.user.is_authenticated %} - <div class="message">{% trans "You can answer anonymously and then login." %}</div> - {% else %} - <p class="message"> - {% ifequal request.user question.author %} - {% trans "Answer your own question only to give an answer." %} - {% else %} - {% trans "Please only give an answer, no discussions." %} - {% endifequal %} - {% if not request.user.email_valid_and_can_answer %} - {% blocktrans %}Remember, your answer will not be published until you validate your email.{% endblocktrans %} - <a href="{% url send_validation_email %}">{% trans "Send me a validation link." %}</a> - {% endif %} - </p> - {% endif %} - {% endcomment %} - - <div id="description" class="" > - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ answer.text }} - <div class="preview-toggle"> - <table width="100%"> - <tr> - <td> - <span id="pre-collapse" - title="{% trans "Toggle the real time Markdown editor preview" %}"> - {% trans "toggle preview" %} - </span> - </td> - <td style="text-align: right;" id="editor-metrics"></td> - {% if settings.WIKI_ON %} - <td style="text-align:right;"> - {{ answer.wiki }} - <span style="font-weight:normal;cursor:help" - title="{{answer.wiki.help_text}}"> - {{ answer.wiki.label_tag }} - </span> - </td> - {% endif %} - </tr> - - </table> - </div> - {{ answer.text.errors }} - <div id="previewer" class="wmd-preview"></div> - </div> - - {% if answer.recaptcha %} - <div class="question-captcha" style="float: left;"> - {{ answer.recaptcha.errors }} - {{ answer.recaptcha }} - </div> - <div class="clear"></div> - {% endif %} - - <p><span class="form-error"></span></p> - <input type="button" - {% if user.is_anonymous %} - value="{% trans "Login/Signup to Post Your Answer" %}" - {% else %} - {% if user == question.author %} - value="{% trans "Answer Your Own Question" %}" - {% else %} - value="{% trans "Answer the question" %}" - {% endif %} - {% endif %} - class="submit" style="float:left" onclick="submitClicked(event, this.form)"/> - {% endif %} - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -<div class="boxC" id="subscription_box"> - {% include "subscription_status.html" %} -</div> - -{% markdown_help %} - -{% sidebar_upper %} - -{% cache 60 questions_tags settings.APP_URL question.id %} -<div class="boxC"> - <p> - {% trans "Question tags" %}: - </p> - <p class="tags" > - {% for tag in question.tags.all %} - <a href="{% url tag_questions tag.name|urlencode %}" - class="tag-link-{{ tag.name }}" - title="{% trans "see questions tagged"%}'{{tag.name}}'{% trans "using tags" %}" - rel="tag">{{ tag.name }}</a> <span class="tag-number">×{{ tag.used_count|intcomma }}</span><br/> - {% endfor %} - </p> - <p> - {% trans "question asked" %}: <strong title="{{ question.added_at }}">{% diff_date question.added_at %}</strong> - </p> - <p> - {% trans "question was seen" %}: <strong>{{ question.view_count|intcomma }} {% trans "times" %}</strong> - </p> - <p> - {% trans "last updated" %}: <strong title="{{ question.last_activity_at }}">{% diff_date question.last_activity_at %}</strong> - </p> -</div> -{% endcache %} -{% sidebar_lower %} -<div class="boxC"> - <h3 class="subtitle">{% trans "Related questions" %}</h3> - <div class="questions-related"> - - {% for question in similar_questions %} - <p> - <a href="{{ question.get_absolute_url }}">{{ question.headline }}</a> - </p> - {% endfor %} - - </div> -</div> - -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end question.html --> diff --git a/forum/skins/default/templates/.svn/text-base/question_edit.html.svn-base b/forum/skins/default/templates/.svn/text-base/question_edit.html.svn-base deleted file mode 100644 index 4f4395080af6cc136e1e8796111129f745f13941..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/question_edit.html.svn-base +++ /dev/null @@ -1,168 +0,0 @@ -{% extends "base.html" %} -<!-- question_edit.html --> -{% load i18n %} -{% load extra_tags %} -{% block title %}{% spaceless %}{% trans "Edit question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - <script type="text/javascript"> - //todo move javascript out - $().ready(function(){ - $("#nav_questions").attr('className',"on"); - $('#editor').TextAreaResizer(); - - - //toggle preview of editor - var display = true; - var txt = "[{% trans "hide preview" %}]"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "[{% trans "show preview" %}]" : "[{% trans "hide preview" %}]"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - - //Tags autocomplete action - $("#id_tags").autocomplete("{% url matching_tags %}", { - matchContains: true, - max: 20, - multiple: true, - multipleSeparator: " ", - highlightItem: true, - scroll: true, - scrollHeight: 300, - /*formatItem: function(row, i, max) { - return row.n + " ("+ row.c +")"; - }, - formatResult: function(row, i, max){ - return row.n; - }*/ - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - - $('#id_revision').unbind().change(function(){ - $("#select_revision").click(); - }); - - init = $("textarea#editor")[0].value; - - title = $("input#id_title")[0].value; - body = $("textarea#editor")[0].value; - tag = $("input#id_tags")[0].value; - }); - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - $("input.submit")[1].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - if($("input#id_title")[0].value != title || $("textarea#editor")[0].value != body || $("input#id_tags")[0].value != tag) { - return yourWorkWillBeLost(e); - } - } - window.addEventListener('beforeunload', beforeUnload, true); - - var init = ""; - var title = ""; - var body = ""; - var tag = ""; - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% block edittype %}{% trans "Edit question" %}{% endblock %} [<a href="{{ question.get_absolute_url }}">{% trans "back" %}</a>] -</div> -<div id="main-body" class="ask-body"> - <div id="askform"> - <form id="fmedit" action="" method="post"> - {% csrf_token %} - <label for="id_revision" ><strong>{% trans "revision" %}:</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"%}"> - </div> - <div class="form-item"> - <label for="id_title" ><strong>{{ form.title.label_tag }}:</strong></label> <span class="form-error"></span><br/> - {{ form.title }} {{ form.title.errors }} - <div class="title-desc"> - {{ form.title.help_text }} - </div> - </div> - <div class="form-item"> - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ form.text }} - <span class="form-error"></span> - <div class="preview-toggle"> - <table width="100%"> - <tr> - <td> - <span id="pre-collapse" title="{% trans "Toggle the real time Markdown editor preview" %}">{% trans "toggle preview" %}</span> - </td> - <td style="text-align: right;" id="editor-metrics"></td> - {% if settings.WIKI_ON %} - <td style="text-align:right;"> - {{ form.wiki }} <span style="color:#000;cursor:help" title="{{form.wiki.help_text}}">{{ form.wiki.label_tag }} </span> - </td> - {% endif %} - </tr> - - </table> - </div> - <div id="previewer" class="wmd-preview"></div> - </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> - <strong>{{ form.summary.label_tag }}</strong> <br/> - {{ form.summary }} {{ form.summary.errors }} - <div class="title-desc"> - {{ form.summary.help_text }} - </div> - - {% if form.recaptcha %} - <div class="question-captcha" style="float: left"> - {{ form.recaptcha.errors }} - {{ form.recaptcha }} - </div> - <div class="clear"></div> - {% endif %} - - <div class="error" ></div> - <input type="button" value="{% trans "Save edit" %}" class="submit" onclick="submitClicked(event, this.form)" /> - <input type="button" value="{% trans "Cancel" %}" class="submit" onclick="submitClicked(event, null); history.back(-1);" /> - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -{% include "question_edit_tips.html" %} -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end question_edit.html --> diff --git a/forum/skins/default/templates/.svn/text-base/question_edit_tips.html.svn-base b/forum/skins/default/templates/.svn/text-base/question_edit_tips.html.svn-base deleted file mode 100644 index ce7ac952c8b348d859d3d6a95dd36be33d0921d0..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/question_edit_tips.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -<!-- question_edit_tips.html --> -{% load markup %} -{% load i18n general_sidebar_tags %} -<div class="boxC" id="title_side_bar"> - <p class="subtitle darkred">{% trans "Title Tips" %}</p> - <div class="list-item"> - {{ settings.QUESTION_TITLE_TIPS|markdown:"settingsparser" }} - <p class='info-box-follow-up-links'> - <a href="{% url faq %}" target="_blank" title="{% trans "see frequently asked questions" %}">{% trans "faq" %} »</a> - </p> - </div> -</div> - -{% markdown_help %} - -<div class="boxC" id="tags_side_bar" align="left"> - <p class="subtitle darkred">{% trans "What Are Tags" %}</p> - <div class="list-item"> - {{ settings.QUESTION_TAG_TIPS|markdown:"settingsparser" }} - </div> -</div> - - -<!-- end question_edit_tips.html --> - \ No newline at end of file diff --git a/forum/skins/default/templates/.svn/text-base/question_retag.html.svn-base b/forum/skins/default/templates/.svn/text-base/question_retag.html.svn-base deleted file mode 100644 index 6a5266c68f0830540fc6447b874df8e7c8c84643..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/question_retag.html.svn-base +++ /dev/null @@ -1,89 +0,0 @@ -{% extends "base.html" %} -<!-- question_retag.html --> -{% load extra_tags %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Change tags" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - - $().ready(function(){ - $("#id_tags").autocomplete("{% url matching_tags %}", { - matchContains: true, - max: 20, - multiple: true, - multipleSeparator: " ", - highlightItem: true, - scroll: true, - scrollHeight: 300, - /*formatItem: function(row, i, max) { - return row.n + " ("+ row.c +")"; - }, - formatResult: function(row, i, max){ - return row.n; - }*/ - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - - }); - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Change tags" %} [<a href="{{ question.get_absolute_url }}">{% trans "back" %}</a>] -</div> -<div id="main-body" class="ask-body"> - <div id="askform"> - <form id="fmretag" action="{% url edit_question question.id %}" method="post"> - {% csrf_token %} - <h3> - {{ question.headline }} - </h3> - <div id="description" class="edit-content-html"> - {{ question.html|safe }} - </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 "Save edit" %}" class="submit" /> - <input type="button" value="{% trans "Cancel" %}" class="submit" onclick="history.back(-1);" /> - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -<div class="boxC"> - <p class="subtitle">{% trans "Why use and modify tags?" %}</p> - <ul class="list-item"> - <li> - {% trans "tags help us keep Questions organized" %} - </li> - <li> - {% trans "tag editors receive special awards from the community" %} - </li> - </ul> - <p class='info-box-follow-up-links'> - <a href="{% url faq %}">faq »</a> - </p> -</div> - -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end question_retag.html --> diff --git a/forum/skins/default/templates/.svn/text-base/question_summary_list_roll.html.svn-base b/forum/skins/default/templates/.svn/text-base/question_summary_list_roll.html.svn-base deleted file mode 100644 index b2ce45fc76f1afc9dfd1f78b6e006796ef170e3a..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/question_summary_list_roll.html.svn-base +++ /dev/null @@ -1,55 +0,0 @@ - <div class="qstA"> - <h2> - <a href="{{ question.get_absolute_url }}">{{ question.headline }}</a> - </h2> - <div class="stat"> - <table> - <tr> - <td><span class="num">{{ question.answer_count|intcomma }}</span> </td> - <td><span class="num">{{ question.score|intcomma }}</span> </td> - <td><span class="num">{{ question.view_count|decorated_int|safe }}</span> </td> - </tr> - <tr> - <td><span class="unit">{% trans "answers" %}</span></td> - <td><span class="unit">{% trans "votes" %}</span></td> - <td><span class="unit">{% trans "views" %}</span></td> - </tr> - </table> - </div> - - <div class="summary"> - {{ question.summary }}... - </div> - - {% ifequal tab_id 'active'%} - {% if question.wiki and settings.WIKI_ON %} - <span class="from wiki">{% trans "community wiki" %}</span> - <span class="date" title="{{ question.added_at }}">{% diff_date question.added_at %}</span> - {% else %} - <div class="from"> - {% comment %}{% gravatar question.last_activity_by 24 %}{% endcomment %} - <span class="author"><a href="{{ question.last_activity_by.get_profile_url }}">{{ question.last_activity_by }}</a></span> - <span class="score">{% get_score_badge question.last_activity_by %} </span> - <span class="date" title="{{ question.last_activity_at }}">{% diff_date question.last_activity_at %}</span> - </div> - {% endif %} - {% else %} - {% if question.wiki and settings.WIKI_ON %} - <span class="from wiki">{% trans "community wiki" %}</span> - <span class="date" title="{{ question.added_at }}">{% diff_date question.added_at %}</span> - {% else %} - <div class="from"> - {% comment %}{% gravatar question.author 24 %}{% endcomment %} - <span class="author"><a href="{{ question.author.get_profile_url }}">{{ question.author }}</a></span> - <span class="score">{% get_score_badge question.author %} </span> - <span class="date" title="{{ question.added_at }}">{% diff_date question.added_at %}</span> - </div> - {% endif %} - {% endifequal %} - - <div class="tags"> - {% for tag in question.tagname_list %} - <a class="tag-link-{{ tag }}" href="{% url tag_questions tag|urlencode %}" title="{% trans "see questions tagged" %}'{{ tag }}'{% trans "using tags" %}" rel="tag">{{ tag }}</a> - {% endfor %} - </div> - </div> diff --git a/forum/skins/default/templates/.svn/text-base/questions.html.svn-base b/forum/skins/default/templates/.svn/text-base/questions.html.svn-base deleted file mode 100644 index f470ba3ef36fb58e5ed971a911ddb8d137660c04..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/questions.html.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -{% extends "base.html" %} -<!-- questions.html --> -{% load question_list_tags %} -{% load i18n %} -{% load extra_tags %} -{% load general_sidebar_tags %} - -{% block title %}{% spaceless %}{{ page_title }}{% endspaceless %}{% endblock %} - -{% block metadescription %}{% spaceless %} - {% if tag %} - {% blocktrans with settings.APP_TITLE as app_title %}Questions and answers about {{ tag }} on {{ app_title }}{% endblocktrans %} - {% endif %} -{% endspaceless %}{% endblock %} - -{% block meta %} - <link rel="alternate" type="application/rss+xml" title="RSS" href="{{ feed_url }}" /> -{% endblock %} - -{% block content %} - -<div class="tabBar"> - {% include "question_list/title.html" %} - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" href="{{ feed_url }}" title="{% trans "subscribe to question RSS feed" %}"></a> - {{ questions.paginator.sort_tabs }} -</div> -<div id="listA">{% for question in questions.paginator.page %} - {% if show_summary %} - {% question_list_item question question_summary=yes %} - {% else %} - {% question_list_item question %} - {% endif %} -{% endfor %}</div> -{% endblock %} - -{% block tail %} - <div class="pager">{{ questions.paginator.page_numbers }}</div> - <div class="pagesize">{{ questions.paginator.page_sizes }}</div> -{% endblock %} - -{% block sidebar %} - {% include "question_list/count.html" %} - {% sidebar_upper %} - {% tag_selector %} - {% sidebar_lower %} - {% question_list_related_tags questions.paginator.page %} - -{% endblock %} -<!-- end questions.html --> diff --git a/forum/skins/default/templates/.svn/text-base/reopen.html.svn-base b/forum/skins/default/templates/.svn/text-base/reopen.html.svn-base deleted file mode 100644 index 7de075ee14411f4b7df0c9ff643c2550d0ab9580..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/reopen.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% extends "base_content.html" %} -<!-- reopen.html --> -{% load extra_tags %} -{% load i18n %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Reopen question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $('#btBack').bind('click', function(){ history.back(); }); - }); - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Reopen question" %} -</div> -<div id="main-body" style="width:100%"> - <p>{% trans "Open the previously closed question" %}: <a href="{{ question.get_absolute_url }}"><span class="big">{{ question.headline }}</span></a> - - </p> - <p><strong>{% trans "The question was closed for the following reason " %}"{{ question.get_close_reason_display }}"{% trans "reason - leave blank in english" %} <a href="{{ question.closed_by.get_profile_url }}">{{ question.closed_by.username }}</a> {% trans "on "%} {% diff_date question.closed_at %}<font class="darkred">{% trans "date closed" %}</font> - </strong> - </p> - - <form id="fmclose" action="{% url reopen question.id %}" method="post"> - {% csrf_token %} - <div id="" style="padding:20px 0 20px 0"> - <input type="submit" value="{% trans "Reopen this question" %}" class="submit" /> - <input id="btBack" type="button" value="{% trans "Cancel" %}" class="submit" /> - </div> - </form> -</div> -{% endblock %} -<!-- end reopen.html --> diff --git a/forum/skins/default/templates/.svn/text-base/revisions.html.svn-base b/forum/skins/default/templates/.svn/text-base/revisions.html.svn-base deleted file mode 100644 index 234b764447c88716456de64ba78b97e35eeed472..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/revisions.html.svn-base +++ /dev/null @@ -1,78 +0,0 @@ -{% extends "base_content.html" %} -{% load node_tags %} -{% load extra_tags %} -{% load i18n %} -{% load extra_filters %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Revision history" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - - $(document).ready(function() { - rev_bodies = $('div.rev-body'); - if(rev_bodies.length > 0)toggleRev(rev_bodies.length); - if(rev_bodies.length > 1)toggleRev(rev_bodies.length-1); - - for(var index = 0; index < rev_bodies.length; index++) { - rev_bodies.get(index); - } - }); - - function toggleRev(id) { - var rev_body = $('div#rev-body-' + id).get(0); - var rev_arrow = $('img#rev-arrow-' + id).get(0); - if (rev_body.style.display == "none") { - rev_body.style.display = ""; - rev_arrow.src="{% media "/media/images/expander-arrow-hide.gif" %}" - } else { - rev_body.style.display = "none"; - rev_arrow.src="{% media "/media/images/expander-arrow-show.gif" %}" - } - } - - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Revision history" %}[<a href="{{ post.get_absolute_url }}">{% trans "back" %}</a>] -</div> -<div id="main-body" class=""> - <div id="revisions"> - {% for revision in revisions %} - <div class="revision"> - <div id="rev-header-{{ revision.inst.revision }}" class="header {% ifequal post.author revision.inst.author %}author{% endifequal %}"> - <div class="header-controls"> - <table width="100%"> - <tr> - <td width="20" style="vertical-align:middle"><img id="rev-arrow-{{ revision.inst.revision }}" - class="rev-arrow" - onclick="toggleRev({{ revision.inst.revision }})" - src="{% media "/media/images/expander-arrow-show.gif" %}" - alt="{% trans "click to hide/show revision" %}"/> - </td> - <td width="30px" style="vertical-align:middle"><span class="revision-number" title="{% trans "revision" %} {{ revision.inst.revision }}">{{ revision.inst.revision }}</span></td> - <td width="200px" style="vertical-align:middle"> - <div class="summary"><span>{{ revision.inst.summary }}</span></div> - </td> - <td align="right"> - <div class="revision-mark" > - {% reviser_info revision.inst %} - </div> - </td> - </tr> - - </table> - </div> - </div> - <div id="rev-body-{{ revision.inst.revision }}" class="diff body rev-body" style="display:none"> - {{ revision.diff|safe }} - </div> - </div> - {% endfor %} - </div> -</div> -{% endblock %} - -{% block endjs %} -{% endblock %} diff --git a/forum/skins/default/templates/.svn/text-base/search.html.svn-base b/forum/skins/default/templates/.svn/text-base/search.html.svn-base deleted file mode 100644 index 05b9de6fad3fa018b2b204e51195094ad0cf065d..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/search.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% extends "base_content.html" %} - -{% load i18n %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% blocktrans with settings.APP_SHORT_NAME as app_name %} - Search in {{ app_name }} - {% endblocktrans %} -</div> -<div id="main-body" style="text-align: center; height: 400px;"> -<form action="{% url search %}" method="get"> - {% csrf_token %} - <div> - <input type="text" class="searchInput" value="{{ keywords }}" name="q" id="keywords" style="width: 600px" /> - <input type="submit" name="Submit" value="{% trans "search" %}" class="searchBtn" /> - </div> - <div class="options"> - <input id="type-question" type="radio" value="question" name="t" - checked="checked" /><label for="type-question">{% trans "questions" %}</label> - <input id="type-tag" type="radio" value="tag" name="t" /><label for="type-tag">{% trans "tags" %}</label> - <input id="type-user" type="radio" value="user" name="t" /><label for="type-user">{% trans "users" %}</label> - </div> -</form> -</div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/.svn/text-base/sitemap_section_index.xml.svn-base b/forum/skins/default/templates/.svn/text-base/sitemap_section_index.xml.svn-base deleted file mode 100644 index 70333757e0788d129c537e4d2629ca530d392651..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/sitemap_section_index.xml.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> -{% for location in locations %} - <sitemap><loc>{{ location }}</loc></sitemap> -{% endfor %} -</sitemapindex> diff --git a/forum/skins/default/templates/.svn/text-base/static.html.svn-base b/forum/skins/default/templates/.svn/text-base/static.html.svn-base deleted file mode 100644 index eff93ae64585fa7226e65e0d6808941e20cad7d0..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/static.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% load markup %} -{% block title %}{% spaceless %}{{ title }}{% endspaceless %}{% endblock %} - -{% block content %} -<div class="headNormal">{{ title }}</div> -<div class="content"> -{{ content|markdown:"settingsparser" }} -</div> -{% endblock %} - diff --git a/forum/skins/default/templates/.svn/text-base/subscription_status.html.svn-base b/forum/skins/default/templates/.svn/text-base/subscription_status.html.svn-base deleted file mode 100644 index 49ec02f7ec10ed365824d255d222bee0afadc7df..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/subscription_status.html.svn-base +++ /dev/null @@ -1,43 +0,0 @@ -{% spaceless %} -{% load i18n extra_tags %} -<h3 class="subtitle">{% trans "Follow this question" %}</h3> -<strong>{% trans "By Email" %}:</strong> -{% if request.user.is_authenticated %} - <div class="subscription-status"> - {% if subscription %} - {% if subscription.auto_subscription %} - <p>{% trans "You were automatically subscribed to this question." %}</p> - {% else %} - <p>{% trans "You are subscribed to this question." %}</p> - {% endif %} - {% else %} - <p>{% trans "You are not subscribed to this question." %}</p> - {% endif %} - </div> - <p><a class="ajax-command sidebar_button subscription_switch" href="{% url subscribe_simple id=question.id %}"> - {% if subscription %} - {% trans "unsubscribe me" %} - {% else %} - {% trans "subscribe me" %} - {% endif %} - </a></p> - <p> - {% blocktrans with request.user.get_user_subscriptions_url as subscriptions_url %} - (you can adjust your notification settings on your <a href="{{ subscriptions_url }}">profile</a>) - {% endblocktrans %} - </p> -{% else %} - <p>{% trans "Once you sign in you will be able to subscribe for any updates here" %}</p> -{% endif %} -<strong>{% trans "By RSS" %}:</strong> -<p> - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" - href="{{ question.get_absolute_url }}?type=rss" title="{% trans "subscribe to answers" %}"></a> - {% trans "Answers" %} -</p> -<p> - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" - href="{{ question.get_absolute_url }}?type=rss&comments=yes" title="{% trans "subscribe to comments and answers" %}"></a> - {% trans "Answers and Comments" %} -</p> -{% endspaceless %} diff --git a/forum/skins/default/templates/.svn/text-base/tags.html.svn-base b/forum/skins/default/templates/.svn/text-base/tags.html.svn-base deleted file mode 100644 index 56062c554e6c3d85580d5673c23d13eb5d3afae9..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/tags.html.svn-base +++ /dev/null @@ -1,63 +0,0 @@ -{% extends "base_content.html" %} -<!-- tags.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Tag list" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - /*<![CDATA[*/ - $().ready(function(){ - $("#ipSearchTag").focus(); - - var orderby = "{{ tab_id }}"; - if(orderby != "used" && orderby != "name") - orderby = "used"; - $("#sort_" + orderby).attr('className',"on"); - $("#type-tag").attr('checked',true); - - Hilite.exact = false; - Hilite.elementid = "searchtags"; - Hilite.debug_referrer = location.href; - }); - /*]]>*/ - </script> -{% endblock %} -{% block content %} -<!-- Tabs --> -<div class="tabBar"> - <div class="headQuestions">{% trans "Tag list" %}</div> - {{ tags.paginator.sort_tabs }} -</div> -<div id="searchtags"> -<p> -{% if stag %} - {% trans "All tags matching query" %} '<span class="darkred"><strong>{{ stag }}</strong></span>': -{% endif %} -{% if not tags.paginator.count %} - <span>{% trans "Nothing found" %}</span> -{% endif %} -</p> -{% if tags.paginator.count %} -<ul class="tagsList tags"> -{% for tag in tags.paginator.page %} - <li> - <a class="tag-link-{{ tag }}" href="{% url tag_questions tag|urlencode %}" title="{% trans "see questions tagged" %}'{{ tag }}'{% trans "using tags" %}" rel="tag"> - {{ tag }} - </a> - <span class="tag-number">× {{ tag.used_count|intcomma }}</span> - <br/> - - </li> -{% endfor %} -</ul> -{% endif %} -</div> - -{% endblock %} -{% block tail %} -<div class="pager"> - {{ tags.paginator.page_numbers }} -</div> -{% endblock %} -<!-- end tags.html --> diff --git a/forum/skins/default/templates/.svn/text-base/user.html.svn-base b/forum/skins/default/templates/.svn/text-base/user.html.svn-base deleted file mode 100644 index 61c63a0d3cb6dac88fb9c9b432153380ea32fe24..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/.svn/text-base/user.html.svn-base +++ /dev/null @@ -1,43 +0,0 @@ -{% extends "base_content.html" %} -<!-- user.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load smart_if %} - -{% block title %}{% spaceless %}{{ page_title }}{% endspaceless %}{% endblock %} -{% block forestyle%} - <style type="text/css"> - .history-table td { padding: 5px; } - .user-stats-table { margin-left:50px; } - </style> -{% endblock %} -{% block forejs %} - {% if request.user.is_superuser or request.user == view_user %} - <script type="text/javascript">google.load("jquery", "1.4.2");google.load("jqueryui", "1.8.1");</script> - <script type="text/javascript"> - response_commands['update_profile_karma'] = function(new_karma) { - $('#user-reputation').css('background', 'yellow'); - $('#user-reputation').html(new_karma); - $('#user-reputation').animate({ backgroundColor: "transparent" }, 1000); - } - </script> - <link rel="stylesheet" href="http://jquery-ui.googlecode.com/svn/tags/latest/themes/base/jquery-ui.css" type="text/css" media="all" /> - <link rel="stylesheet" href="http://static.jquery.com/ui/css/demo-docs-theme/ui.theme.css" type="text/css" media="all" /> - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/user.css" %}"/> - {% endif %} - <style type="text/css"> - #room { - border: 0; - } - </style> - {% block userjs %}{% endblock %} -{% endblock %} -{% block content %} - <div id="mainbar-full"> - {% include "users/info.html" %} - {% include "users/tabs.html" %} - {% block usercontent %} - {% endblock %} - </div> -{% endblock %}<!-- end user.html --> diff --git a/forum/skins/default/templates/auth/.svn/all-wcprops b/forum/skins/default/templates/auth/.svn/all-wcprops deleted file mode 100644 index 3ec48f388600f0ddc7e48425cf911e7d98d3b3c5..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/all-wcprops +++ /dev/null @@ -1,53 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1243/osqa/trunk/forum/skins/default/templates/auth -END -temp_login_email.html -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/520/osqa/trunk/forum/skins/default/templates/auth/temp_login_email.html -END -temp_login_request.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/auth/temp_login_request.html -END -signin.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/auth/signin.html -END -complete.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1243/osqa/trunk/forum/skins/default/templates/auth/complete.html -END -mail_validation.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/520/osqa/trunk/forum/skins/default/templates/auth/mail_validation.html -END -mail_already_validated.html -K 25 -svn:wc:ra_dav:version-url -V 95 -/svnroot/!svn/ver/634/osqa/trunk/forum/skins/default/templates/auth/mail_already_validated.html -END -auth_settings.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/auth/auth_settings.html -END -welcome_email.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/520/osqa/trunk/forum/skins/default/templates/auth/welcome_email.html -END diff --git a/forum/skins/default/templates/auth/.svn/entries b/forum/skins/default/templates/auth/.svn/entries deleted file mode 100644 index 50b45025db2f0e171d5eeaf2167d77a715976e35..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/entries +++ /dev/null @@ -1,300 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/auth -http://svn.osqa.net/svnroot - - - -2012-04-04T23:10:46.497540Z -1243 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -mail_already_validated.html -file - - - - -2012-06-22T20:34:42.408569Z -493d791cae46829d6fa3e31d43a5ce22 -2010-12-27T20:39:21.471947Z -634 -jordan - - - - - - - - - - - - - - - - - - - - - -458 - -auth_settings.html -file - - - - -2012-06-22T20:34:42.408569Z -cc2a81973e5af0a1cd51507a7bfac489 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1879 - -welcome_email.html -file - - - - -2012-06-22T20:34:42.412567Z -1f8ffcdbacf4ed74b0463f0a32aa1854 -2010-07-12T18:51:59.506597Z -520 -matt - - - - - - - - - - - - - - - - - - - - - -2024 - -temp_login_email.html -file - - - - -2012-06-22T20:34:42.412567Z -e2884a82a56c7bb1a64759fdc72f3625 -2010-07-12T18:51:59.506597Z -520 -matt - - - - - - - - - - - - - - - - - - - - - -1250 - -temp_login_request.html -file - - - - -2012-06-22T20:34:42.412567Z -661cefe6b08d2a2f7e07ff616b02bed8 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1222 - -signin.html -file - - - - -2012-06-22T20:34:42.412567Z -2aa1853bb793c9d485273bb4e71b9f29 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -8084 - -complete.html -file - - - - -2012-06-22T20:34:42.412567Z -4c2b2596304a4fbd9c12a5da3505fda5 -2012-04-04T23:10:46.497540Z -1243 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -5111 - -mail_validation.html -file - - - - -2012-06-22T20:34:42.408569Z -febd7967ea0ea92e5c91237c5f451afc -2010-07-12T18:51:59.506597Z -520 -matt - - - - - - - - - - - - - - - - - - - - - -1228 - diff --git a/forum/skins/default/templates/auth/.svn/prop-base/complete.html.svn-base b/forum/skins/default/templates/auth/.svn/prop-base/complete.html.svn-base deleted file mode 100644 index 13eec79857182dd56cbc1e26e0c803c9fcd473ab..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/prop-base/complete.html.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 415 -/osqa/branches/cacheimp/forum/skins/default/templates/auth/complete.html:874-939 -/osqa/branches/carpenter/forum/skins/default/templates/auth/complete.html:691-725 -/osqa/branches/hernani/forum/skins/default/templates/auth/complete.html:772-832 -/osqa/branches/jambazov/forum/skins/default/templates/auth/complete.html:675-831 -/osqa/branches/notification-config/forum/skins/default/templates/auth/complete.html:693-845 -END diff --git a/forum/skins/default/templates/auth/.svn/text-base/auth_settings.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/auth_settings.html.svn-base deleted file mode 100644 index 969036d6c499650c900381ca809df8c95d6c6533..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/auth_settings.html.svn-base +++ /dev/null @@ -1,39 +0,0 @@ -{% extends "user.html" %} -<!-- changepw.html --> -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "Authentication settings" %}{% endspaceless %}{% endblock %} -{% block usercontent %} -<h2>{% trans "Authentication settings" %}</h2> -{% if auth_keys %} - <p class="message">{% blocktrans %}These are the external authentication providers currently associated with your account.{% endblocktrans %}</p> - <div> - {% for key in auth_keys %} - <p>{{ key.name }} (<a href="{% url user_remove_external_provider id=key.id %}">{% trans "remove" %}</a>)</p> - {% endfor %} - </div> -{% endif %} -{% if not auth_keys %} - <p class="message">{% blocktrans %}You currently have no external authentication provider associated with your account.{% endblocktrans %}</p> -{% endif %} -{% ifequal view_user request.user %} - <input type="button" class="submit" value="{% trans "Add new provider" %}" onclick="window.location='{% url user_add_external_provider %}'" /> -{% endifequal %} -{% if allow_local_auth %} -{% if has_password %} - <p class="message">{% blocktrans %}This is where you can change your password. Make sure you remember it!{% endblocktrans %}</p> -{% else %} - <p class="message">{% blocktrans %}You can set up a password for your account, so you can login using standard username and password!{% endblocktrans %}</p> -{% endif %} -<div class="aligned"> - <form action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - <ul id="changepw-form" class="form-horizontal-rows"> - {{form.as_ul}} - </ul> - <div class="submit-row"><input type="submit" class="submit" value="{% if has_password %}{% trans "Change password" %}{% endif %}{% if not has_password %}{% trans "Create password" %}{% endif %}" /></div> - </form> - </div> -{% endif %} -{% endblock %} -<!-- end changepw.html --> diff --git a/forum/skins/default/templates/auth/.svn/text-base/complete.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/complete.html.svn-base deleted file mode 100644 index 1c327bfeb4b0d59ef9443224ce54af3083a19ccc..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/complete.html.svn-base +++ /dev/null @@ -1,110 +0,0 @@ -{% extends "base_content.html" %} -<!-- complete.html --> -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "Connect your OpenID with this site" %}{% endspaceless %}{% endblock %} -{% block content %} - <div id="main-bar" class="headNormal"> - {% trans "Connect your OpenID with your account on this site" %} - </div> - <div id="completetxt" > - <div class="message"> - {# Only display the OpenID greeting if a provider is detected. #} - {% if provider %} - <p> - <b>{% trans "You are here for the first time with " %}{{ provider }}</b> - </p> - {% endif %} - <p> - {% trans "Please choose your screen name and confirm your email address. A valid email address is necessary to receive notifications about activity in the areas of this community you're most interested in, and will help you become an involved participant in this community." %} - </p> - </div> - <p style="display:none">{% trans "This account already exists, please use another." %}</p> - </div> - - {% if form1.errors %} - <ul class="errorlist"> - {% if form1.non_field_errors %} - {% for error in form1.non_field_errors %} - <li>{{error}}</li> - {% endfor %} - {% endif %} - </ul> - {% endif %} - - <div class="login"> - <form name="fregister" action="" method="POST"> - {% csrf_token %} - {{ form1.next }} - <div class="form-row-vertical margin-bottom"> - <label for="id_username">{{ form1.username.label }}</label> - {% if form1.username.errors %} - <p class="error">{{ form1.username.errors|join:", " }}</p> - {% endif %} - {{ form1.username }} - </div> - <div class="form-row-vertical margin-bottom"> - <label for="id_email">{{ form1.email.label }}</label> - {% if form1.email.errors %} - <p class="error">{{ form1.email.errors|join:", " }}</p> - {% endif %} - {{ form1.email }} - </div> - <div class="form-row-vertical margin-bottom"> - <label for="id_real_name">{{ form1.real_name.label }}</label> - {% if form1.real_name.errors %} - <p class="error">{{ form1.real_name.errors|join:", " }}</p> - {% endif %} - {{ form1.real_name }} - </div> - {% if form1.password1 %} - <div class="form-row-vertical margin-bottom"> - <label for="password1_id">{{ form1.password1.label }}</label> - {% if form1.password1.errors %} - <p class="error">{{ form1.password1.errors|join:", " }}</p> - {% endif %} - {{ form1.password1 }} - </div> - <div class="form-row-vertical margin-bottom"> - <label for="password2_id">{{ form1.password2.label }}</label> - {% if form1.password2.errors %} - <p class="error">{{ form1.password2.errors|join:", " }}</p> - {% endif %} - {{ form1.password2 }} - </div> - {% endif %} - {% if form1.recaptcha %} - <div class="form-row-vertical margin-bottom"> - <label for="recaptcha_id">{{ form1.recaptcha.label }}</label> - {% if form1.recaptcha.errors %} - <p class="error">{{ form1.recaptcha.errors|join:", " }}</p> - {% endif %} - {{ form1.recaptcha }} - </div> - {% endif %} - <div class="submit-row"><input type="submit" class="submit" name="bnewaccount" id="bnewaccount" value="{% trans "create account" %}"/></div> - </form> - </div> - {% comment %}<!-- this form associates openID with an existing password-protected account, not yet functional --> - {% if form2 %} - <div class="login" style="display:none"> - <form name="fverify" action="{% url user_register %}" method="POST"> - {% csrf_token %} - {{ form2.next }} - <fieldset style="padding:10px"> - <legend class="big">{% trans "Existing account" %}</legend> - <div class="form-row"><label for="id_username">{% trans "user name" %}</label><br/>{{ form2.username }}</div> - <div class="form-row"><label for="id_passwordl">{% trans "password" %}</label><br/>{{ form2.password }}</div> - <p><span class='big strong'>(Optional) receive updates by email</span> - only sent when there are any.</p> - <!--todo double check translation from chinese 确认 = "Register" --> - <div class="submit-row"> - <input type="submit" class="submit" name="bverify" value="{% trans "Register" %}"/> - <a href="{% url user_sendpw %}">{% trans "Forgot your password?" %}</a> - </div> - </fieldset> - </form> - </div> - {% endif %} - {% endcomment %} -{% endblock %} -<!-- end complete.html --> diff --git a/forum/skins/default/templates/auth/.svn/text-base/mail_already_validated.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/mail_already_validated.html.svn-base deleted file mode 100644 index dd37fa38ff9e68caef981d12c2aa907b6734cd4c..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/mail_already_validated.html.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -{% extends "base_content.html" %} -<!-- complete.html --> -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "This e-mail has already been validated" %}{% endspaceless %}{% endblock %} -{% block content %} - -<div class="error"> - -<h1>{% blocktrans %}Already validated{% endblocktrans %}</h1> - -<p>{% blocktrans %}This e-mail has already been validated{% endblocktrans %}</p> - -</div> - -{% endblock %} -<!-- end complete.html --> diff --git a/forum/skins/default/templates/auth/.svn/text-base/mail_validation.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/mail_validation.html.svn-base deleted file mode 100644 index 82029d620862c0f7dd6952ddd1a9ebbb4887cfc7..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/mail_validation.html.svn-base +++ /dev/null @@ -1,30 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Your email validation link {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}">{% trans "Please use the following link to help us verify your email address:" %}</p> - - <p style="{{ p_style }}"><a style="{{ a_style }}" href="{% fullurl auth_validate_email user=recipient.id,code=validation_code %}">{% trans "Validate my email address" %}</a></p> - - <p style="{{ p_style }}">{% trans "If the above link is not clickable, copy and paste this url into your web browser's address bar:" %}</p> - - <p style="{{ p_style }}">{% fullurl auth_validate_email user=recipient.id,code=validation_code %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% trans "Copy and paste this url into your web browser's address bar to help us verify your email address:" %} - -{% fullurl auth_validate_email user=recipient.id,code=validation_code %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/auth/.svn/text-base/signin.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/signin.html.svn-base deleted file mode 100644 index 5514cc52823ecdaed5a8922a1d8574f62d39381f..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/signin.html.svn-base +++ /dev/null @@ -1,188 +0,0 @@ -{% extends "base.html" %} - -{% load i18n %} -{% load extra_tags %} - -{% block title %}{% spaceless %}{% trans "Login" %}{% endspaceless %}{% endblock %} - -{% block forejs %} - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/auth.css" %}"/> - {% for provider in all_providers %} - {% for location in provider.extra_css %} - <link rel="stylesheet" type="text/css" media="screen" href="{{ location }}"/> - {% endfor %} - {% endfor %} -{% endblock %} - -{% block content %} - {% for provider in all_providers %} - {% if provider.pre_code %} - {{ provider.pre_code|safe }} - {% endif %} - {% endfor %} - <div class="headNormal"> - {% trans "User login" %} - </div> - {% if msg %} - <p class="error">{{ msg }}</p> - {% endif %} - {% for provider in top_stackitem_providers %} - <form class="signin_form" method="POST" action="{% url auth_provider_signin provider=provider.id %}" accept-charset="utf-8"> - {% csrf_token %} - {% include provider.stack_item_template %} - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </form> - {% endfor %} - {% if top_stackitem_providers %} - <h3 class="or_label">{% trans 'Or...' %}</h3> - {% endif %} - <div style="width:600px;float:left;margin-bottom:5px;"> - {% blocktrans %} - External login services use <b><a href="http://openid.net/">OpenID</a></b> technology, where your password always stays confidential between - you and your login provider and you don't have to remember another one. - {% endblocktrans %} - </div> - {% if request.user.is_anonymous %} - <div style="width:600px;float:left;margin-bottom:5px;"> - <input type="checkbox" checked="checked" id="validate_email" /> - {% trans "Validate my email after I login." %} - </div> - {% endif %} - <div id="bigicon_providers"> - {% for provider in bigicon_providers %} - <div class="provider_logo big" name="{{ provider.id }}"> - <div class="inner"> - {% ifequal provider.type "DIRECT" %} - <a class="provider_direct" href="{% url auth_provider_signin provider=provider.id %}"> - <img src="{% media provider.icon %}" /> - </a> - {% endifequal %} - {% ifequal provider.type "CUSTOM" %} - {% include provider.code_template %} - {% endifequal %} - {% ifequal provider.type "SIMPLE_FORM" %} - <img alt="{{ provider.simple_form_context.your_what }}" class="simple_form_provider" src="{% media provider.icon %}" /> - {% endifequal %} - </div> - </div> - {% endfor %} - </div> - <div id="smallicon_providers"> - {% for provider in smallicon_providers %} - <div class="provider_logo small" name="{{ provider.id }}"> - <div class="inner"> - {% ifequal provider.type "DIRECT" %} - <a class="provider_direct" href="{% url auth_provider_signin provider=provider.id %}"> - <img src="{% media provider.icon %}" /> - </a> - {% endifequal %} - {% ifequal provider.type "CUSTOM" %} - {% include provider.code_template %} - {% endifequal %} - {% ifequal provider.type "SIMPLE_FORM" %} - <img alt="{{ provider.simple_form_context.your_what }}" class="simple_form_provider" src="{% media provider.icon %}" /> - {% endifequal %} - </div> - </div> - {% endfor %} - </div> - <form name="signin_form" id="signin_form" class="signin_form" method="POST" action=""> - {% csrf_token %} - <div id="signin_form_slot"></div> - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </form> - {% for provider in stackitem_providers %} - <h3 class="or_label">{% trans 'Or...' %}</h3> - <form class="signin_form" method="POST" action="{% url auth_provider_signin provider=provider.id %}" accept-charset="utf-8"> - {% csrf_token %} - {% include provider.stack_item_template %} - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </form> - {% endfor %} - <h3 class="or_label">{% trans 'Or...' %}</h3> - <form name="signin_form" id="dummy_form_unused" class="signin_form" method="POST" action=""> - {% csrf_token %} - <fieldset> - {% trans 'Click' %} <a href="{% url auth_request_tempsignin %}">{% trans 'here' %}</a> {% trans "if you're having trouble signing in." %} - </fieldset> - </form> - <script type="text/html" id="simple_form_template"> - <fieldset id="slot_form"> - <p id="provider_name_slot">{% trans 'Enter your ' %}%%YOUR_WHAT%%</p> - <div><p><span></span> - <input id="input_field" type="text" name="input_field" /><span></span> - <input id="ssignin" name="ssignin" type="submit" value="Login" /> - </p></div> - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </fieldset> - </script> - <script type="text/javascript"> - $(function() { - var signin_url = "{% url auth_provider_signin provider='PROVIDER' %}"; - - function set_validate_email() { - var validate = $('#validate_email').attr('checked') ? 'yes' : 'no'; - $('.validate_email').attr('value', validate); - - $('.provider_direct').each(function() { - var current_url = $(this).attr('href'); - if (!/\?validate_email\=(yes|no)$/.test(current_url)) { - current_url += ('?validate_email=' + validate); - } else { - current_url = current_url.replace(/(yes|no)$/, validate); - } - - $(this).attr('href', current_url); - }) - } - - $('#validate_email').change(set_validate_email); - - function set_form_action(el) { - var provider = el.parents('.provider_logo').attr('name'); - $('#signin_form').attr('action', signin_url.replace('PROVIDER', provider)); - } - - $('.provider_logo').click(function() { - $('.provider_logo').removeClass('selected'); - $(this).addClass('selected'); - }); - - $('.simple_form_provider').click(function() { - $('#signin_form_slot').html(''); - var new_html = $('#simple_form_template').html() - .replace('%%YOUR_WHAT%%', $(this).attr('alt')); - $('#signin_form_slot').html(new_html); - set_form_action($(this)); - set_validate_email(); - }) - - set_validate_email(); - }); - </script> -{% endblock %} - -{% block sidebar %} -<div class="boxC"> - <h3 class="subtitle">{% trans "Why use OpenID?" %}</h3> - <ul class="list-item"> - <li> - {% trans "with openid it is easier" %} - </li> - <li> - {% trans "reuse openid" %} - </li> - <li> - {% trans "openid is widely adopted" %} - </li> - <li> - {% trans "openid is supported open standard" %} - </li> - - </ul> - <p class="info-box-follow-up-links"> - <a href="http://openid.net/what/" target="_blank">{% trans "Find out more" %} </a><br/> - <a href="http://openid.net/get/" target="_blank">{% trans "Get OpenID" %} </a> - </p> -</div> -{% endblock%} diff --git a/forum/skins/default/templates/auth/.svn/text-base/temp_login_email.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/temp_login_email.html.svn-base deleted file mode 100644 index 32ade899f9fab341036be8d16807bf3b5d0d02d0..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/temp_login_email.html.svn-base +++ /dev/null @@ -1,31 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Temporary login link{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %}The following link grants you a one time access to your account at {{ app_name }}.{% endblocktrans %} - </p> - <p style="{{ p_style }}"><a style="{{ a_style }}" href="{% fullurl auth_tempsignin user=recipient.id,code=temp_login_code %}">{% trans "Go to your account" %}</a></p> - - <p style="{{ p_style }}">{% trans "If the above link is not clickable, copy and paste this url into your web browser's address bar:" %}</p> - - <p style="{{ p_style }}">{% fullurl auth_tempsignin user=recipient.id,code=temp_login_code %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}The following url grants you a one time access to your account at {{ app_name }}.{% endblocktrans %} - -{% fullurl auth_tempsignin user=recipient.id,code=temp_login_code %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/auth/.svn/text-base/temp_login_request.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/temp_login_request.html.svn-base deleted file mode 100644 index 70f740e2d8e917318b6d380a893b6725571f8bcf..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/temp_login_request.html.svn-base +++ /dev/null @@ -1,29 +0,0 @@ -{% extends "base.html" %} - -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "Request temporary login key" %}{% endspaceless %}{% endblock %} -{% block content %} -<div class="headNormal">{% trans "Account: request temporary login key" %}</div> -<p class="message">{% blocktrans %} - If you're experiencing problems accessing your account, or if you forgot your password, - here you can request a temporary login key. Fill out your account email and we'll send you a temporary access link that - will enable you to access your account. This token is valid only once and for a limited period of time. - {% endblocktrans %}</p> -<div class="aligned"> - {% if form.errors %} - <ul class="errorlist"> - {% for error in form.errors %} - <li>{{ error }}</li> - {% endfor %} - </ul> - {% endif %} - <form action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - <ul id="changepw-form" class="form-horizontal-rows"> - {{form.as_ul}} - </ul> - <div class="submit-row"><input type="submit" class="submit" value="{% trans "Send link" %}" /></div> - </form> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/auth/.svn/text-base/welcome_email.html.svn-base b/forum/skins/default/templates/auth/.svn/text-base/welcome_email.html.svn-base deleted file mode 100644 index 1adcba2f87e4302603e7d2641a99113d213f3cab..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/auth/.svn/text-base/welcome_email.html.svn-base +++ /dev/null @@ -1,46 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_greeting = True - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Welcome to {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %}Howdy and welcome to {{ app_name }}. We know you're busy, so we'll keep this real simple.{% endblocktrans %}, - </p> - - <p style="{{ p_style }}">{% trans "Here's your login info (store it in a cool dry place):" %}</p> - - <p style="{{ p_style }}">{% trans "Username: " %} {{ recipient.username }}<br /> - <b>{% trans "Password: As IF we would send your password in cleartext!" %}</b></p> - - <p style="{{ p_style }}">{% trans "The following link will help us verify your email address:" %}</p> - - <p style="{{ p_style }}"><a style="{{ a_style }}" href="{% fullurl auth_validate_email user=recipient.id,code=validation_code %}">{% trans "Validate my email address" %}</a></p> - - <p style="{{ p_style }}">{% trans "If the above link is not clickable, copy and paste this url into your web browser's address bar:" %}</p> - - <p style="{{ p_style }}">{% fullurl auth_validate_email user=recipient.id,code=validation_code %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}Howdy and welcome to {{ app_name }}. We know you're busy, so we'll keep this real simple.{% endblocktrans %}, -{% trans "Here's your login info (store it in a cool dry place):" %} - -{% trans "Username: " %} {{ recipient.username }} -{% trans "Password: As IF we would send your password in cleartext!" %} - -{% trans "Copy and paste this url into your web browser's address bar to help us verify your email address:" %} - -{% fullurl auth_validate_email user=recipient.id,code=validation_code %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/feeds/.svn/all-wcprops b/forum/skins/default/templates/feeds/.svn/all-wcprops deleted file mode 100644 index df943c984c88c1b13869b5d1389fb206a3a20e76..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/feeds/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/503/osqa/trunk/forum/skins/default/templates/feeds -END -rss_answer_title.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/503/osqa/trunk/forum/skins/default/templates/feeds/rss_answer_title.html -END -rss_title.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/503/osqa/trunk/forum/skins/default/templates/feeds/rss_title.html -END -rss_description.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/feeds/rss_description.html -END diff --git a/forum/skins/default/templates/feeds/.svn/entries b/forum/skins/default/templates/feeds/.svn/entries deleted file mode 100644 index 33e9f6142c0cb789a59108ddcece206174172dd3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/feeds/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/feeds -http://svn.osqa.net/svnroot - - - -2010-07-08T18:33:06.630780Z -503 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -rss_answer_title.html -file - - - - -2012-06-22T20:34:42.884332Z -0db803ad484722ee79d78c50f587a3e9 -2010-07-08T18:33:06.630780Z -503 -hernani - - - - - - - - - - - - - - - - - - - - - -108 - -rss_title.html -file - - - - -2012-06-22T20:34:42.884332Z -b18ae1e100d6825c13cccaeb3c1e01b0 -2010-07-08T18:33:06.630780Z -503 -hernani - - - - - - - - - - - - - - - - - - - - - -20 - -rss_description.html -file - - - - -2012-06-22T20:34:42.884332Z -bdc61e429a32de6f6fa9cd51e3c8a25e -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -19 - diff --git a/forum/skins/default/templates/feeds/.svn/text-base/rss_answer_title.html.svn-base b/forum/skins/default/templates/feeds/.svn/text-base/rss_answer_title.html.svn-base deleted file mode 100644 index 6b5d5ecd57252aa309337170385066772cba9489..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/feeds/.svn/text-base/rss_answer_title.html.svn-base +++ /dev/null @@ -1,2 +0,0 @@ -{% load i18n %} -{% blocktrans with obj.author.username as author %}Answer by {{ author }}{% endblocktrans %} \ No newline at end of file diff --git a/forum/skins/default/templates/feeds/.svn/text-base/rss_description.html.svn-base b/forum/skins/default/templates/feeds/.svn/text-base/rss_description.html.svn-base deleted file mode 100644 index fa781907e907904d02f0027a19655e6f44207067..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/feeds/.svn/text-base/rss_description.html.svn-base +++ /dev/null @@ -1 +0,0 @@ -{{ obj.html|safe }} \ No newline at end of file diff --git a/forum/skins/default/templates/feeds/.svn/text-base/rss_title.html.svn-base b/forum/skins/default/templates/feeds/.svn/text-base/rss_title.html.svn-base deleted file mode 100644 index be322ee31c34ded5f805643030a1cefb1e4a1f78..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/feeds/.svn/text-base/rss_title.html.svn-base +++ /dev/null @@ -1 +0,0 @@ -{{ obj.title|safe }} \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/all-wcprops b/forum/skins/default/templates/node/.svn/all-wcprops deleted file mode 100644 index 8ae95e6d9de962f66210e63a8b9facbcee33dfc7..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/all-wcprops +++ /dev/null @@ -1,101 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1261/osqa/trunk/forum/skins/default/templates/node -END -convert_to_question.html -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/829/osqa/trunk/forum/skins/default/templates/node/convert_to_question.html -END -report.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/320/osqa/trunk/forum/skins/default/templates/node/report.html -END -comments.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1244/osqa/trunk/forum/skins/default/templates/node/comments.html -END -wiki_symbol.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/329/osqa/trunk/forum/skins/default/templates/node/wiki_symbol.html -END -favorite_mark.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/34/osqa/trunk/forum/skins/default/templates/node/favorite_mark.html -END -reviser_info.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/templates/node/reviser_info.html -END -award_points.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/1261/osqa/trunk/forum/skins/default/templates/node/award_points.html -END -accept_button.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/624/osqa/trunk/forum/skins/default/templates/node/accept_button.html -END -vote_buttons.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/34/osqa/trunk/forum/skins/default/templates/node/vote_buttons.html -END -revision.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/node/revision.html -END -convert_to_comment.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/315/osqa/trunk/forum/skins/default/templates/node/convert_to_comment.html -END -permanent_link.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1029/osqa/trunk/forum/skins/default/templates/node/permanent_link.html -END -comment_skeleton.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/1194/osqa/trunk/forum/skins/default/templates/node/comment_skeleton.html -END -flagged_item.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/298/osqa/trunk/forum/skins/default/templates/node/flagged_item.html -END -post_controls.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/494/osqa/trunk/forum/skins/default/templates/node/post_controls.html -END -contributors_info.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/958/osqa/trunk/forum/skins/default/templates/node/contributors_info.html -END diff --git a/forum/skins/default/templates/node/.svn/entries b/forum/skins/default/templates/node/.svn/entries deleted file mode 100644 index bafb73fad1c0beef4176bb9425931cf5b074c067..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/entries +++ /dev/null @@ -1,572 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/node -http://svn.osqa.net/svnroot - - - -2012-05-09T20:59:46.733114Z -1261 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -flagged_item.html -file - - - - -2012-06-22T20:34:42.852348Z -6a89b3c4e49d6dbda208f2a718a400a1 -2010-05-18T15:58:10.566270Z -298 -qw3rty - - - - - - - - - - - - - - - - - - - - - -126 - -post_controls.html -file - - - - -2012-06-22T20:34:42.856346Z -8875fe9ecf5e0824fa2c544dbe74cffd -2010-07-07T01:33:19.874560Z -494 -hernani - - - - - - - - - - - - - - - - - - - - - -992 - -contributors_info.html -file - - - - -2012-06-22T20:34:42.856346Z -0a73fb99b88c97e1eb4aaefba9938e55 -2011-04-10T15:21:07.747529Z -958 -jordan - - - - - - - - - - - - - - - - - - - - - -1215 - -convert_to_question.html -file - - - - -2012-06-22T20:34:42.856346Z -0951b00f4e410ff11d01dd456bc4e9cb -2011-03-13T01:29:36.233655Z -829 -hernani - - - - - - - - - - - - - - - - - - - - - -184 - -report.html -file - - - - -2012-06-22T20:34:42.856346Z -adab8945bc29a4059b07abf0043d0347 -2010-05-25T01:45:49.169649Z -320 -hernani - - - - - - - - - - - - - - - - - - - - - -441 - -comments.html -file - - - - -2012-06-22T20:34:42.848350Z -6b9e8c806455df30eef0e5b4be1c0f8a -2012-04-06T14:04:20.696707Z -1244 -jordan - - - - - - - - - - - - - - - - - - - - - -3383 - -wiki_symbol.html -file - - - - -2012-06-22T20:34:42.848350Z -d5fc8f65a89702d9c461b1a1197ec3cd -2010-05-25T21:28:23.158598Z -329 -hernani - - - - - - - - - - - - - - - - - - - - - -376 - -favorite_mark.html -file - - - - -2012-06-22T20:34:42.848350Z -790e925d9e1e9b1a0286c4ebf241d3f7 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -388 - -reviser_info.html -file - - - - -2012-06-22T20:34:42.852348Z -91acce27623957282985b1389e6e8e15 -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -402 - -award_points.html -file - - - - -2012-06-22T20:34:42.852348Z -873e2ecb669fe87f10944cd235909b47 -2012-05-09T20:59:46.733114Z -1261 -jordan - - - - - - - - - - - - - - - - - - - - - -2271 - -accept_button.html -file - - - - -2012-06-22T20:34:42.848350Z -d3639f9332a5226b3e6746141f7c88d4 -2010-12-22T22:33:54.794574Z -624 -jordan - - - - - - - - - - - - - - - - - - - - - -1153 - -vote_buttons.html -file - - - - -2012-06-22T20:34:42.852348Z -e8e656e8d88af5294c04e99ea45e238f -2010-04-15T22:54:00.905320Z -34 -hernani - - - - - - - - - - - - - - - - - - - - - -696 - -revision.html -file - - - - -2012-06-22T20:34:42.852348Z -9cce4874dce3e17d89639cceeba6f185 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -333 - -convert_to_comment.html -file - - - - -2012-06-22T20:34:42.852348Z -9779fb5c101403ef4d49d2adb5ef6429 -2010-05-24T11:10:22.346396Z -315 -hernani - - - - - - - - - - - - - - - - - - - - - -254 - -permanent_link.html -file - - - - -2012-06-22T20:34:42.852348Z -87e7dd0ffc6b1a9b8ba88ec491de6c11 -2011-05-07T13:42:43.295163Z -1029 -jordan - - - - - - - - - - - - - - - - - - - - - -1657 - -comment_skeleton.html -file - - - - -2012-06-22T20:34:42.852348Z -3eae45d2ebbeaefc67bf3ecda2a69df2 -2011-10-24T22:14:16.239154Z -1194 -jordan - - - - - - - - - - - - - - - - - - - - - -3480 - diff --git a/forum/skins/default/templates/node/.svn/text-base/accept_button.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/accept_button.html.svn-base deleted file mode 100644 index 653f8b181e2ea7d581111b946372be97e3e7aae9..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/accept_button.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n %} - -{% if can_accept %} - <a id="accept-answer-{{ answer.id }}" class="ajax-command accept-answer{% if answer.nis.accepted %} on{% endif %}" - title=" {% if answer.nis.accepted %} - {% blocktrans with answer.nstate.accepted.by.username as who %}{{ who }} has selected this answer as the correct answer{% endblocktrans %} - {% else %} - {% trans "mark this answer as the accepted answer" %} - {% endif %}" - bn:on="{% blocktrans with answer.nstate.accepted.by.username as who %}{{ who }} has selected this answer as the correct answer{% endblocktrans %}" - bn:off="{% trans "mark this answer as the accepted answer" %}" - href="{% url accept_answer id=answer.id %}" rel="nofollow"> - </a> -{% else %} - {% if answer.nis.accepted %} - <a class="accept-answer on" - title="{% blocktrans with answer.nstate.accepted.by.username as who %}{{ who }} has selected this answer as the correct answer{% endblocktrans %}" - href="{% url accept_answer id=answer.id %}" rel="nofollow"> - </a> - {% endif %} -{% endif %} - diff --git a/forum/skins/default/templates/node/.svn/text-base/award_points.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/award_points.html.svn-base deleted file mode 100644 index 3b60e8f9aa523d4af81f9010a6d567a1d711ec58..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/award_points.html.svn-base +++ /dev/null @@ -1,75 +0,0 @@ -{% load i18n %} - -<p> - {% blocktrans %} - If you like this answer you can award {{ awarded_user }} with reputation points. - {% endblocktrans %} -</p> - -<p> - {% blocktrans %} - Use the slider below or the input field to choose the amount of points you would like to give. - {% endblocktrans %} -</p> - -<table> - <tr> - <td width="50%">{% trans "Points:" %}</td> - <td width="50%"><input type="text" name="points" id="points_input" value="1" style="border: 1px solid #ccc; padding: 1px 2px;" /></td> - </tr> -</table> - -<div class="award_points_slider"></div> - -<script> - var awardPointsNotified = false; - var reputation_to_comment = {{ reputation_to_comment }}; - var user_reputation = {{ user.reputation }}; - - function points_award_confirm(reputation, event) { - var message = '<div style="max-width: 300px !important; text-align: left;">'; - message += "{% blocktrans %}Your karma points will be below the minimum reputation to comment. Are you sure you want to award points?{% endblocktrans %}"; - message += "</div>"; - - if ((user_reputation - reputation) < reputation_to_comment && !awardPointsNotified) { - awardPointsNotified = true; - - var doptions = { - html: message, - extra_class: 'confirm', - yes_text: messages.yes, - show_no: true, - no_callback: function() { - $(".dialog").fadeOut("fast", function() { - $('.dialog').remove(); - }) - }, - - no_text: messages.no - } - - doptions.event = event; - show_dialog(doptions); - } - } - - $('.award_points_slider').slider({ - min: 1, max: user_reputation, - slide: function(evt, ui) { - $('#points_input').val(ui.value); - points_award_confirm(Number(ui.value), evt) - } - }); - - $('#points_input').live('change keyup', function(evt) { - if ($(this).val() > user_reputation) { - $(this).attr('value', user_reputation); - } - - points_award_confirm(Number($(this).val()), evt); - - $('.award_points_slider').slider('option', 'value', $(this).val()); - - }); - -</script> \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/comment_skeleton.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/comment_skeleton.html.svn-base deleted file mode 100644 index c9f95e1b77b8685c0e890e69f2d01d04a3880f22..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/comment_skeleton.html.svn-base +++ /dev/null @@ -1,60 +0,0 @@ -{% load extra_tags %} -{% load i18n %} - -<div class="clear"></div> -<div id="comment-{{ post.id }}-form-container" class="comment-form-container"> - {% if can_comment %} - <form id="comment-{{ post.id }}-form" method="post" action="{% url comment id=post.id %}" accept-charset="utf-8"> - {% csrf_token %} - <div class="comment-form-widgets-container"> - <textarea name="comment" class="commentBox" id="comment"></textarea> - <div class="comment-form-buttons"> - <span id="comment-{{ post.id }}-chars-left" class="comment-chars-left"> - <span class="comments-char-left-count">{{ min_length }}|{{ max_length }}</span> - <span class="comments-chars-togo-msg">{% trans "characters needed" %}</span> - <span class="comments-chars-left-msg">{% trans "characters left" %}</span> - </span> - <input type="submit" class="comment-submit" value="{% trans " comment" %}" /> - <input type="submit" class="comment-cancel" value="{% trans " cancel" %}" /> - </div> - <div class="clear"></div> - {% if user.can_use_canned_comments %} - <div class="canned_comment"> - <span id="post-{{ post.id }}-menu" class="context-menu"> - <span id="post-{{ post.id }}-menu-trigger" class="action-link context-menu-trigger">{% trans "Use canned comment" %}</span> - <ul id="post-{{ post.id }}-menu-dropdown" class="context-menu-dropdown" style="width: 275px;"> - {% for canned_comment in canned_comments %} - <li class="item"> - <a style="white-space: pre-wrap;" href="javascript:void(0);" onclick="canned_comment({{ post.id }}, jQuery(this).text())">{{ canned_comment }}</a> - </li> - {% endfor %} - </ul> - </span> - </div> - {% endif %} - </div> - <script type="text/html" class="new-comment-skeleton" id="new-comment-skeleton-{{ post.id }}"> - <div class="comment{% if not comment.top_scorer %} not_top_scorer{% endif %}" id="comment-%ID%"> - <div id="post-%ID%-score" class="comment-score"></div> - <div class="comment-text">%COMMENT%</div> - <div class="comment-info" id="comment-%ID%-info"> - <a id="comment-%ID%-edit" href="%EDIT_URL%" title="{% trans "Edit comment" %}" - class="comment-edit" rel="nofollow"> </a> - <a id="comment-%ID%-delete" href="%DELETE_URL%" title="{% trans "Delete comment" %}" - class="ajax-command comment-delete confirm" rel="nofollow"> </a> - <a rel="nofollow" id="comment-%ID%-convert" style="display:none;" href="%CONVERT_URL%" title="{% trans "Convert comment to answer" %}" - class="ajax-command comment-convert confirm" rel="nofollow"> </a> - - <span class="comment-age">({% trans "just now" %})</span> - <a class="comment-user" href="%PROFILE_URL%">%USERNAME%</a> - {% if user.is_authenticated %} - {% if show_gravatar %}{% gravatar user 18 %}{% endif %} - {% endif %} - </div> - </div> - </script> - </form> - {% endif %} -</div> -<div class="clear"></div> - diff --git a/forum/skins/default/templates/node/.svn/text-base/comments.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/comments.html.svn-base deleted file mode 100644 index a84ef89d5583d46b518aa6a61ee647e75434f683..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/comments.html.svn-base +++ /dev/null @@ -1,56 +0,0 @@ -{% load extra_tags %} -{% load i18n %} - -{% if show_latest_comments_first %}{% include "node/comment_skeleton.html" %}{% endif %} - -<div class="comments-container" id="comments-container-{{ post.id }}"> - {% for comment in comments %} - <a name="{{ comment.id }}"></a> - <div class="comment{% if not comment.top_scorer %} not_top_scorer{% endif %}" id="comment-{{comment.id}}"> - <div id="post-{{ comment.id }}-score" class="comment-score">{% if comment.score %}{{ comment.score }}{% endif %}</div> - <div class="comment-text">{{ comment.comment }}</div> - <div class="comment-info" id="comment-{{comment.id}}-info"> - {% if comment.can_like %} - <a id="post-{{ comment.id }}-upvote" href="{% url like_comment id=comment.id %}" - title="{% trans "I like this comment (click again to cancel)" %}" class="ajax-command comment-like{% if comment.likes %} on{% endif %}" - rel="nofollow"> </a> - {% endif %} - {% if comment.can_edit %} - <a id="comment-{{ comment.id }}-edit" href="{% url node_markdown id=comment.id %}" title="{% trans "Edit comment" %}" - class="comment-edit" rel="nofollow"> </a> - {% endif %} - {% if comment.can_delete %} - <a id="comment-{{ comment.id }}-delete" href="{% url delete_comment id=comment.id %}" title="{% trans "Delete comment" %}" - class="ajax-command comment-delete confirm" rel="nofollow"> </a> - {% endif %} - {% if comment.can_convert %} - <a rel="nofollow" id="comment-{{ comment.id }}-convert" href="{% url convert_comment id=comment.id %}" title="{% trans "Convert comment to answer" %}" - class="ajax-command comment-convert confirm" rel="nofollow"> </a> - <a rel="nofollow" id="comment-{{ comment.id }}-convert-to-question" href="{% url convert_to_question id=comment.id %}?node_type=comment" title="{% trans "Convert comment to question" %}" - class="comment-convert-to-question" rel="nofollow"> </a> - {% endif %} - - {% if comment.additional_controls %} - {{ comment.additional_controls }} - {% endif %} - - <span class="comment-age">({% diff_date comment.added_at %})</span> - <a class="comment-user userinfo" href="{{comment.user.get_profile_url}}">{{comment.user.decorated_name}}</a> - {% if show_gravatar %}{% gravatar comment.user 18 %}{% endif %} - </div> - </div> - {% endfor %} -</div> -<div id="comment-tools-{{ post.id }}" class="comment-tools"> - {% ifnotequal showing total %} - <span class="comments-showing"> - {% blocktrans %}showing {{ showing }} of {{ total }}{% endblocktrans %} - </span> - <a href="#" class="show-all-comments-link">{% blocktrans %}show {{ more_comments_count }} more comments{% endblocktrans %}</a> - {% endifnotequal %} - {% if can_comment %} - <a href="#" class="add-comment-link">{% trans "add new comment" %}</a> - {% endif %} -</div> - -{% if not show_latest_comments_first %}{% include "node/comment_skeleton.html" %}{% endif %} diff --git a/forum/skins/default/templates/node/.svn/text-base/contributors_info.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/contributors_info.html.svn-base deleted file mode 100644 index 28bf49baa4a32cecd15ebb1ddc3283c01025e42f..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/contributors_info.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% load extra_tags i18n %} -<div class='post-update-info post-update-info-user'> - <p style="line-height:12px;"> - {{ node_verb }} - <strong>{% diff_date node.added_at %}</strong> - </p> - {% gravatar node.author 32 %} - <p><a {% if node.author.is_suspended %}class="suspended-user" {% endif %}href="{{ node.author.get_profile_url }}">{{ node.author.decorated_name }}</a><br/> - {% get_score_badge node.author %}<br /> - {% get_accept_rate node.author %}</p> -</div> -{% if node.last_edited %} - <div class='post-update-info post-update-info-edited'> - <p style="line-height:12px;"> - <a href="{{ node.get_revisions_url }}"> - {{ node.last_edited.verb }} - <strong>{% diff_date node.last_edited.at %}</strong> - </a> - </p> - {% ifnotequal node.author node.last_edited.by %} - {% gravatar node.last_edited.by 32 %} - <p><a {% if node.last_edited.by.is_suspended %}class="suspended-user" {% endif %}href="{{ node.last_edited.by.get_profile_url }}">{{ node.last_edited.by.decorated_name }}</a><br/> - {% get_score_badge node.last_edited.by %}</p> - {% endifnotequal %} - </div> -{% endif %} diff --git a/forum/skins/default/templates/node/.svn/text-base/convert_to_comment.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/convert_to_comment.html.svn-base deleted file mode 100644 index cbaa4cd980f0e6e3de6580d951b75abc3b545383..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/convert_to_comment.html.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -{% load i18n %} - -<div> - <p>{% trans "Place the comment under:" %}</p> - <select name="under"> - {% for id, descr in nodes %} - <option value="{{ id }}">{{ descr }}</option> - {% endfor %} - </select> -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/convert_to_question.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/convert_to_question.html.svn-base deleted file mode 100644 index 3656c4bf4d51cd6219025dcaac711f5139c60698..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/convert_to_question.html.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -{% extends "question_edit.html" %} -{% load i18n %} -{% block title %}{% trans "Convert to question" %}{% endblock %} -{% block edittype %}{% trans "Convert to question" %}{% endblock %} diff --git a/forum/skins/default/templates/node/.svn/text-base/favorite_mark.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/favorite_mark.html.svn-base deleted file mode 100644 index 6cfaac9ce0dfe67cc6602bb6398f7fff9bfa332e..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/favorite_mark.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n %} - -<a id="favorite-mark" title="{% trans "mark/unmark this question as favorite (click again to cancel)" %}" - class="ajax-command favorite-mark {% if favorited %} on{% endif %}" - href="{% url mark_favorite id=question.id %}" rel="nofollow"> </a> -<div id="favorite-count" class="favorite-count"> - {% if favorite_count %}{{ favorite_count }}{% endif %} -</div> diff --git a/forum/skins/default/templates/node/.svn/text-base/flagged_item.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/flagged_item.html.svn-base deleted file mode 100644 index b22c48bbf6a09aeb300760abdc0e3060cf9963b2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/flagged_item.html.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -{% load extra_tags %} -<div class='post-update-info'> - {{ action.describe|safe }} - at - {{ action.action_date }} -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/permanent_link.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/permanent_link.html.svn-base deleted file mode 100644 index 194f4116728f01242fe09cc393a61a35b1ec2fc2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/permanent_link.html.svn-base +++ /dev/null @@ -1,53 +0,0 @@ -{% load i18n extra_tags %} - -<p> -{% blocktrans %} -Would you like to copy the permanent link to your clipboard? -{% endblocktrans %} -</p> - -{% spaceless %} -<p><label for="permanent_link_url" style="font-size: 13px;">{% trans "Permanent link" %}:</label></p> -<p><textarea id="permanent_link_url" name="permanent_link_url" style="font-size: 12px;" readonly="readonly">{{ url }}</textarea></p> -{% endspaceless %} - -<script type="text/javascript" src="{% media "/media/js/ZeroClipboard.js" %}"></script> -<script type="text/javascript"> -$(document).ready(function() { - // We highlight the content of the text field on click event - $('#permanent_link_url').click(function() { - $(this).select(); - }); - - // We use ZeroClipboard to copy the URL - ZeroClipboard.setMoviePath('{% media '/media/js/ZeroClipboard.swf' %}'); - - // Create the Client Clip - var clip = new ZeroClipboard.Client(); - - // Create the glue when on mouse-over event - $('#copy_clip_button').live('mouseover', function() { - // Take the URL from the input - clip.setText($('#permanent_link_url').val()); - - // Create the glue - clip.glue('copy_clip_button'); - - // Simulate click on the OK button when we hear a moseDown event on the glue - clip.addEventListener('mouseDown', function() { - $('#copy_clip_button').click(); - }); - - // Reposition the clip - clip.addEventListener('complete', function() { - clip.reposition(); - }); - }); - - // Hide the clip if someone clicks on the cancel button - $('.dialog-no').live('click', function() { - clip.hide(); - }); - -}); -</script> diff --git a/forum/skins/default/templates/node/.svn/text-base/post_controls.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/post_controls.html.svn-base deleted file mode 100644 index bbe1e22effa35c85664a322183ebbc9bc706b776..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/post_controls.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n %} -{% spaceless %} -{% for control in controls %} - <span class="action-link"> - <a rel="nofollow" title="{{ control.title }}" class="{{ control.classes }}" href="{{ control.url }}">{{ control.text }}</a> - </span> - {% ifnotequal controls|last control %} - <span class="action-link-separator">|</span> - {% endifnotequal %} -{% endfor %} -{% if menu|length %} - <span class="action-link-separator">|</span> - <span id="node-{{ post.id }}-menu" class="context-menu"> - <span id="node-{{ post.id }}-menu-trigger" class="action-link context-menu-trigger">{% trans "more" %} ▼</span> - <ul id="node-{{ post.id }}-menu-dropdown" class="context-menu-dropdown"> - {% for item in menu %} - <li class="item"><a rel="nofollow" class="{{ item.classes }}" href="{{ item.url }}" title="{{ item.title }}" >{{ item.text }}</a></li> - {% endfor %} - </ul> - </span> -{% endif %} -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/report.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/report.html.svn-base deleted file mode 100644 index 1635d7d6726f4dedbea54610a06c714685ed74e7..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/report.html.svn-base +++ /dev/null @@ -1,14 +0,0 @@ -{% load i18n %} - -{% trans "Please select a reason bellow or use the text box to input your own reason." %} -<select class="prompt-examples"> - {% for type in types %} - <option value="{{ type }}">{{ type }}</option> - {% endfor %} -</select> -<textarea name="prompt">{{ types|first }}</textarea> -<script> -$('.prompt-examples').change(function() { - $('textarea[name=prompt]').val($(this).val()) -}) -</script> \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/reviser_info.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/reviser_info.html.svn-base deleted file mode 100644 index ac3df282bc898979b5e7bffeffaf06697d82728d..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/reviser_info.html.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -{% load extra_tags %} -<div class='post-update-info'> - <p style="line-height:12px;"> - <strong>{% diff_date revision.revised_at %}</strong> - </p> - <a href="{{ revision.author.get_profile_url }}">{% gravatar revision.author 32 %}</a> - <p><a href="{{ revision.author.get_profile_url }}">{{ revision.author.username }}</a><br/> - {% get_score_badge revision.author %}</p> -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/revision.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/revision.html.svn-base deleted file mode 100644 index d6ac677509e109d3503ac56af1dada9c956c18b3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/revision.html.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -{% spaceless %} - {% if title %}<h1>{{ title }}</h1>{% endif %} - <div class="text">{{ html }}</div> - {% if tags %} - <div class="tags"> - {% for tag in tags %} - <a class="post-tag tag-link-{{ tag }}">{{ tag }}</a> - {% endfor %} - </div> - {% endif %} -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/vote_buttons.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/vote_buttons.html.svn-base deleted file mode 100644 index 9b95d607bf7b49232c66677c7b8fc72b3a2867ff..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/vote_buttons.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load i18n %} - -<a id="post-{{ post.id }}-upvote" title="{% trans "I like this post (click again to cancel)" %}" - class="ajax-command post-vote up {% ifequal user_vote "up" %} on{% endifequal %}" - href="{% url vote_post id=post.id,vote_type='up' %}" rel="nofollow"> </a> -<div id="post-{{ post.id }}-score" class="post-score" - title="{% trans "current number of votes" %}"> - {{ post.score }} -</div> -<a id="post-{{ post.id }}-downvote" title="{% trans "I dont like this post (click again to cancel)" %}" - class="ajax-command post-vote down{% ifequal user_vote "down" %} on{% endifequal %}" - href="{% url vote_post id=post.id,vote_type='down' %}" rel="nofollow"> </a> \ No newline at end of file diff --git a/forum/skins/default/templates/node/.svn/text-base/wiki_symbol.html.svn-base b/forum/skins/default/templates/node/.svn/text-base/wiki_symbol.html.svn-base deleted file mode 100644 index 3146a975cf679e603021b3bfd93a78575f707a8e..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/node/.svn/text-base/wiki_symbol.html.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -{% load i18n extra_tags %} -{% spaceless %} -{% if is_wiki %} - <div class="community-wiki"> - {% blocktrans %}This {{ post_type }} is marked "community wiki".{% endblocktrans %} - {% if can_edit %} - <br />{% blocktrans %}Feel free to <a href="{{ edit_url }}">edit it</a>.{% endblocktrans %} - {% endif %} - </div> -{% endif %} -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/default/templates/notifications/.svn/all-wcprops b/forum/skins/default/templates/notifications/.svn/all-wcprops deleted file mode 100644 index a2efa1840c0e5336304a26d1bb82f29972ce8bf3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/all-wcprops +++ /dev/null @@ -1,59 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/notifications -END -answeraccepted.html -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/985/osqa/trunk/forum/skins/default/templates/notifications/answeraccepted.html -END -newanswer.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newanswer.html -END -base.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/notifications/base.html -END -newcomment.html -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newcomment.html -END -base_text.html -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/notifications/base_text.html -END -digest.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/978/osqa/trunk/forum/skins/default/templates/notifications/digest.html -END -newmember.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newmember.html -END -newquestion.html -K 25 -svn:wc:ra_dav:version-url -V 93 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newquestion.html -END -feedback.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/978/osqa/trunk/forum/skins/default/templates/notifications/feedback.html -END diff --git a/forum/skins/default/templates/notifications/.svn/entries b/forum/skins/default/templates/notifications/.svn/entries deleted file mode 100644 index 93b0901e6a97f66ab1a46aaeb5adcd3b2feaeaa3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/entries +++ /dev/null @@ -1,334 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/notifications -http://svn.osqa.net/svnroot - - - -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -base.html -file - - - - -2012-06-22T20:34:42.704422Z -e99fc8b729362264ef6d8cc201671eae -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - - - - - - - - -1561 - -newcomment.html -file - - - - -2012-06-22T20:34:42.700424Z -bd0968bd3b39644dd4702ff41e007379 -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1906 - -base_text.html -file - - - - -2012-06-22T20:34:42.700424Z -0335514f2d3c7fde925a47140798e52a -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - - - - - - - - -449 - -digest.html -file - - - - -2012-06-22T20:34:42.700424Z -7c4b34fc12f8cdaaeae753dd0d589364 -2011-04-13T22:14:14.670858Z -978 -jordan - - - - - - - - - - - - - - - - - - - - - -5352 - -newmember.html -file - - - - -2012-06-22T20:34:42.700424Z -5d85220d6ca575208054879925fa6e7d -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1381 - -newquestion.html -file - - - - -2012-06-22T20:34:42.704422Z -e7009ee79bb26c1adf9bab13007d2fef -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1947 - -feedback.html -file - - - - -2012-06-22T20:34:42.704422Z -67f714ce025b048df60d383e2be15236 -2011-04-13T22:14:14.670858Z -978 -jordan - - - - - - - - - - - - - - - - - - - - - -1055 - -answeraccepted.html -file - - - - -2012-06-22T20:34:42.704422Z -9d409e1930d99017df36d796725c3440 -2011-04-14T21:51:36.682181Z -985 -jordan - - - - - - - - - - - - - - - - - - - - - -1338 - -newanswer.html -file - - - - -2012-06-22T20:34:42.704422Z -211103ae3b3e748983032c8f12973fbb -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1560 - diff --git a/forum/skins/default/templates/notifications/.svn/text-base/answeraccepted.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/answeraccepted.html.svn-base deleted file mode 100644 index 5157bd0addbac8e92d2aa775bac33d8ae50f7992..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/answeraccepted.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - answer_author = html.mark_safe(smart_str(answer.author.username)) - question = answer.question - question_title = html.mark_safe(smart_str(question.title)) - accepted_by = html.mark_safe(smart_str(answer.nstate.accepted.by.username)) - accepted_by_link = html.objlink(answer.nstate.accepted.by, style=settings.EMAIL_ANCHOR_STYLE) - answer_author_link = html.objlink(answer.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} An answer to: {{ question_title }} has been accepted{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ accepted_by_link }} has just accepted {{ answer_author_link }}'s answer on his question - {{ question_link }}. - {% endblocktrans %} - </p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ accepted_by }} has just accepted {{ answer_author }}'s answer on his question -"{{ question_title }}". -{% endblocktrans %} -{% endtextcontent %} - -{% endemail %} diff --git a/forum/skins/default/templates/notifications/.svn/text-base/base.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/base.html.svn-base deleted file mode 100644 index 320b16412f9ef363cfe2f31159f66827873c42eb..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/base.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% load extra_filters extra_tags i18n email_tags %} - -{% declare %} - p_style = smart_str(settings.EMAIL_PARAGRAPH_STYLE) - a_style = smart_str(settings.EMAIL_ANCHOR_STYLE) - hr_style = "color:#ccc;border:0;height:1px;background-color:#ccc;margin-bottom:20px;" - small_style = "color:#333333;font-family:'Lucida Grande', Trebuchet, Helvetica, sans-serif;font-size:12px;" - table_style = "border:20px %s solid;margin:10px auto 10px auto;width:750px;text-align:left;" % settings.EMAIL_BORDER_COLOR -{% enddeclare %} -<html> -<head> -<base href="{{ settings.APP_URL }}"> -</head> -<body style="margin:0;"> -<center> -<table style="{{ table_style }}"> -<tbody><tr><td style="padding:20px;"> -<a href="{{ settings.APP_URL }}" style="border: 0;"><img src="{{ settings.APP_URL }}{{ settings.APP_LOGO }}" alt="{{settings.APP_TITLE}}" border="0"/></a> -<hr style="{{ hr_style }}" /> -{% if not exclude_greeting %} -<p style="{{ p_style }}">{% trans "Hello" %} {{ recipient.username }},</p> -{% endif %} -{% block content %}{% endblock%} -<p style="{{ p_style }}">{% trans "Thanks" %},<br />{{settings.APP_SHORT_NAME}}</p> -{% if not exclude_finetune %} -<p style="{{ p_style }}">{% trans "P.S. You can always fine-tune which notifications you receive" %} -<a href="{{ settings.APP_URL }}{{ recipient.get_user_subscriptions_url }}" style="{{ a_style }}">{% trans "here" %}</a>. -{% endif %} -</p> -<hr style="{{ hr_style }}" /> -<p style="{{ p_style }}"><small style="{{ small_style }}">{{ settings.EMAIL_FOOTER_TEXT }}</small></p> -</td></tr></tbody></table> -</center> -</body> -</html> diff --git a/forum/skins/default/templates/notifications/.svn/text-base/base_text.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/base_text.html.svn-base deleted file mode 100644 index ed2ebdf70daf10953de39f4866de37d37a982621..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/base_text.html.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -{% load extra_filters extra_tags i18n email_tags %} - -{% if not exclude_greeting %} -{% trans "Hello" %} {{ recipient.username }}, -{% endif %} - -{% block content %}{% endblock%} - -{% trans "Thanks" %}, -{{settings.APP_SHORT_NAME}} - -{% if not exclude_finetune %} -{% trans "P.S. You can always fine-tune which notifications you receive here:" %} -{{ settings.APP_URL }}{{ recipient.get_user_subscriptions_url }} -{% endif %} - -{{ settings.EMAIL_FOOTER_TEXT }} \ No newline at end of file diff --git a/forum/skins/default/templates/notifications/.svn/text-base/digest.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/digest.html.svn-base deleted file mode 100644 index 91757b86f4fe22af07b3fa4386bbbac6e03f7ebb..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/digest.html.svn-base +++ /dev/null @@ -1,146 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_unicode(settings.APP_SHORT_NAME) - app_url = settings.APP_URL - - new_member_links = html.mark_safe(smart_unicode(", ".join([html.objlink(u, style=settings.EMAIL_ANCHOR_STYLE) for u in new_members]))) - new_question_count = digest.count - -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Daily digest{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - {% declare %} - new_questions_link = html.hyperlink(smart_unicode(app_url) + reverse('questions') + '?sort=' + _('latest'), smart_unicode(_('new questions')), style=a_style) - user_questions = digest.get_for_user(recipient) - subscribed_url = '%s%s' % (app_url, recipient.get_subscribed_url()) - subscriptions_link = html.hyperlink(subscribed_url, _('subscriptions'), style=a_style) - {% enddeclare %} - - <p style="{{ p_style }}"> - {% blocktrans %} - This is a brief of what's going on the {{ app_name }} community since our last update. - {% endblocktrans %} - </p> - - {% if new_member_count %} - <p style="{{ p_style }}"> - {% if show_all_users %} - {% blocktrans %} - There are {{ new_member_count }} new members in the community. {{ new_member_links }} were the most active so far. - {% endblocktrans %} - {% else %} - {% blocktrans %} - {{ new_member_links }} have joined the {{ app_name }} community. - {% endblocktrans %} - {% endif %} - {% endif %} - </p> - - {% if new_question_count %} - - <p style="{{ p_style }}"> - {% blocktrans %} - {{ new_question_count }} {{ new_questions_link }} were posted since our last update. - {% endblocktrans %} - </p> - - {% if user_questions.interesting %} - <p style="{{ p_style }}"> - {% trans "We think you might like the following questions:" %} - </p> - <ul> - {% for q in user_questions.interesting %} - <li> - <a style="{{ a_style }}" href="{{ app_url }}{{ q.get_absolute_url }}">{{ q.title }}</a> - </li> - {% endfor %} - </ul> - {% endif %} - - {% if user_questions.may_help %} - <p style="{{ p_style }}"> - {% trans "These new questions didn't get many attention from the community, but we think you may be able to help:" %} - </p> - <ul> - {% for q in user_questions.may_help %} - <li> - <a style="{{ a_style }}" href="{{ app_url }}{{ q.get_absolute_url }}">{{ q.title }}</a> - </li> - {% endfor %} - </ul> - - {% if user_questions.subscriptions %} - <p style="{{ p_style }}"> - {% blocktrans %}Meanwhile, some of your {{ subscriptions_link }} have new updates since you last visited them:{% endblocktrans %} - </p> - <ul> - {% for q in user_questions.subscriptions %} - <li> - <a style="{{ a_style }}" href="{{ app_url }}{{ q.get_absolute_url }}">{{ q.title }}</a> - </li> - {% endfor %} - </ul> - {% endif %} - - {% endif %} - - {% endif %} - - {% if recipient.is_superuser %} - {% declare %} - flagged_url = html.hyperlink(smart_unicode(app_url + reverse('admin_flagged_posts')), smart_unicode(str(flagged_count) + ' ' + _('posts')), style=a_style) - {% enddeclare %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ flagged_url }} have been marked as flagged. - {% endblocktrans %} - </p> - {% endif %} - - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}This is a brief of what's going on the {{ app_name }} community since our last update.{% endblocktrans %} - -{% if new_member_count %} -{% if show_all_users %} -{% blocktrans %}There are {{ new_member_count }} new members in the community. {{ new_member_links }} were the most active so far.{% endblocktrans %} -{% else %} -{% blocktrans %}{{ new_member_links }} have joined the {{ app_name }} community.{% endblocktrans %} -{% endif %} -{% endif %} - -{% if new_question_count %} -{% blocktrans %}{{ new_question_count }} new questions were posted since our last update.{% endblocktrans %} - -{% if user_questions.interesting %}{% trans "We think you might like the following questions:" %} -{% for q in user_questions.interesting %} -* {{ q.title }} -{% endfor %} -{% endif %} - -{% if user_questions.may_help %} -{% trans "These new questions didn't get many attention from the community, but we think you may be able to help:" %} -{% for q in user_questions.may_help %} -* {{ q.title }} -{% endfor %} - -{% if user_questions.subscriptions %} -{% blocktrans %}Meanwhile, some of your subscriptions have new updates since you last visited them:{% endblocktrans %} -{% for q in user_questions.subscriptions %} -* {{ q.title }} -{% endfor %} -{% endif %} -{% endif %} -{% endif %} - -{% if recipient.is_superuser %} -{% blocktrans %}{{ flagged_count }} posts have been marked as flagged.{% endblocktrans %} -{% endif %} -{% endtextcontent %} -{% endemail %} diff --git a/forum/skins/default/templates/notifications/.svn/text-base/feedback.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/feedback.html.svn-base deleted file mode 100644 index bb70300e3973d15a0c472bbe0c28dde82500a322..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/feedback.html.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = smart_str(settings.EMAIL_SUBJECT_PREFIX) - app_name = smart_str(settings.APP_SHORT_NAME) - - exclude_greeting = True - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Feedback message from {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% trans "Sender" %}:{% if name %}{{ name }}{% else %}{% trans "anonymous" %}{% endif %}<br /> - {% trans "email" %}: {{ email }} - <br/> - ip: {{ ip }} - </p> - - <blockquote> - {% trans "Message body:" %} {{ message }} - </blockquote> - - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% trans "Sender" %}: {% if name %}{{ name|safe }}{% else %}{% trans "anonymous" %}{% endif %} -{% trans "email" %}: {{ email|safe }} -ip: {{ ip }} - -{% trans "Message body:" %} {{ message|safe }} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/notifications/.svn/text-base/newanswer.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/newanswer.html.svn-base deleted file mode 100644 index 1f3140ce4851c26a525b60849e87b6d8dae33710..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/newanswer.html.svn-base +++ /dev/null @@ -1,44 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_str(settings.APP_SHORT_NAME) - safe_app_name = html.mark_safe(smart_str(settings.APP_SHORT_NAME)) - answer_author = html.mark_safe(smart_str(answer.author.username)) - question = answer.question - question_title = html.mark_safe(smart_str(question.title)) - safe_body = html.html2text(smart_str(answer.html)) - author_link = html.objlink(answer.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} New answer to: {{ question_title }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ author_link }} has just posted a new answer on {{ app_name }} to the question - {{ question_link }}: - {% endblocktrans %} - </p> - - <blockquote> - {{ answer.html|safe }} - </blockquote> - - <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ answer_author }} has just posted a new answer on {{ safe_app_name }} to the question -"{{ question_title }}": -{% endblocktrans %} -{{ safe_body }} - -{% trans "Don't forget to come over and cast your vote." %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/notifications/.svn/text-base/newcomment.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/newcomment.html.svn-base deleted file mode 100644 index b72b86722573906a965e9a4cb04fff76b541196f..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/newcomment.html.svn-base +++ /dev/null @@ -1,46 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - post = comment.parent - question = post.question and post.question or post - post_author = smart_str(post.author.username) - safe_post_author = html.mark_safe(smart_str(post.author.username)) - comment_author = html.mark_safe(smart_str(comment.author)) - question_title = html.mark_safe(smart_str(question.title)) - safe_body = html.html2text(smart_str(comment.comment)) - author_link = html.objlink(comment.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} New comment on: {{ question_title }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %}{{ author_link }} has just posted a comment on {% endblocktrans %} - {% ifnotequal post question %} - {% blocktrans %}the answer posted by {{ post_author }} to {% endblocktrans %} - {% endifnotequal %} - {% blocktrans %}the question {{ question_link }}{% endblocktrans %} - </p> - - <blockquote> - {{ comment.comment }} - </blockquote> - - <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}{{ comment_author }} has just posted a comment on {% endblocktrans %} -{% ifnotequal post question %} -{% blocktrans %}the answer posted by {{ safe_post_author }} to {% endblocktrans %} -{% endifnotequal %} -{% blocktrans %}the question "{{ question_title }}"{% endblocktrans %} -{{ safe_body }} - -{% trans "Don't forget to come over and cast your vote." %} -{% endtextcontent %} - -{% endemail %} diff --git a/forum/skins/default/templates/notifications/.svn/text-base/newmember.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/newmember.html.svn-base deleted file mode 100644 index aa5d5ec2bf949f6d5e5e35bdaf7b911c42fbab84..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/newmember.html.svn-base +++ /dev/null @@ -1,34 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_str(settings.APP_SHORT_NAME) - safe_app_name = html.mark_safe(smart_str(settings.APP_SHORT_NAME)) - app_url = smart_str(settings.APP_URL) - newmember_name = smart_str(newmember.username) - safe_newmember_name = html.mark_safe(smart_str(newmember.username)) - newmember_url = smart_str(newmember.get_profile_url()) - newmember_link = html.objlink(newmember, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} {{ safe_newmember_name }} is a new member on {{ safe_app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ newmember_link }} has just joined {{ app_name }}. - View <a style="{{ a_style }}" href="{{ app_url }}{{ newmember_url }}">{{ newmember_name }}'s profile</a>. - {% endblocktrans %} - </p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ safe_newmember_name }} has just joined {{ safe_app_name }}. You can visit {{ safe_newmember_name }}'s profile using the following url: -{{ app_url }}{{ newmember_url }} -{% endblocktrans %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/notifications/.svn/text-base/newquestion.html.svn-base b/forum/skins/default/templates/notifications/.svn/text-base/newquestion.html.svn-base deleted file mode 100644 index 1f48a380a7e3c76153de9708515be3132a4db8b2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/notifications/.svn/text-base/newquestion.html.svn-base +++ /dev/null @@ -1,47 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_str(settings.APP_SHORT_NAME) - safe_app_name = html.mark_safe(smart_str(settings.APP_SHORT_NAME)) - question_author = html.mark_safe(smart_str(question.author.username)) - question_url = smart_str(settings.APP_URL + question.get_absolute_url()) - question_title = html.mark_safe(smart_str(question.title)) - question_tags = html.mark_safe(smart_str(question.tagnames)) - safe_body = html.html2text(smart_str(question.html)) - author_link = html.objlink(question.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) - tag_links = html.mark_safe(smart_str(" ".join([html.objlink(t, style=settings.EMAIL_ANCHOR_STYLE) for t in question.tags.all()]))) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} New question: {{ question_title }} on {{ safe_app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ author_link }} has just posted a new question on {{ app_name }}, entitled - {{ question_link }} - and tagged "<em>{{ tag_links }}</em>". Here's what it says: - {% endblocktrans %} - </p> - - <blockquote> - {{ question.html|safe }} - </blockquote> - - <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ question_author }} has just posted a new question on {{ safe_app_name }}, entitled -"{{ question_title }}" and tagged {{ question_tags }}: -{% endblocktrans %} -{{ safe_body }} - -{% trans "Don't forget to come over and cast your vote." %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/osqaadmin/.svn/all-wcprops b/forum/skins/default/templates/osqaadmin/.svn/all-wcprops deleted file mode 100644 index bb96667b45cc978bf0422786e0129526380e302d..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/all-wcprops +++ /dev/null @@ -1,101 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1223/osqa/trunk/forum/skins/default/templates/osqaadmin -END -moderation.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/moderation.html -END -graph.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/254/osqa/trunk/forum/skins/default/templates/osqaadmin/graph.html -END -createuser.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/createuser.html -END -test_email_settings.html -K 25 -svn:wc:ra_dav:version-url -V 97 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/templates/osqaadmin/test_email_settings.html -END -static_pages.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1074/osqa/trunk/forum/skins/default/templates/osqaadmin/static_pages.html -END -index.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/234/osqa/trunk/forum/skins/default/templates/osqaadmin/index.html -END -djstyle_base.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1223/osqa/trunk/forum/skins/default/templates/osqaadmin/djstyle_base.html -END -base.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/1223/osqa/trunk/forum/skins/default/templates/osqaadmin/base.html -END -nodeman.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/1061/osqa/trunk/forum/skins/default/templates/osqaadmin/nodeman.html -END -mail_test.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/templates/osqaadmin/mail_test.html -END -flagged_posts.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/298/osqa/trunk/forum/skins/default/templates/osqaadmin/flagged_posts.html -END -edit_page.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/edit_page.html -END -maintenance.html -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/maintenance.html -END -dashboard.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/571/osqa/trunk/forum/skins/default/templates/osqaadmin/dashboard.html -END -statistics.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/254/osqa/trunk/forum/skins/default/templates/osqaadmin/statistics.html -END -set.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/set.html -END diff --git a/forum/skins/default/templates/osqaadmin/.svn/dir-prop-base b/forum/skins/default/templates/osqaadmin/.svn/dir-prop-base deleted file mode 100644 index 5d2def4d900073d4bfa79d0216ca66e1b70fe6a6..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/dir-prop-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 390 -/osqa/branches/cacheimp/forum/skins/default/templates/osqaadmin:874-939 -/osqa/branches/carpenter/forum/skins/default/templates/osqaadmin:691-725 -/osqa/branches/hernani/forum/skins/default/templates/osqaadmin:772-832 -/osqa/branches/jambazov/forum/skins/default/templates/osqaadmin:675-831 -/osqa/branches/notification-config/forum/skins/default/templates/osqaadmin:693-793,809,811-812,825-827 -END diff --git a/forum/skins/default/templates/osqaadmin/.svn/entries b/forum/skins/default/templates/osqaadmin/.svn/entries deleted file mode 100644 index e8302756aa251cbecca163ca795b86ee9bdc45c2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/entries +++ /dev/null @@ -1,572 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/osqaadmin -http://svn.osqa.net/svnroot - - - -2012-01-25T11:35:23.115526Z -1223 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -moderation.html -file - - - - -2012-06-22T20:34:42.776386Z -16d0fd8aa980c455b97f47f13b8d4f38 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -5174 - -graph.html -file - - - - -2012-06-22T20:34:42.776386Z -5bb3cc2beac980335b5709402c3e1290 -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - - - - - - - - -335 - -createuser.html -file - - - - -2012-06-22T20:34:42.776386Z -cea6a285e3cdb25675af6b7a2aad65df -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -483 - -test_email_settings.html -file - - - - -2012-06-22T20:34:42.776386Z -485b7b5a3b04043acc371da57855f27c -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -545 - -static_pages.html -file - - - - -2012-06-22T20:34:42.776386Z -bc4f9208a10790ae14e2876e865fe4d6 -2011-06-24T13:41:57.766668Z -1074 -jordan - - - - - - - - - - - - - - - - - - - - - -1395 - -index.html -file - - - - -2012-06-22T20:34:42.776386Z -df9fe7603b99c3920add4a1c397bd5b2 -2010-05-12T19:34:52.959194Z -234 -rick - - - - - - - - - - - - - - - - - - - - - -4119 - -djstyle_base.html -file - - - - -2012-06-22T20:34:42.780384Z -3b4a605fe78a8eadd9168c4b27f9d23a -2012-01-25T11:35:23.115526Z -1223 -jordan - - - - - - - - - - - - - - - - - - - - - -8611 - -base.html -file - - - - -2012-06-22T20:34:42.780384Z -9da9fa2a45e9846c6eb1c0621a25c21f -2012-01-25T11:35:23.115526Z -1223 -jordan - - - - - - - - - - - - - - - - - - - - - -1853 - -nodeman.html -file - - - - -2012-06-22T20:34:42.772388Z -1e099b9cc99f9927438713286b967ec2 -2011-06-10T15:04:48.557924Z -1061 -jordan - - - - - - - - - - - - - - - - - - - - - -24458 - -mail_test.html -file - - - - -2012-06-22T20:34:42.772388Z -df16c08da5b0d6f0d643dffd8e4960e9 -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -637 - -flagged_posts.html -file - - - - -2012-06-22T20:34:42.772388Z -c8ea7362559d925cd030f3cdb26f27bf -2010-05-18T15:58:10.566270Z -298 -qw3rty - - - - - - - - - - - - - - - - - - - - - -836 - -edit_page.html -file - - - - -2012-06-22T20:34:42.768390Z -09ba0d93e0d6e918bdf0d52b110fe407 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1420 - -maintenance.html -file - - - - -2012-06-22T20:34:42.772388Z -7a44affe25f49f25316363e6d42e6ec3 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1013 - -dashboard.html -file - - - - -2012-06-22T20:34:42.772388Z -a5fe88cd76a06674a746487bb2dfe3e9 -2010-08-26T13:21:21.792855Z -571 -hernani - - - - - - - - - - - - - - - - - - - - - -3800 - -statistics.html -file - - - - -2012-06-22T20:34:42.772388Z -95a6650475a9ccc594aa31ddfa780b13 -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - - - - - - - - -1108 - -set.html -file - - - - -2012-06-22T20:34:42.772388Z -12e8c5fbf88f454f8f78b9ac47ce20a0 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1280 - diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/base.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/base.html.svn-base deleted file mode 100644 index d27b2161afb6e184f65d6726c28174d5e05f8b93..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/base.html.svn-base +++ /dev/null @@ -1,58 +0,0 @@ -{% extends "base.html" %} - -{% load i18n extra_tags general_sidebar_tags %} - -{% block title %}{% trans "Site Administration" %}{% endblock %} - -{% block forejs %} - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/admin.css" %}"/> - <script type="text/javascript" src="{% media "/media/js/osqa.admin.js" %}"></script> - {% block adminjs %}{% endblock %} -{% endblock %} - -{% block content %} - <div class="headNormal"> - {% trans "OSQA administration area" %} - {% block subtitle %}{% endblock %} - </div> - <div id="admin_page_description"> - {% block description %}{% endblock %} - </div> - <div> - {% block admincontent %} - {% endblock %} - </div> -{% endblock %} - -{% block sidebar %} - {% if hide_navigation %} - - {% else %} - <div class="boxC"> - <a href="{% url admin_switch_interface %}?to=djstyle">{% trans "Switch to django style interface" %}</a> - <h3 class="subtitle">{% trans "Administration menu" %}</h3> - <ul> - {% for set in allsets.values %} - <li><a href="{% url admin_set set.name %}">{{ set.title }}</a></li> - {% endfor %} - - {% for set in othersets %} - <li> - <a href="{% url admin_set set.name %}">{{ set.title }}</a> - </li> - {% endfor %} - - <li><a href="{% url admin_maintenance %}">{% trans "Maintenance mode" %}</a></li> - <li><a href="{% url admin_flagged_posts %}">{% trans "Flagged Posts" %}</a></li> - {% for name,tool in tools %} - <li><a href="{% url admin_tools name %}">{{ tool }}</a></li> - {% endfor %} - </ul> - </div> - {% if markdown %} - {% markdown_help %} - {% endif %} - - {% endif %} -{% endblock %} - - diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/createuser.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/createuser.html.svn-base deleted file mode 100644 index 65c61b9103d1d2b563a807f5775679331cb1c17e..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/createuser.html.svn-base +++ /dev/null @@ -1,21 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %} - {% trans "Create User" %} -{% endblock %} -{% block description %} - {% trans "Quick creation of a new user" %} -{% endblock %} - -{% block admincontent %} - <form action="" method="POST"> - {% csrf_token %} - <table> - {{ form.as_table }} - <tr><th></th><td><input type="submit" value="{% trans "Save" %}"></td></tr> - </table> - </form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/dashboard.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/dashboard.html.svn-base deleted file mode 100644 index ec56e7808ac503d66682edee0961e5ad4f84cdb3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/dashboard.html.svn-base +++ /dev/null @@ -1,81 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %} - {% trans "Dashboard" %} -{% endblock %} -{% block description %} - {% trans "Welcome to the OSQA administration area." %} -{% endblock %} - -{% block admincontent %} - <div class="module" style="width:49%; display: inline-block; vertical-align: top;"> - <table style="width: 100%; height: 100%;"> - <caption>{% trans "Quick statistics" %}</caption> - <tr> - <td> - {{ statistics.total_questions }} {% trans "question" %}{{ statistics.total_questions|pluralize }} ({{ statistics.questions_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_answers }} {% trans "answer" %}{{ statistics.total_answers|pluralize }} ({{ statistics.answers_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_users }} {% trans "user" %}{{ statistics.total_users|pluralize }} ({{ statistics.users_last_24 }} {% trans "joined in the last 24 hours" %}) - </td> - </tr> - </table> - </div> - <div class="module" style="width:49%; display: inline-block;"> - <table> - <caption>{%trans "Site status" %}</caption> - <tr> - <td> - {% ifequal settings_pack "bootstrap" %} - {% trans "Your site is running in bootstrap mode, click the button below to revert to defaults." %}<br /> - {% else %} - {% ifequal settings_pack "default" %} - {% trans "Your site is running in standard mode, click the button below to run in bootstrap mode." %}<br /> - {% else %} - {% trans "Your site is running with some customized settings, click the buttons below to run with defaults or in bootstrap mode" %} - {% endifequal %} - {% endifequal %} - {% ifnotequal settings_pack "default" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to revert to the defaults?" %}')) window.location='{% url admin_go_defaults %}';">{% trans "revert to defaults" %}</button> - {% endifnotequal %} - {% ifnotequal settings_pack "bootstrap" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to run bootstrap mode?" %}')) window.location='{% url admin_go_bootstrap %}';">{% trans "go bootstrap" %}</button> - {% endifnotequal %} - </td> - </tr> - <tr> - <td> - <em>"Bootstrap mode" relaxes the minimum required reputation to perform actions like voting and commenting. - This is useful to help new communities get started.</em> - </td> - </tr> - </table> - </div> - <div class="module" style="width:98%; display: inline-block;"> - <table width="100%"> - <caption>{% trans "Recent activity" %}</caption> - <tr> - <td colspan="2"> - <table id="result_list" width="100%"> - {% for activity in recent_activity.paginator.page %} - <tr class="{% cycle 'row1' 'row2' %}"><td>{% activity_item activity request.user %}</td></tr> - {% endfor %} - </table> - </td> - </tr> - </table> - <p class="paginator"> - {{ recent_activity.paginator.page_numbers }} - </p> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/djstyle_base.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/djstyle_base.html.svn-base deleted file mode 100644 index 2f771921d2267c5ab26c711797fa1d0c44229aa7..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/djstyle_base.html.svn-base +++ /dev/null @@ -1,146 +0,0 @@ -{% load extra_tags extra_filters i18n %} - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> - <link rel="stylesheet" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/base.css" type="text/css"/> - <link rel="stylesheet" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/forms.css" type="text/css"/> - <link rel="stylesheet" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/changelists.css" type="text/css"/> - <!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/ie.css" /><![endif]--> - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/djstyle_admin.css" %}"/> - <script src="http://www.google.com/jsapi" type="text/javascript"></script> - <script type="text/javascript"> - //<!-- - google.load("jquery", "1.3"); - //--> - </script> - <script type="text/javascript" src="{% media "/media/js/osqa.admin.js" %}"></script> - {% block adminjs %}{% endblock %} - <title>{% trans "OSQA administration area" %} - {% block subtitle %}{% endblock %}</title> -</head> -<body> -<div id="container" class="change-list"> - <div id="header"> - {% block header %} - <div id="branding"> - <h1 id="site-name">{{ settings.APP_SHORT_NAME }} - {% trans "Administration Area" %} </h1> - </div> - {% endblock %} - <div id="user-tools"> - {% trans "Welcome," %} - <strong>{{ request.user.username }}</strong>. - <a href="{% url admin_switch_interface %}?to=default">{% trans "To standard interface" %}</a> - / <a href="{% url index %}">{% trans "Back to home page" %}</a> - / <a href="{% url logout %}">{% trans "Log out" %}</a> - </div> - </div> - <div class="breadcrumbs"> - <a href="{% url index %}">{% trans "Home" %}</a> > - <a href="{% url admin_index %}">{% trans "Dashboard" %}</a> > - {% block pagename %}{% endblock %} - - {% block description %}{% endblock %} - </div> - <div id="content" class="{% if hide_navigation %}flex{% else %}colMS{% endif %}"> - <div id="content-main"> - {% autoescape off %} - {% for message in user_messages %} - <p class="admin_message">{{ message }}</p> - {% endfor %} - {% endautoescape %} - {% block admincontent %}{% endblock %} - </div> - {% if hide_navigation %} - - {% else %} - <div id="content-related"> - {% if unsaved %} - <div id="changes-box" class="module"> - <h2>{% trans "Unpublished changes" %}</h2> - <p> - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" /> - {% trans "Items marked with this icon have unpublished changes." %} - </p> - </div> - {% endif %} - <div id="basic-sets-menu" class="module"> - <h2>{% trans "Basic settings" %}</h2> - <ul> - <li><a href="{% url admin_set allsets.basic.name %}">{{ allsets.basic.title }}</a></li> - <li><a href="{% url admin_set allsets.users.name %}">{{ allsets.users.title }}</a></li> - <li><a href="{% url admin_set allsets.email.name %}">{{ allsets.email.title }}</a></li> - <li><a href="{% url admin_set allsets.paths.name %}">{{ allsets.paths.title }}</a></li> - <li><a href="{% url admin_set allsets.urls.name %}">{{ allsets.urls.title }}</a></li> - <li><a href="{% url admin_set allsets.extkeys.name %}">{{ allsets.extkeys.title }}</a></li> - </ul> - </div> - <div id="workflow-sets-menu" class="module"> - <h2>{% trans "Workflow settings" %}</h2> - <ul> - <li><a href="{% url admin_set allsets.repgain.name %}">{{ allsets.repgain.title }}</a></li> - <li><a href="{% url admin_set allsets.minrep.name %}">{{ allsets.minrep.title }}</a></li> - <li><a href="{% url admin_set allsets.voting.name %}">{{ allsets.voting.title }}</a></li> - <li><a href="{% url admin_set allsets.accept.name %}">{{ allsets.accept.title }}</a></li> - <li><a href="{% url admin_set allsets.badges.name %}">{{ allsets.badges.title }}</a></li> - </ul> - </div> - <div id="forum-sets-menu" class="module"> - <h2>{% trans "Forum settings" %}</h2> - <ul> - <li><a href="{% url admin_set allsets.form.name %}">{{ allsets.form.title }}</a></li> - <li><a href="{% url admin_set allsets.view.name %}">{{ allsets.view.title }}</a></li> - <li><a href="{% url admin_set allsets.moderation.name %}">{{ allsets.moderation.title }}</a></li> - </ul> - </div> - <div id="pages-sets-menu" class="module"> - <h2>{% trans "Static content" %}</h2> - <ul> - <li><a href="{% url admin_static_pages %}">{% trans "Custom Pages" %}</a></li> - <li><a href="{% url admin_set allsets.about.name %}">{{ allsets.about.title }}</a></li> - <li><a href="{% url admin_set allsets.faq.name %}">{{ allsets.faq.title }}</a></li> - <li><a href="{% url admin_set allsets.sidebar.name %}">{{ allsets.sidebar.title }}</a></li> - <li> - <a href="{% url admin_set allsets.css.name %}">{{ allsets.css.title }}</a> - {% if "css"|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - <li> - <a href="{% url admin_set allsets.headandfoot.name %}">{{ allsets.headandfoot.title }}</a> - {% if "headandfoot"|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - <li> - <a href="{% url admin_set allsets.head.name %}">{{ allsets.head.title }}</a> - {% if "head"|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - </ul> - </div> - <div id="other-sets-menu" class="module"> - <h2>{% trans "Other settings" %}</h2> - <ul> - {% for set in othersets %} - <li> - <a href="{% url admin_set set.name %}">{{ set.title }}</a> - {% if set.name|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - {% endfor %} - </ul> - </div> - <div id="tools-menu" class="module"> - <h2>{% trans "Tools" %}</h2> - <ul> - <li><a href="{% url admin_maintenance %}">{% trans "Maintenance mode" %}</a></li> - <li><a href="{% url admin_flagged_posts %}">{% trans "Flagged Posts" %}</a></li> - {% for name,tool in tools %} - <li><a href="{% url admin_tools name %}">{{ tool }}</a></li> - {% endfor %} - </ul> - </div> - </div> - {% endif %} - </div> - <div id="footer" class="breadcumbs"> - <a href="http://www.osqa.net">OSQA</a> <span class="version">{{ settings.OSQA_VERSION }} ({{ settings.SVN_REVISION }})</span> - </div> - </div> -</body> \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/edit_page.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/edit_page.html.svn-base deleted file mode 100644 index ea7c0a98369ffc85bee30a45c145ebc9d7263974..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/edit_page.html.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -{% extends basetemplate %} - -{% load i18n extra_filters %} - -{% block subtitle %}{% trans "Editing page" %}{% endblock %} -{% block pagename %} - <a href="{% url admin_static_pages %}">{% trans "Static Pages" %}</a> > - {% if page %}{% trans "Editing page" %}{% else %}{% trans "Creating page" %}{% endif %} -{% endblock %} -{% block description %} - {% if page %}{{ page.title }}{% else %}{% trans "New page" %}{% endif %} - ({% if published %}{% trans "Published" %}{% else %}{% trans "Unpublished" %}{% endif %}) -{% endblock %} - -{% block admincontent %} - <form action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - <table style="width: 100%"> - {{ form.as_table }} - <tr> - <th></th> - <td> - {% if page %} - <input id="submit" name="submit" type="submit" value="{% trans "Edit" %}" /> - {% else %} - <input id="submit" name="submit" type="submit" value="{% trans "Save" %}" /> - {% endif %} - {% if published %} - <input id="unpublish" name="unpublish" type="submit" value="{% trans "Unpublish" %}" /> - {% else %} - <input id="publish" name="publish" type="submit" value="{% trans "Publish" %}" /> - {% endif %} - </td> - </tr> - </table> - </form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/flagged_posts.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/flagged_posts.html.svn-base deleted file mode 100644 index a58d13e956d49a8e731c51cf6cd7c00c40f223ab..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/flagged_posts.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %}{% trans "Flagged Posts" %}{% endblock %} -{% block pagename %}{% trans "Flagged Posts" %}{% endblock %} -{% block description %}{% trans "This are the posts that have been flagged by users." %}{% endblock %} - -{% block admincontent %} - <div class="module" style="width:98%; display: inline-block;"> - <table width="100%"> - <caption>{% trans "Flagged Posts" %}</caption> - <tr> - <td colspan="2"> - <table width="100%"> - {% for post in flagged_posts %} - <tr><td>{% flagged_item post request.user %}</td></tr> - {% endfor %} - </table> - </td> - </tr> - </table> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/graph.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/graph.html.svn-base deleted file mode 100644 index ee84f9e131eee6d49014cd068a1b660f4e1c9155..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/graph.html.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -<div class="module" style="width:385px; height:300px; display: inline-block;"> - <table style="width: 100%; height: 100%"> - <caption>{{ graph.caption }}</caption> - <tr> - <td> - <div style="width: 100%; height: 100%" id="{{ graph.id }}"></div> - </td> - </tr> - </table> -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/index.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/index.html.svn-base deleted file mode 100644 index 30c3f65e415c24b18ca31d82d56d0f2ffbc2706e..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/index.html.svn-base +++ /dev/null @@ -1,80 +0,0 @@ -{% extends "osqaadmin/base.html" %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %} - {% trans "Dashboard" %} -{% endblock %} -{% block description %} - {% trans "Welcome to the OSQA administration area." %} -{% endblock %} - -{% block admincontent %} - <table width="100%"> - <tr> - <td width="50%" valign="top"> - <h3>{%trans "Site statistics" %}</h3> - <table> - <tr> - <td> - {{ statistics.total_questions }} {% trans "question" %}{{ statistics.total_questions|pluralize }} ({{ statistics.questions_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_answers }} {% trans "answer" %}{{ statistics.total_answers|pluralize }} ({{ statistics.answers_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_users }} {% trans "user" %}{{ statistics.total_users|pluralize }} ({{ statistics.users_last_24 }} {% trans "joined in the last 24 hours" %}) - </td> - </tr> - </table> - </td> - <td valign="top"> - <h3>{%trans "Site status" %}</h3> - <table> - <tr> - <td> - {% ifequal settings_pack "bootstrap" %} - {% trans "Your site is running in bootstrap mode, click the button below to revert to defaults." %}<br /> - {% else %} - {% ifequal settings_pack "default" %} - {% trans "Your site is running in standard mode, click the button below to run in bootstrap mode." %}<br /> - {% else %} - {% trans "Your site is running with some customized settings, click the buttons below to run with defaults or in bootstrap mode" %} - {% endifequal %} - {% endifequal %} - {% ifnotequal settings_pack "default" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to revert to the defaults?" %}')) window.location='{% url admin_go_defaults %}';">{% trans "revert to defaults" %}</button> - {% endifnotequal %} - {% ifnotequal settings_pack "bootstrap" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to run bootstrap mode?" %}')) window.location='{% url admin_go_bootstrap %}';">{% trans "go bootstrap" %}</button> - {% endifnotequal %} - </td> - </tr> - <tr> - <td> - <em>"Bootstrap mode" relaxes the minimum required reputation to perform actions like voting and commenting. - This is useful to help new communities get started.</em> - </td> - </tr> - </table> - <h3>{%trans "Recalculate scores and reputation" %}</h3> - <button onclick="if (window.confirm('{% trans "This is a heavy operation, are you sure?" %}')) window.location='{% url admin_denormalize %}';">{% trans "Recalculate" %}</button> - </td> - </tr> - <tr> - <td colspan="2"> - <h3>{% trans "Recent activity" %}</h3> - <table width="100%"> - {% for activity in recent_activity %} - {% activity_item activity request.user %} - {% endfor %} - </table> - </td> - </tr> - </table> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/mail_test.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/mail_test.html.svn-base deleted file mode 100644 index 41bd9441bc9c4155cd2c7a63590e05e2a311598b..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/mail_test.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Your email settings are correct: {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - {% trans "If you see this content your E-Mail settings are correct." %} - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} - {% trans "If you see this content your E-Mail settings are correct." %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/maintenance.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/maintenance.html.svn-base deleted file mode 100644 index 0e4a7320296e88161801d5d4bcca46ba4857aca3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/maintenance.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} - -{% block subtitle %}{% trans "Maintenance mode" %}{% endblock %} -{% block pagename %}{% trans "Maintenance mode" %}{% endblock %} -{% block description %}{% trans "Maintainance mode allows you to close your site for maintainance, allowing only a predetermined set of ip addresses to access it normally." %}{% endblock %} - -{% block admincontent %} -<form method="POST" action=""> - {% csrf_token %} - {% if in_maintenance %} - <h1>{% trans "Your site is currently running on maintenance mode." %}</h1> - <p>{% trans "You can adjust the settings bellow" %}</p> - {% endif %} - <table> - {{ form.as_table }} - </table> - {% if in_maintenance %} - <input type="submit" name="adjust" value="{% trans "Adjust settings" %}" /> - <input type="submit" name="open" value="{% trans "Open site" %}" /> - {% else %} - <input type="submit" name="close" value="{% trans "Close for maintenance" %}" /> - {% endif %} -</form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/moderation.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/moderation.html.svn-base deleted file mode 100644 index 050f1f176aef861a6447a0c779fb091f48068243..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/moderation.html.svn-base +++ /dev/null @@ -1,102 +0,0 @@ -{% extends basetemplate %} - -{% load i18n humanize %} - -{% block subtitle %}{% trans "Moderation" %}{% endblock %} -{% block pagename %}{% trans "Moderation" %}{% endblock %} -{% block description %}{% trans "These tools allow you to search for undesired behaviours and cheating patterns." %}{% endblock %} - -{% block admincontent %} - <div class="module"> - <form action="" id="changelist" method="POST"> - {% csrf_token %} - <div class="actions"> - {% trans "Verify:" %} - <input type="text" size="3" name="limit" id="filter-limit" value="5" /> - <select name="sort" id="filter-sort"> - <option value="high-rep">{% trans "highest ranking users" %}</option> - <option value="newer">{% trans "newer users" %}</option> - <option value="older">{% trans "older users" %}</option> - <option value="ids">{% trans "users with these ids" %}</option> - </select> - <span id="filter-ids" style="display: none"> - <input type="text" name="ids" size="15" /> - <small>{% trans "(Comma separated list of user ids)" %}</small> - </span> - <input type="submit" value="{% trans "Go" %}" /> - </div> - </form> - <script type="text/javascript"> - $(function() { - $limit = $('#filter-limit'); - $sort = $('#filter-sort'); - $ids = $('#filter-ids'); - - function verify_sort() { - if ($sort.val() == "ids") { - $ids.show(); - $limit.hide(); - } else { - $ids.hide(); - $limit.show(); - } - } - - verify_sort(); - $sort.change(verify_sort); - }) - </script> - {% if cheaters %} - <table cellspacing="0" width="100%"> - <caption>{% trans "Possible cheaters" %}</caption> - {% for cheater, fakes in cheaters %} - <tr> - <td> - <div class="cheater-info"> - <p><a href="{{ cheater.get_profile_url }}">{{ cheater.username }}</a></p> - <p><b>{% trans "Email" %}</b> - {% if cheater.email_isvalid %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-yes.gif" alt="{% trans "Validated" %}" /> - {% else %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-no.gif" alt="{% trans "Not validated" %}" /> - {% endif %} - <a href="mailto: {{ cheater.email }}">{{ cheater.email }}</a></p> - <p><b>{% trans "Reputation:" %}</b> {{ cheater.reputation|intcomma }}</p> - </div> - <table cellspacing="0" width="100%"> - <thead> - <tr> - <th>{% trans "Profile" %}</th> - <th>{% trans "Email" %}</th> - <th>{% trans "Reputation" %}</th> - <th>{% trans "Affecting actions" %}</th> - <th>{% trans "Cross ips" %}</th> - <th>{% trans "Cheating score" %}</th> - </tr> - </thead> - <caption>{% trans "Possible fake accounts" %}</caption> - {% for fake in fakes %} - <tr> - <td><a href="{{ fake.get_profile_url }}">{{ fake.username }}</a></td> - <td> - {% if fake.email_isvalid %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-yes.gif" alt="{% trans "Validated" %}" /> - {% else %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-no.gif" alt="{% trans "Not validated" %}" /> - {% endif %} - <a href="mailto: {{ fake.email }}">{{ fake.email }}</a> - </td> - <td>{{ fake.reputation|intcomma }}</td> - <td>{{ fake.fdata.affect_count }} {% trans "out of" %} {{ fake.fdata.total_actions }} ({{ fake.fdata.action_ratio|stringformat:".2f" }}%)</td> - <td>{{ fake.fdata.cross_ip_count }} {% trans "out of" %} {{ fake.fdata.total_ip_count }} ({{ fake.fdata.cross_ip_ratio|stringformat:".2f" }}%)</td> - <td>{{ fake.fdata.fake_score|stringformat:".2f" }}</td> - </tr> - {% endfor %} - </table> - </td> - </tr> - {% endfor %} - </table> - {% endif %} - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/nodeman.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/nodeman.html.svn-base deleted file mode 100644 index ca86af5b5604ea9b8368606f5b9c0e0ae9cdf0b3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/nodeman.html.svn-base +++ /dev/null @@ -1,518 +0,0 @@ -{% extends basetemplate %} - -{% load i18n user_tags extra_tags extra_filters %} - -{% block adminjs %} - <script type="text/javascript"> - $(function() { - var $form = $('#changelist-search'); - - $('#all-node-type-link').click(function() { - $('#type-filter-container').find('input').remove(); - $form.submit(); - }); - - $('.node-type-link').click(function() { - var link_type = $(this).attr('href').substring(1); - - if ($('#type-filter-container').find('input[value=' + link_type + ']').length == 0) { - $('#type-filter-container').append($("<input name=\"node_type\" type=\"hidden\" value=\"" + link_type + "\" />")); - } else { - $('#type-filter-container').find('input[value=' + link_type + ']').remove(); - } - - $form.submit(); - }); - - $('#all-state-link').click(function() { - $('#state-filter-container').find('input').remove(); - $form.submit(); - }); - - $('.state-type-link').click(function() { - var state_type = $(this).attr('href').substring(1); - - if ($('#state-filter-container').find('input[value=' + state_type + ']').length == 0) { - $('#state-filter-container').append($("<input name=\"state_type\" type=\"hidden\" value=\"" + state_type + "\" />")); - } else { - $('#state-filter-container').find('input[value=' + state_type + ']').remove(); - } - - $form.submit(); - }); - - $('.action-select').change(function() { - $('#action-toggle').removeAttr('checked'); - var $tr = $(this).parents('tr'); - if ($(this).attr('checked')) { - $tr.addClass('selected'); - } else { - $tr.removeClass('selected'); - } - }).change(); - - $('#action-toggle').change(function() { - var $rows = $('#result_list').find('tbody').find('tr'); - var $boxes = $('#result_list').find('tbody').find('input'); - - if ($(this).attr('checked')) { - $rows.addClass('selected'); - $boxes.attr('checked', 'checked') - } else { - $rows.removeClass('selected'); - $boxes.removeAttr('checked'); - } - }); - - $('#author-selector').autocomplete('{% url matching_users %}', { - minChars: 1, - matchContains: true, - max: 10, - - formatItem: function(row, i, max, value) { - return row[1] + ' (' + row[2] + ' {% trans "rep" %})'; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - }); - - $('#author-selector').result(function(event, data, formatted) { - if ($('#author-filter-container').find('input[value=' + data[0] + ']').length == 0) { - $('#author-filter-container').append($("<input name=\"authors\" type=\"hidden\" value=\"" + data[0] + "\" />")); - $form.submit(); - } - }); - - $('.author-filter-remover').click(function() { - var id = $(this).attr('rel'); - if ($('#author-filter-container').find('input[value=' + id + ']').length > 0) { - $('#author-filter-container').find('input[value=' + id + ']').remove(); - $form.submit(); - } - }); - - $('#tag-selector').autocomplete('{% url matching_tags %}', { - minChars: 1, - matchContains: true, - max: 10, - - formatItem: function(row, i, max, value) { - return row[1] + ' (' + row[2] + ' {% trans "uses" %})'; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - }); - - $('#tag-selector').result(function(event, data, formatted) { - if ($('#tag-filter-container').find('input[value=' + data[0] + ']').length == 0) { - $('#tag-filter-container').append($("<input name=\"tags\" type=\"hidden\" value=\"" + data[0] + "\" />")); - $form.submit(); - } - }); - - $('.tag-filter-remover').click(function() { - var id = $(this).attr('rel'); - if ($('#tag-filter-container').find('input[value=' + id + ']').length > 0) { - $('#tag-filter-container').find('input[value=' + id + ']').remove(); - $form.submit(); - } - }); - - $('#filter-name-box').one('focus', function() { - $(this).val(''); - $(this).css('color', 'black'); - }); - - $('#filter-name-box').keyup(function() { - if ($(this).val().trim().length > 0) { - $('#save-filter-button').removeAttr('disabled'); - $('#save-filter-button').css('color', 'black'); - } else { - $('#save-filter-button').css('color', '#AAA'); - $('#save-filter-button').attr('disabled', 'disabled'); - } - }); - - var resize_data = null; - - $('.col-resizer').mousedown(function(e) { - var $to_resize = $(this).prev(); - - resize_data = { - resizer: $(this), - to_resize: $to_resize, - start_width: $to_resize.innerWidth(), - x_start: e.pageX, - } - }); - - $('body').mousemove(function(e) { - if (resize_data != null) { - var new_size = (resize_data.start_width - (resize_data.x_start - e.pageX)) + 'px'; - resize_data.to_resize.css({'max-width': new_size, 'min-width': new_size}) - resize_data.resizer.css('max-width', '3px'); - } - }); - - $('body').mouseup(function() { - if (resize_data != null) - resize_data = null; - }); - - $('#filter-panel-header').click(function() { - $('#filter-panel').slideToggle(); - }); - - $('#state-filter-type').change(function() { - $('#state-filter-type-hidden').val($(this).val()); - $form.submit(); - }); - - $('#reset-text-filter').click(function() { - $('#text-filter-input').val(''); - $form.submit(); - return false; - }); - }); - </script> - <style> - #toolbar ul li { - list-style-type: none; - display: inline; - margin-right: 12px; - } - - #result_list tr td.deleted { - background-color: #FDD; - border-bottom: 1px solid #a9a9a9; - } - - #result_list tr td.accepted { - background-color: #DFD; - border-bottom: 1px solid #a9a9a9; - } - - span.question-deleted { - text-decoration: line-through; - } - - .col-resizer { - width: 2px; - min-width: 2px; - min-width: 2px; - cursor: col-resize; - padding: 0 0 0 0; - } - </style> - <script type="text/javascript">window.__admin_media_prefix__ = "{{ settings.ADMIN_MEDIA_PREFIX }}";</script> - <link href="{{ settings.ADMIN_MEDIA_PREFIX }}css/base.css" rel="stylesheet" type="text/css" media="screen" /> - <script type="text/javascript"> - /* gettext identity library */ - - function gettext(msgid) { return msgid; } - function ngettext(singular, plural, count) { return (count == 1) ? singular : plural; } - function gettext_noop(msgid) { return msgid; } - - function interpolate(fmt, obj, named) { - if (named) { - return fmt.replace(/%\(\w+\)s/g, function(match){return String(obj[match.slice(2,-2)])}); - } else { - return fmt.replace(/%s/g, function(match){return String(obj.shift())}); - } - } - - /* formatting library */ - - var formats = new Array(); - - formats['DATETIME_FORMAT'] = 'N j, Y, P'; - formats['DATE_FORMAT'] = 'N j, Y'; - formats['DECIMAL_SEPARATOR'] = '.'; - formats['MONTH_DAY_FORMAT'] = 'F j'; - formats['NUMBER_GROUPING'] = '0'; - formats['TIME_FORMAT'] = 'P'; - formats['FIRST_DAY_OF_WEEK'] = '0'; - formats['TIME_INPUT_FORMATS'] = ['%H:%M:%S', '%H:%M']; - formats['THOUSAND_SEPARATOR'] = ','; - formats['DATE_INPUT_FORMATS'] = ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']; - formats['YEAR_MONTH_FORMAT'] = 'F Y'; - formats['SHORT_DATE_FORMAT'] = 'm/d/Y'; - formats['SHORT_DATETIME_FORMAT'] = 'm/d/Y P'; - formats['DATETIME_INPUT_FORMATS'] = ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M', '%m/%d/%y']; - - function get_format(format_type) { - var value = formats[format_type]; - if (typeof(value) == 'undefined') { - return msgid; - } else { - return value; - } - } - - </script> - <script type="text/javascript" src="{{ settings.ADMIN_MEDIA_PREFIX }}js/core.js"></script> -{% endblock %} - -{% block subtitle %} - {% trans "Node manager" %} -{% endblock %} -{% block description %} - {% trans "Nodes bulk management" %} -{% endblock %} - -{% block admincontent %} - <div id="changelist" class="module filtered"> - <div id="toolbar"> - <form method="get" action="" id="changelist-search"> - {% csrf_token %} - <div> - <div> - <label><img alt="Search" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_searchbox.png"></label> - <input type="text" size="40" name="text" id="text-filter-input" value="{{ text }}"> - <input type="submit" value="{% trans "Search" %}"> - {% if text %} - <small><a href="#" id="reset-text-filter">{% trans "reset text filter" %}</a></small> - {% endif %} - <br /> - <ul> - <li> - <label> - <input type="radio" name="text_in" value="title"{% ifequal text_in "title" %} checked="checked"{% endifequal %} /> - {% trans "Title" %}</label> - </li> - <li> - <label> - <input type="radio" name="text_in" value="body"{% ifequal text_in "body" %} checked="checked"{% endifequal %} /> - {% trans "Body" %}</label> - </li> - <li> - <label> - <input type="radio" name="text_in" value="both"{% ifequal text_in "both" %} checked="checked"{% endifequal %} /> - {% trans "Title and Body" %}</label> - </li> - </ul> - </div> - </div> - <input type="hidden" name="sort" value="{{ nodes.paginator.current_sort }}" /> - <input type="hidden" id="state-filter-type-hidden" name="state_filter_type" value="" /> - <div style="display: none;" id="author-filter-container"> - {% for u in authors %} - <input name="authors" type="hidden" value="{{ u.id }}" /> - {% endfor %} - </div> - <div style="display: none;" id="tag-filter-container"> - {% for t in tags %} - <input name="tags" type="hidden" value="{{ t.id }}" /> - {% endfor %} - </div> - <div id="type-filter-container" style="display: none;"> - {% for type in type_filter %} - <input name="node_type" type="hidden" value="{{ type }}" /> - {% endfor %} - </div> - <div id="state-filter-container" style="display: none;"> - {% for type in state_filter %} - <input name="state_type" type="hidden" value="{{ type }}" /> - {% endfor %} - </div> - </form> - </div> - <div id="changelist-filter"> - <h2 id="filter-panel-header">{% trans "Filter" %}<small> ({% trans "Click to show/hide" %})</small></h2> - <div id="filter-panel"> - <h3>{% trans "By type" %}</h3> - <ul> - <li {% if not type_filter %} class="selected"{% endif %}> - <a id="all-node-type-link" href="#all" title="{% trans "click to clear the type filter" %}">{% trans "all" %}</a> - </li> - {% for type, name in node_types %} - <li{% if type|contained_in:type_filter %} class="selected" title="{% trans "click to remove from the filter" %}"{% else %} title="{% trans "click to add to the filter" %}"{% endif %}> - <a class="node-type-link" href="#{{ type }}">{{ name }}</a> - </li> - {% endfor %} - </ul> - <h3>{% trans "By state" %}</h3> - <ul> - <li {% if not state_filter %} class="selected"{% endif %}> - <a id="all-state-link" href="#any" title="{% trans "click to clear the state filter" %}">{% trans "any" %}</a> - </li> - {% for state_type in state_types %} - <li{% if state_type|contained_in:state_filter %} class="selected" title="{% trans "click to remove from the filter" %}"{% else %} title="{% trans "click to add to the filter" %}"{% endif %}> - <a class="state-type-link" href="#{{ state_type }}">{{ state_type }}</a> - </li> - {% endfor %} - <li> - <select id="state-filter-type"> - <option value="any"{% ifequal state_filter_type "any" %} selected="selected"{% endifequal %}>{% trans "Match any selected" %}</option> - <option value="all"{% ifequal state_filter_type "all" %} selected="selected"{% endifequal %}>{% trans "Match all selected" %}</option> - </select> - </li> - </ul> - <h3>{% trans "By author(s)" %}</h3> - {% if not authors.count %} - <small>{% trans "No users selected, use the box bellow to add users to the filter." %}</small> - {% else %} - <ul> - {% for u in authors %} - <li class="selected"> - <img class="author-filter-remover" rel="{{ u.id }}" src="{% media "/media/images/close-small-dark.png" %}"> - {{ u.decorated_name }} ({{ u.reputation }}) - </li> - {% endfor %} - </ul> - <small>{% trans "Click on the cross next to a user name to remove it from the filter." %}</small> - {% endif %} - <input type="text" size="20" autocomplete="off" id="author-selector" /> - - <h3>{% trans "By tag(s)" %}</h3> - {% if not tags.count %} - <small>{% trans "No tags selected, use the box bellow to add tags to the filter." %}</small> - {% else %} - <ul> - {% for t in tags %} - <li class="selected"> - <img class="tag-filter-remover" rel="{{ t.id }}" src="{% media "/media/images/close-small-dark.png" %}"> - {{ t.name }} ({{ t.used_count }}) - </li> - {% endfor %} - </ul> - <small>{% trans "Click on the cross next to a tag name to remove it from the filter." %}</small> - {% endif %} - <input type="text" size="20" autocomplete="off" id="tag-selector" /> - - <h3>{% trans "Pre defined" %}</h3> - {% if not settings.NODE_MAN_FILTERS %} - <small>{% trans "There are no saved filters. Click bellow to add." %}</small> - {% endif %} - <ul id="pre-filter-container"> - {% for name, uri in settings.NODE_MAN_FILTERS %} - <li class="selected"><a href="{% url admin_tools "nodeman" %}?{{ uri }}">{{ name }}</a></li> - {% endfor %} - </ul> - <form action="" method="POST"> - {% csrf_token %} - <input name="filter_name" type="text" size="20" id="filter-name-box" style="color: #AAA;" value="{% trans "Filter name..." %}" /> - <button name="save_filter" value="0" style="color: #AAA;" title="{% trans "Click to save the current filter" %}" id="save-filter-button" disabled="disabled" class="button">{% trans "Save" %}</button> - </form> - - {% comment %}<h3>{% trans "Show" %}</h3> - <form action="" method="get"> - {% csrf_token %} - <div>{{ show_form.show }}</div> - <input type="submit" value="{% trans "Refresh" %}" /> - </form>{% endcomment %} - </div> - </div> - <form id="changelist-form" method="POST" action=""> - {% csrf_token %} - <div class="actions"> - <label> - {% trans "Action" %}: - <select name="action"> - <option selected="selected" value="">---------</option> - <option value="delete_selected">{% trans "Mark deleted" %}</option> - <option value="undelete_selected">{% trans "Undelete" %}</option> - <option value="hard_delete_selected">{% trans "Delete completely" %}</option> - <option value="close_selected">{% trans "Close (questions only)" %}</option> - </select> - </label> - <button value="0" name="execute" title="{% trans "Run the selected action" %}" class="button" type="submit">{% trans "Go" %}</button> - </div> - <table id="result_list" cellspacing="0"> - <thead> - <tr> - {% declare %} - current_sort = nodes.paginator.current_sort - added_at = current_sort == "added_at" and "ascending" or (current_sort == "added_at_asc" and "descending" or "") - author = current_sort == "author" and "ascending" or (current_sort == "author_asc" and "descending" or "") - score = current_sort == "score" and "ascending" or (current_sort == "score_asc" and "descending" or "") - act_at = current_sort == "act_at" and "ascending" or (current_sort == "act_at_asc" and "descending" or "") - act_by = current_sort == "act_by" and "ascending" or (current_sort == "act_by_asc" and "descending" or "") - - added_at_link = current_sort == "added_at" and nodes.paginator.added_at_asc_sort_link or nodes.paginator.added_at_sort_link - author_link = current_sort == "author_asc" and nodes.paginator.author_sort_link or nodes.paginator.author_asc_sort_link - act_at_link = current_sort == "act_at" and nodes.paginator.act_at_asc_sort_link or nodes.paginator.act_at_sort_link - act_by_link = current_sort == "act_by_asc" and nodes.paginator.act_by_sort_link or nodes.paginator.act_by_asc_sort_link - {% enddeclare %} - {% spaceless %} - <th class="action-checkbox-column"> - <input type="checkbox" id="action-toggle" style="display: inline;" /> - </th> - <th>{% trans "Type" %}</th> - <th>{% trans "Summary" %}</th> - <th class="col-resizer"></th> - <th>{% trans "State" %}</th> - <th class="sorted {{ author }}"> - <a href="{{ author_link }}">{% trans "Author" %}</a> - </th> - <th class="sorted {{ added_at }}"> - <a href="{{ added_at_link }}">{% trans "Added at" %}</a> - </th> - {% comment %} - <th class="sorted {{ score }}"> - <a href="{{ score_link }}">{% trans "Score" %}</a> - </th> - {% endcomment %} - <th class="sorted {{ act_by }}"> - <a href="{{ act_by_link }}">{% trans "Last activity by" %}</a> - </th> - <th class="sorted {{ act_at }}"> - <a href="{{ act_at_link }}">{% trans "Last activity at" %}</a> - </th> - <th>{% trans "Tags" %}</th> - {% endspaceless %} - </tr> - </thead> - <tbody> - {% with filter_form.state_type.data as state_type %} - {% for node in nodes.paginator.page %} - <tr class="{% cycle 'row1' 'row2' %}"> - <td><input type="checkbox" name="_selected_node" value="{{ node.id }}" class="action-select"></td> - <td>{{ node.friendly_name }}</td> - {% declare %} - is_root = node.abs_parent == None - title = is_root and node.title or node.abs_parent.title - - anchor = "<strong>%s</strong>" % html.hyperlink(node.get_absolute_url(), title) - anchor = ((not is_root) and node.abs_parent.nis.deleted) and "<span class=\"question-deleted\">%s</span>" % anchor or anchor - anchor = is_root and anchor or "(%s)" % anchor - anchor = html.mark_safe(anchor) - - td_class = "" - td_class = node.nis.accepted and "accepted" or td_class - td_class = node.nis.deleted and "deleted" or td_class - {% enddeclare %} - <td class="{{ td_class }}" colspan="2"> - {{ anchor }}<br /> - {{ node.summary }} - </td> - <td> - {% for state in node.states.all %} - <b>{{ state.state_type }}</b> {% diff_date state.action.at %} {% trans "by" %} - <a target="_blank" href="{{ state.action.by.get_absolute_url }}">{{ state.action.by.decorated_name }}</a><br /> - {% endfor %} - </td> - <td><a href="{{ node.author.get_absolute_url }}">{{ node.author.decorated_name }}</a></td> - <td>{% diff_date node.added_at %}</td> - <!--<td>{{ node.score }}</td>--> - <td><a href="{{ node.last_activity_by.get_absolute_url }}">{{ node.last_activity_by.decorated_name }}</a></td> - <td>{% diff_date node.last_activity_at %}</td> - <td> - {% for t in node.tags.all %} - {% if t|contained_in:tags %}<b>{{ t.name }}</b> - {% else %}{{ t.name }}{% endif %} - {% endfor %} - </td> - </tr> - {% endfor %} - {% endwith %} - </tbody> - </table> - {{ nodes.paginator.page_numbers }} - </form> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/set.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/set.html.svn-base deleted file mode 100644 index 3128d79565acc87da7649332f291d1402a669f70..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/set.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% extends basetemplate %} - -{% load i18n extra_tags extra_filters %} - -{% block subtitle %}{{ form.set.title }}{% endblock %} -{% block pagename %}{{ form.set.title }}{% endblock %} -{% block description %}{{ form.set.description }}{% endblock %} - -{% block admincontent %} - <form action="" method="POST" enctype="multipart/form-data" accept-charset="utf-8"> - {% csrf_token %} - <table id="admin_form" style="width: 100%"> - {{ form.as_table }} - <tr> - <th></th> - <td> - <input id="submit" name="submit" type="submit" value="{% trans "Save" %}" onclick="this.form.target=''; return true;" /> - {% if form.set.can_preview %} - <input id="preview" name="preview" type="submit" value="{% trans "Preview" %}" onclick="this.form.target='_blank'; return true;" /> - {% if form.set.name|contained_in:unsaved %} - <input id="reset" name="reset" type="submit" value="{% trans "Reset Changes" %}" onclick="this.form.target=''; return true;" /> - {% endif %} - {% endif %} - </td> - </tr> - </table> - </form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/static_pages.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/static_pages.html.svn-base deleted file mode 100644 index ea49a26050ee4211ec2af58417bb959c252dee36..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/static_pages.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} - -{% block subtitle %}{% trans "Static pages" %}{% endblock %} -{% block pagename %}{% trans "Static pages" %}{% endblock %} -{% block description %}{% trans "Allows you to create a set of static pages" %}{% endblock %} - -{% block admincontent %} - <h1>{% trans "Select page to edit" %}</h1> - <ul class="object-tools"> - <li><a class="addlink" href="{% url admin_new_page %}">{% trans "New page" %}</a></li> - </ul> - <div class="module"> - <table style="width: 100%"> - <caption>{% trans "Pages" %}</caption> - <tbody> - {% for page in pages %} - <tr> - <th scope="row"><a href="{% url admin_edit_page id=page.id %}">{{ page.headline }}</a></th> - <td style="width: 125px;"><a class="changelink" href="{% url admin_edit_page id=page.id %}">{% trans "Edit" %}</a></td> - <td style="width: 125px;"> - <a onclick="return confirm('{% trans "Are you sure you want to delete this page?" %}');" class="deletelink" href="{% url admin_delete_page id=page.id %}"> - {% trans "Delete" %} - </a> - </td> - </tr> - {% endfor %} - </tbody> - </table> - </div> - -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/statistics.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/statistics.html.svn-base deleted file mode 100644 index e01252212477f32d57b014ce807efaef05f63290..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/statistics.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load extra_tags %} - -{% block adminjs %} -<script type='text/javascript' src='{% media "/media/js/excanvas.min.js" %}'></script> -<script type='text/javascript' src='{% media "/media/js/jquery.flot.min.js" %}'></script> -<script type="text/javascript"> - $().ready(function(){ - {% for graph in graphs %} - var {{ graph.id }} = {{ graph.data }}; - var {{ graph.id }}_placeholder = $('#{{ graph.id }}'); - - $.plot({{ graph.id }}_placeholder, [{{ graph.id }}], { - xaxis: { mode: "time" }, - points: { show: false }, - lines: { show: true } - }); - {% endfor %} - }); -</script> -{% endblock %} - -{% block subtitle %}{% trans "Dashboard" %}{% endblock %} -{% block pagename %}{% trans "Dashboard" %}{% endblock %} -{% block description %}{% trans "Some simple graphics to help you get a notion of whats going on in your site." %}{% endblock %} - -{% block admincontent %} -{% for graph in graphs %} - {% include "osqaadmin/graph.html" %} -{% endfor %} -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/osqaadmin/.svn/text-base/test_email_settings.html.svn-base b/forum/skins/default/templates/osqaadmin/.svn/text-base/test_email_settings.html.svn-base deleted file mode 100644 index 47a3ac585bd0be0961e546600481631b80ba65da..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/osqaadmin/.svn/text-base/test_email_settings.html.svn-base +++ /dev/null @@ -1,20 +0,0 @@ -{% load i18n %} - -<p> - {% blocktrans %} - An attempt has been made to send email to - {% endblocktrans %} {{ user.email }}. -</p> - -<p> - {% blocktrans %} - Please, check your inbox and if you see the new test message your email STMP settings are correct. - {% endblocktrans %} -</p> - -<p> - {% blocktrans %} - If you do not see the new test message check your spam folder, and if you don't find it check your SMTP settings - again. It might be useful to take a look at the log file. - {% endblocktrans %} -</p> \ No newline at end of file diff --git a/forum/skins/default/templates/paginator/.svn/all-wcprops b/forum/skins/default/templates/paginator/.svn/all-wcprops deleted file mode 100644 index 04c043d08541c42056f092c4a02482b46af479d9..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/paginator/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/paginator -END -page_sizes.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/490/osqa/trunk/forum/skins/default/templates/paginator/page_sizes.html -END -sort_tabs.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/631/osqa/trunk/forum/skins/default/templates/paginator/sort_tabs.html -END -page_numbers.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/paginator/page_numbers.html -END diff --git a/forum/skins/default/templates/paginator/.svn/entries b/forum/skins/default/templates/paginator/.svn/entries deleted file mode 100644 index 263aa01e1906482247a98036732e81d6f5f35ed7..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/paginator/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/paginator -http://svn.osqa.net/svnroot - - - -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -sort_tabs.html -file - - - - -2012-06-22T20:34:42.312617Z -217e7101c100b94a9ff0e5c8cf7a7f04 -2010-12-27T17:42:19.423434Z -631 -jordan - - - - - - - - - - - - - - - - - - - - - -482 - -page_numbers.html -file - - - - -2012-06-22T20:34:42.312617Z -88dae789ffaff9174b1e6b90fec6e7df -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -840 - -page_sizes.html -file - - - - -2012-06-22T20:34:42.312617Z -4b1ed0c4b79ccfe1b678861af329b49f -2010-07-06T20:25:06.502152Z -490 -hernani - - - - - - - - - - - - - - - - - - - - - -391 - diff --git a/forum/skins/default/templates/paginator/.svn/text-base/page_numbers.html.svn-base b/forum/skins/default/templates/paginator/.svn/text-base/page_numbers.html.svn-base deleted file mode 100644 index 9d4fab7029a80c59122ad95f1ebf42a4926bf0dc..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/paginator/.svn/text-base/page_numbers.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -{% spaceless %} -{% load i18n %} - -<p class="paginator"> - {% if has_previous %} - <span class="prev"><a href="{{ previous_url }}" title="{% trans "previous" %}">« {% trans "previous" %}</a></span> - {% endif %} - {% for range in page_numbers %} - {% if range %} - {% for num, url in range %} - {% ifequal num current %} - <span class="curr this_page">{{ num }}</span> - {% else %} - <a class="page" href="{{ url }}" >{{ num }}</a> - {% endifequal %} - {% endfor %} - {% else %} - ... - {% endif %} - {% endfor %} - {% if has_next %} - <span class="next"><a href="{{ next_url }}" title="{% trans "next page" %}">{% trans "next" %} »</a></span> - {% endif %} -</p> -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/default/templates/paginator/.svn/text-base/page_sizes.html.svn-base b/forum/skins/default/templates/paginator/.svn/text-base/page_sizes.html.svn-base deleted file mode 100644 index f0859b58e5772c5ac9dbd7c0476f521fcfbe2d7f..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/paginator/.svn/text-base/page_sizes.html.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -{% spaceless %} -{% load i18n %} -<div class="paginator"> - <span class="text">{% trans "posts per page" %}</span> - {% for size, url in sizes %} - {% ifequal size current %} - <span class="curr">{{ size }}</span> - {% else %} - <span class="page"><a href="{{ url }}">{{ size }}</a></span> - {% endifequal %} - {% endfor %} -</div> -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/default/templates/paginator/.svn/text-base/sort_tabs.html.svn-base b/forum/skins/default/templates/paginator/.svn/text-base/sort_tabs.html.svn-base deleted file mode 100644 index a0662a9fd4c67e800181120c144b66b8cc5975d9..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/paginator/.svn/text-base/sort_tabs.html.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -{% load i18n %} -{% spaceless %} -<div class="tabsA"> - {% for name, label, url, descr in sorts %} - <a href="{{ url }}"{% ifequal current name %} class="on"{% endifequal %} title="{{ descr }}">{{ label }}</a> - {% endfor %} - {% comment %} - <span class="sticky-sort-tabs"> - <input title="{% trans "Check to make the sort order sticky" %}" type="checkbox" checked="{% if sticky %}checked{% endif %}" /> - </span> - {% endcomment %} -</div> -{% endspaceless %} diff --git a/forum/skins/default/templates/question_list/.svn/all-wcprops b/forum/skins/default/templates/question_list/.svn/all-wcprops deleted file mode 100644 index 5b38b34ca966d8aac9d99ba53ba9a0ec5a29ca9a..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/all-wcprops +++ /dev/null @@ -1,47 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1240/osqa/trunk/forum/skins/default/templates/question_list -END -tag_selector.html -K 25 -svn:wc:ra_dav:version-url -V 95 -/svnroot/!svn/ver/1078/osqa/trunk/forum/skins/default/templates/question_list/tag_selector.html -END -item.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/1240/osqa/trunk/forum/skins/default/templates/question_list/item.html -END -related_tags.html -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/question_list/related_tags.html -END -sort_tabs.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/631/osqa/trunk/forum/skins/default/templates/question_list/sort_tabs.html -END -title.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/431/osqa/trunk/forum/skins/default/templates/question_list/title.html -END -subscription_item.html -K 25 -svn:wc:ra_dav:version-url -V 99 -/svnroot/!svn/ver/546/osqa/trunk/forum/skins/default/templates/question_list/subscription_item.html -END -count.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/516/osqa/trunk/forum/skins/default/templates/question_list/count.html -END diff --git a/forum/skins/default/templates/question_list/.svn/entries b/forum/skins/default/templates/question_list/.svn/entries deleted file mode 100644 index 2625bd771f9842f80afb7e7d85eb256f307ca544..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/entries +++ /dev/null @@ -1,266 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/question_list -http://svn.osqa.net/svnroot - - - -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -tag_selector.html -file - - - - -2012-06-22T20:34:42.636456Z -fff932f9091fd7e7dad020c313e13aa6 -2011-06-25T11:49:04.870082Z -1078 -jordan - - - - - - - - - - - - - - - - - - - - - -2389 - -item.html -file - - - - -2012-06-22T20:34:42.632458Z -759243d601efba78185cbed90a71be02 -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - - - - - - - - -2354 - -related_tags.html -file - - - - -2012-06-22T20:34:42.632458Z -116a93715521849457771adc03073955 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -635 - -sort_tabs.html -file - - - - -2012-06-22T20:34:42.632458Z -d0a1eb0012e717d886eda29e91b0b2b8 -2010-12-27T17:42:19.423434Z -631 -jordan - - - - - - - - - - - - - - - - - - - - - -774 - -title.html -file - - - - -2012-06-22T20:34:42.632458Z -9ee0c91ca6e8d4f70086c29cd90f351d -2010-06-16T16:13:22.025763Z -431 -qw3rty - - - - - - - - - - - - - - - - - - - - - -733 - -subscription_item.html -file - - - - -2012-06-22T20:34:42.636456Z -292fca4ff2040d52bb607821db2c1183 -2010-07-16T23:05:44.473939Z -546 -qw3rty - - - - - - - - - - - - - - - - - - - - - -642 - -count.html -file - - - - -2012-06-22T20:34:42.636456Z -040a0158ce3a6e266ca75edc2917ffb9 -2010-07-10T01:26:49.228886Z -516 -hernani - - - - - - - - - - - - - - - - - - - - - -699 - diff --git a/forum/skins/default/templates/question_list/.svn/text-base/count.html.svn-base b/forum/skins/default/templates/question_list/.svn/text-base/count.html.svn-base deleted file mode 100644 index dbb45eb8ed70af83747eb4c6a598c68dc016cb27..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/text-base/count.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% spaceless %} -{% load i18n humanize extra_tags %} -{% declare %} - answer_count = questions.children_count('answer') -{% enddeclare %} - -<div class="boxC"> - <div class="questions-count"> - {{ questions.paginator.count }}<span style="color:black;font-size:14px;margin-left:5px">{{ list_description }}</span> - </div> - - - {% if answer_count %} - <div class="questions-count"> - {{ answer_count }}<span style="color:black;font-size:14px;margin-left:5px">{% trans "answers" %}</span> - </div> - - {% endif %} - - <div> - <p class="nomargin"> - {{ questions.paginator.sort_description }} - </p> - </div> -</div> -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/default/templates/question_list/.svn/text-base/item.html.svn-base b/forum/skins/default/templates/question_list/.svn/text-base/item.html.svn-base deleted file mode 100644 index 1ad2ba5c8e98859e3da6cb9843e79e651fcec7a8..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/text-base/item.html.svn-base +++ /dev/null @@ -1,40 +0,0 @@ -{% load i18n humanize extra_filters extra_tags user_tags %} -<div class="short-summary"> - <div class="counts">{% if favorite_count %} - <div class="favorites"> - <span class="favorite-mark{% if question.favourite_count %} on{% endif %}"></span> - <div class="item-count">{{question.favourite_count|intcomma}}</div> - </div> - {% endif %} - <div class="votes"> - <div class="item-count">{{question.score|intcomma}}</div> - <div>{% ifequal question.score 1 %}{% trans "vote" %}{% else %}{% trans "votes" %}{% endifequal %}</div> - </div > - <div {% if question.accepted_count %}title="{% trans "this question has an accepted answer" %}"{% endif %} class="status {% if question.accepted_count %}answered-accepted{% endif %} {% ifequal question.answer_count 0 %}unanswered{% endifequal %}{% ifnotequal question.answer_count 0 %}answered{% endifnotequal %}"> - <div class="item-count">{{question.answer_count|intcomma}}</div> - <div>{% ifequal question.answer_count 1 %}{% trans "answer" %}{% else %}{% trans "answers" %}{% endifequal %}</div> - </div> - <div class="views"> - <div class="item-count">{{question.view_count|decorated_int|safe}}</div> - <div>{% ifequal question.view_count 1 %}{% trans "view" %}{% else %}{% trans "views" %}{% endifequal %}</div> - </div> - </div> - - <div class="question-summary-wrapper"> - <h2><a {% if not question_summary %}title="{{ question.summary }}"{% endif %} href="{{ question.get_absolute_url }}">{{question.headline}}</a></h2> - {% if question_summary %} - <div class="summary"> - {{ question.summary }} - </div> - {% endif %} - <div class="userinfo"> - <span class="relativetime" title="{{question.last_activity_at}}">{% diff_date question.last_activity_at %}</span> - {% if question.last_activity_by %}{% user_signature question.last_activity_by signature_type %}{% endif %} - </div> - - <div class="tags">{% for tag in question.tagname_list %} - <a class="tag-link-{{ tag }}" href="{% url tag_questions tag|urlencode %}" title="{% trans "see questions tagged" %} '{{ tag }}'" rel="tag">{{ tag }}</a>{% endfor %} - </div> - </div> - -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/question_list/.svn/text-base/related_tags.html.svn-base b/forum/skins/default/templates/question_list/.svn/text-base/related_tags.html.svn-base deleted file mode 100644 index 6ec2a75c17d688b2798c456d6409e00879198fed..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/text-base/related_tags.html.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -{% load i18n %} -{% load humanize %} - -{% if tags %} - <div class="boxC"> - <h3 class="subtitle">{% trans "Related tags" %}</h3> - <div class="tags" id="recent-tags"> - {% for tag in tags %} - <a rel="tag" class="tag-link-{{ tag.name }}" title="{% blocktrans with tag.name as tag_name %}see questions tagged '{{ tag_name }}'{% endblocktrans %}" href="{% url tag_questions tag.name|urlencode %}">{{ tag.name }}</a> - <span class="tag-number">× {{ tag.used_count|intcomma }}</span> - <br /> - {% endfor %} - </div> - </div> -{% endif %} \ No newline at end of file diff --git a/forum/skins/default/templates/question_list/.svn/text-base/sort_tabs.html.svn-base b/forum/skins/default/templates/question_list/.svn/text-base/sort_tabs.html.svn-base deleted file mode 100644 index eff04084c96469be3ed6a3b69df2154db3296f78..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/text-base/sort_tabs.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n %} - -<div class="tabsA"> - <a id="active" href="{{ base_url }}active"{% ifequal current "active" %} class="on"{% endifequal %} title="{% trans "most recently updated questions" %}">{% trans "active" %}</a> - <a id="latest" href="{{ base_url }}latest"{% ifequal current "latest" %} class="on"{% endifequal %} title="{% trans "most recently asked questions" %}">{% trans "newest" %}</a> - <a id="hottest" href="{{ base_url }}hottest"{% ifequal current "hottest" %} class="on"{% endifequal %} title="{% trans "hottest questions" %}">{% trans "hottest" %}</a> - <a id="mostvoted" href="{{ base_url }}mostvoted"{% ifequal current "mostvoted" %} class="on"{% endifequal %} title="{% trans "most voted questions" %}">{% trans "most voted" %}</a> -</div> diff --git a/forum/skins/default/templates/question_list/.svn/text-base/subscription_item.html.svn-base b/forum/skins/default/templates/question_list/.svn/text-base/subscription_item.html.svn-base deleted file mode 100644 index 3f1f688f9870235648c65ecffdbbe769fc5c9d6c..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/text-base/subscription_item.html.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -{% load i18n humanize extra_filters extra_tags user_tags %} -<div class="subscription_summary"> - <div style="height:100%"><a class="sidebar_button subscription_unsubscribe_button" href="{% url subscribe id=subscription.question.id user=subscription.user.id %}"> - {% trans "Unsubscribe" %} - </a></div> - - <div class="subscription_title"><a title="{{ question.summary }}" href="{{ question.get_absolute_url }}">{{question.headline}}</a></div> - <div class="subscription_details"><span class="relativetime" title="{{subscription.last_view}}">{% trans "Last checked" %} {% diff_date subscription.last_view %}</span></div> -</div> - diff --git a/forum/skins/default/templates/question_list/.svn/text-base/tag_selector.html.svn-base b/forum/skins/default/templates/question_list/.svn/text-base/tag_selector.html.svn-base deleted file mode 100644 index 89817a972952a8a84a284b2bff42265df3abe006..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/text-base/tag_selector.html.svn-base +++ /dev/null @@ -1,51 +0,0 @@ -{% load i18n %} -{% load extra_tags %} - -{% if show_interesting_tags %} -{% if user_authenticated %} -<div id="tagSelector" class="boxC"> - <h3 class="subtitle">{% trans "Interesting tags" %}</h3> - <div class="tags interesting marked-tags"> - {% for tag_name in interesting_tag_names %} - {% spaceless %} - <span class="deletable-tag" id="interesting-tag-{{tag_name}}"> - <a rel="tag" - class="tag-link-{{ tag_name }}" - title="{% blocktrans with tag as tagname %}see questions tagged '{{ tag_name }}'{% endblocktrans %}" - href="{% url tag_questions tag_name|urlencode %}">{{tag_name}}</a> - <img class="delete-icon" - src="{% media "/media/images/close-small-dark.png" %}" - title="{% blocktrans %}remove '{{tag_name}}' from the list of interesting tags{% endblocktrans %}"/> - </span> - {% endspaceless %} - {% endfor %} - </div> - <input id="interestingTagInput" autocomplete="off" type="text"/> - <input id="interestingTagAdd" type="submit" value="{% trans "Add" %}"/> - <h3 class="subtitle">{% trans "Ignored tags" %}</h3> - <div class="tags ignored marked-tags"> - {% for tag_name in ignored_tag_names %} - {% spaceless %} - <span class="deletable-tag" id="ignored-tag-{{tag_name}}"> - <a rel="tag" - class="tag-link-{{ tag_name }}" - title="{% blocktrans with tag as tagname %}see questions tagged '{{ tag_name }}'{% endblocktrans %}" - href="{% url tag_questions tag_name|urlencode %}">{{tag_name}}</a> - <img class="delete-icon" - src="{% media "/media/images/close-small-dark.png" %}" - title="{% blocktrans %}remove '{{tag_name}}' from the list of ignored tags{% endblocktrans %}"/> - </span> - {% endspaceless %} - {% endfor %} - </div> - <input id="ignoredTagInput" autocomplete="off" type="text"/> - <input id="ignoredTagAdd" type="submit" value="{% trans "Add" %}"/> - {% comment %} - <p id="hideIgnoredTagsControl"> - <input id="hideIgnoredTagsCb" type="checkbox" {% if request.user.hide_ignored_questions %}checked="checked"{% endif %} /> - <label id="hideIgnoredTagsLabel" for="hideIgnoredTagsCb">{% trans "keep ignored questions hidden" %}</label> - <p> - {% endcomment %} -</div> -{% endif %} -{% endif %} diff --git a/forum/skins/default/templates/question_list/.svn/text-base/title.html.svn-base b/forum/skins/default/templates/question_list/.svn/text-base/title.html.svn-base deleted file mode 100644 index bb6268fefd8fa48ba73935c6efdae35be6e7c6e5..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/question_list/.svn/text-base/title.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -{% load i18n %} - -<div class="headQuestions"> - {% if searchtag %} - {% trans "Found by tags" %} - {% else %} - {% if searchtitle %} - {% if settings.USE_SPHINX_SEARCH %} - {% trans "Search results" %} - {% else %} - {% trans "Found by title" %} - {% endif %} - {% else %} - {% if is_unanswered %} - {% trans "Unanswered questions" %} - {% else %} - {% if page_title %} - {% trans page_title %} - {% else %} - {% trans "All Questions" %} - {% endif %} - {% endif %} - {% endif %} - {% endif %} -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/sidebar/.svn/all-wcprops b/forum/skins/default/templates/sidebar/.svn/all-wcprops deleted file mode 100644 index 7158438c484c9a5e6f7d97ea3adca187310cdf6b..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/sidebar/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1103/osqa/trunk/forum/skins/default/templates/sidebar -END -markdown_help.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/1073/osqa/trunk/forum/skins/default/templates/sidebar/markdown_help.html -END -user_blocks.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/617/osqa/trunk/forum/skins/default/templates/sidebar/user_blocks.html -END -recent_tags.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1103/osqa/trunk/forum/skins/default/templates/sidebar/recent_tags.html -END -recent_awards.html -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/936/osqa/trunk/forum/skins/default/templates/sidebar/recent_awards.html -END diff --git a/forum/skins/default/templates/sidebar/.svn/entries b/forum/skins/default/templates/sidebar/.svn/entries deleted file mode 100644 index 0d70f105599940d6857c176d7b3c8b88c12906d5..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/sidebar/.svn/entries +++ /dev/null @@ -1,164 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/sidebar -http://svn.osqa.net/svnroot - - - -2011-07-05T19:45:38.441736Z -1103 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -markdown_help.html -file - - - - -2012-06-22T20:34:43.076236Z -ebabb64aaf25670657008d45fff92d1a -2011-06-24T10:35:04.189336Z -1073 -jordan - - - - - - - - - - - - - - - - - - - - - -1023 - -user_blocks.html -file - - - - -2012-06-22T20:34:43.084232Z -c85ff188d18d490960c7999c187c7780 -2010-11-10T15:48:20.410108Z -617 -hernani - - - - - - - - - - - - - - - - - - - - - -195 - -recent_tags.html -file - - - - -2012-06-22T20:34:43.072238Z -dfed25f473f4650cc9c1b1f9a87cacd2 -2011-07-05T19:45:38.441736Z -1103 -jordan - - - - - - - - - - - - - - - - - - - - - -743 - -recent_awards.html -file - - - - -2012-06-22T20:34:43.076236Z -dc57e386e1fc52059d2b11306541b9af -2011-04-06T15:14:49.758065Z -936 -jordan - - - - - - - - - - - - - - - - - - - - - -693 - diff --git a/forum/skins/default/templates/sidebar/.svn/text-base/markdown_help.html.svn-base b/forum/skins/default/templates/sidebar/.svn/text-base/markdown_help.html.svn-base deleted file mode 100644 index 5a00975578b71206e93912ae5b2d9be4a3f7f9e6..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/sidebar/.svn/text-base/markdown_help.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% load i18n %} -<div class="boxC" id="editor_side_bar"> - <p class="subtitle darkred">{% trans "Markdown Basics" %}</p> - <ul class="list-item"> - <li> - {% trans "*italic* or _italic_" %} - </li> - <li> - {% trans "**bold** or __bold__" %} - </li> - <li> - <b>{% trans "link" %}</b>:[{% trans "text" %}](http://url.com/ "{% trans "title" %}") - - </li> - - <li> - <b>{% trans "image" %}</b>? - - </li> - <li> - {% trans "numbered list:" %} - 1. Foo - 2. Bar - </li> - <li> - {% trans "to add a line break simply add two spaces to where you would like the new line to be." %} - </li> - <li> - {% trans "basic HTML tags are also supported" %} - </li> - </ul> - <p class='info-box-follow-up-links'> - <a href="{% url markdown_help %}" target="_blank">{% trans "learn more about Markdown" %} </a> - </p> -</div> diff --git a/forum/skins/default/templates/sidebar/.svn/text-base/recent_awards.html.svn-base b/forum/skins/default/templates/sidebar/.svn/text-base/recent_awards.html.svn-base deleted file mode 100644 index 37672c4bf0fb84b8d0347e004a335e75ca361ad2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/sidebar/.svn/text-base/recent_awards.html.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -{% load i18n %} - -<div class="boxC"> - <h3>{% trans "Recent awards" %}</h3> - <div class="body"> - <ul class="badge-list"> - {% for award in awards %} - <li> - <a href="{% url badges %}{{award.badge.id}}/{{award.badge.name|slugify}}" title="{{ award.badge.description }}" class="medal"> - <span class="badge{{ award.badge.type }}">●</span> {{ award.badge.name }}</a> - <a href="{{ award.user.get_profile_url }}">{{ award.user.decorated_name }}</a> - </li> - {% endfor %} - </ul> - <div class="more"><a href="{% url badges %}">{% trans "all awards" %} </a> </div> - </div> -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/sidebar/.svn/text-base/recent_tags.html.svn-base b/forum/skins/default/templates/sidebar/.svn/text-base/recent_tags.html.svn-base deleted file mode 100644 index 40209c0dcdbcc06e4745976dd1f6cbac1efb61d4..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/sidebar/.svn/text-base/recent_tags.html.svn-base +++ /dev/null @@ -1,16 +0,0 @@ -{% load i18n extra_tags %} -{% declare %} - show_tags_in_a_cloud = settings.SHOW_TAGS_IN_A_CLOUD -{% enddeclare %} - -<div class="boxC"> - <h3>{% trans "Recent tags" %}</h3> - <div class="body"> - <div class="tags" id="recent-tags"> - {% for tag in tags %} - <a rel="tag"{% if show_tags_in_a_cloud %} style="font-size: {% get_tag_font_size tag %}px;"{% endif %} class="tag-link-{{ tag.name }}" title="{% blocktrans with tag.name as tagname %}see questions tagged '{{tagname}}'{% endblocktrans %}" href="{% url tag_questions tag.name|urlencode %}">{{ tag.name }}</a> - {% endfor %} - </div> - <div class="more"><a href="{% url tags %}">{% trans "popular tags" %} </a> </div> - </div> -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/sidebar/.svn/text-base/user_blocks.html.svn-base b/forum/skins/default/templates/sidebar/.svn/text-base/user_blocks.html.svn-base deleted file mode 100644 index d3d98cc27ac925ea2e1fccde5dbbf0bb721dc598..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/sidebar/.svn/text-base/user_blocks.html.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -{% load markup %} - -{% if show %} -{% if wrap %}<div id="{{ blockid }}" class="boxC"> - <div class="body">{% endif %} - {{ content }} - {% if wrap %}</div> -</div>{% endif %} -{% endif %} diff --git a/forum/skins/default/templates/users/.svn/all-wcprops b/forum/skins/default/templates/users/.svn/all-wcprops deleted file mode 100644 index 396c86b72a385e3521bc37e42db1b2337842249e..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/all-wcprops +++ /dev/null @@ -1,119 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1247/osqa/trunk/forum/skins/default/templates/users -END -subscriptions.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/users/subscriptions.html -END -suspend_user.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/1230/osqa/trunk/forum/skins/default/templates/users/suspend_user.html -END -recent.html -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/templates/users/recent.html -END -edit.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1212/osqa/trunk/forum/skins/default/templates/users/edit.html -END -subscriptions_settings.html -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/users/subscriptions_settings.html -END -tabs.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/440/osqa/trunk/forum/skins/default/templates/users/tabs.html -END -reputation.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/1247/osqa/trunk/forum/skins/default/templates/users/reputation.html -END -questions.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/users/questions.html -END -info.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1167/osqa/trunk/forum/skins/default/templates/users/info.html -END -activity.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/templates/users/activity.html -END -stats.html -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1237/osqa/trunk/forum/skins/default/templates/users/stats.html -END -votes.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/254/osqa/trunk/forum/skins/default/templates/users/votes.html -END -signature.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/603/osqa/trunk/forum/skins/default/templates/users/signature.html -END -preferences.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/1099/osqa/trunk/forum/skins/default/templates/users/preferences.html -END -karma_bonus.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/487/osqa/trunk/forum/skins/default/templates/users/karma_bonus.html -END -users.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/497/osqa/trunk/forum/skins/default/templates/users/users.html -END -subscriptions_management.html -K 25 -svn:wc:ra_dav:version-url -V 98 -/svnroot/!svn/ver/544/osqa/trunk/forum/skins/default/templates/users/subscriptions_management.html -END -menu.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/487/osqa/trunk/forum/skins/default/templates/users/menu.html -END -online_users.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/565/osqa/trunk/forum/skins/default/templates/users/online_users.html -END diff --git a/forum/skins/default/templates/users/.svn/dir-prop-base b/forum/skins/default/templates/users/.svn/dir-prop-base deleted file mode 100644 index a3977795849e222c6ccbba18643aa2d30db43058..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/dir-prop-base +++ /dev/null @@ -1,6 +0,0 @@ -K 13 -svn:mergeinfo -V 146 -/osqa/branches/cacheimp/forum/skins/default/templates/users:874-939 -/osqa/branches/notification-config/forum/skins/default/templates/users:693-845 -END diff --git a/forum/skins/default/templates/users/.svn/entries b/forum/skins/default/templates/users/.svn/entries deleted file mode 100644 index c3d805562ab7bc804233defe5d430b0bb344708c..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/entries +++ /dev/null @@ -1,674 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/users -http://svn.osqa.net/svnroot - - - -2012-04-09T20:19:56.824352Z -1247 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -suspend_user.html -file - - - - -2012-06-22T20:34:42.544502Z -b21e899a797a33cd505f2dc42a1ea8ac -2012-02-15T07:32:43.865108Z -1230 -jordan - - - - - - - - - - - - - - - - - - - - - -1533 - -recent.html -file - - - - -2012-06-22T20:34:42.544502Z -7979a76f852a177f6c0277e3877449d3 -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -286 - -edit.html -file - - - - -2012-06-22T20:34:42.544502Z -17fc8914ff3ed0a61560b51e40524726 -2011-12-15T19:46:30.210804Z -1212 -jordan - - - - - - - - - - - - - - - - - - - - - -4642 - -subscriptions_settings.html -file - - - - -2012-06-22T20:34:42.544502Z -6e9aa829b9be6a16c8c8d61a78f87b33 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -3525 - -tabs.html -file - - - - -2012-06-22T20:34:42.544502Z -7626ce13a69abc940e45a03e4ffa8be7 -2010-06-22T13:13:26.249316Z -440 -hernani - - - - - - - - - - - - - - - - - - - - - -469 - -reputation.html -file - - - - -2012-06-22T20:34:42.552498Z -0aa9fe9d3c004ffe5c4f3f7f80bbb578 -2012-04-09T20:19:56.824352Z -1247 -jordan - - - - - - - - - - - - - - - - - - - - - -2046 - -questions.html -file - - - - -2012-06-22T20:34:42.552498Z -d7ce6fe70094ae5add292924563b034e -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -385 - -info.html -file - - - - -2012-06-22T20:34:42.552498Z -0bfa6e2cae22a604353bc8c8e69b33f2 -2011-08-25T11:44:19.803493Z -1167 -jordan - - - - - - - - - - - - - - - - - - - - - -4974 - -activity.html -file - - - - -2012-06-22T20:34:42.552498Z -bcea13d398304d1b22d478ce75f65f3e -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -289 - -stats.html -file - - - - -2012-06-22T20:34:42.556496Z -9ee6dc62798ae42720ed7969ab05719d -2012-03-25T00:18:56.135986Z -1237 -jordan - - - - - - - - - - - - - - - - - - - - - -6952 - -votes.html -file - - - - -2012-06-22T20:34:42.556496Z -889ca1045cd17cabdde1883d415fe191 -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - - - - - - - - -1196 - -signature.html -file - - - - -2012-06-22T20:34:42.556496Z -a39120e11b29e50f262fbb8a5db5c9c6 -2010-10-08T01:13:51.618729Z -603 -hernani - - - - - - - - - - - - - - - - - - - - - -1386 - -preferences.html -file - - - - -2012-06-22T20:34:42.556496Z -994011658e4ca4ae31f73d1daf21a63e -2011-07-03T01:15:43.874064Z -1099 -jordan - - - - - - - - - - - - - - - - - - - - - -910 - -karma_bonus.html -file - - - - -2012-06-22T20:34:42.556496Z -41c5ba2dfd0eee4aa7d3f3609c1adeb2 -2010-07-05T10:29:48.409438Z -487 -hernani - - - - - - - - - - - - - - - - - - - - - -307 - -users.html -file - - - - -2012-06-22T20:34:42.556496Z -cc31a814b3a6e5ae4ca28b8be6695887 -2010-07-07T12:47:35.738503Z -497 -hernani - - - - - - - - - - - - - - - - - - - - - -1738 - -subscriptions_management.html -file - - - - -2012-06-22T20:34:42.556496Z -1abc85aeef1999b5086c564b110a99da -2010-07-16T20:37:51.870673Z -544 -qw3rty - - - - - - - - - - - - - - - - - - - - - -904 - -menu.html -file - - - - -2012-06-22T20:34:42.568490Z -740297be1eaff953cbf71500de40ad13 -2010-07-05T10:29:48.409438Z -487 -hernani - - - - - - - - - - - - - - - - - - - - - -330 - -online_users.html -file - - - - -2012-06-22T20:34:42.568490Z -37f4658d73f41815d81a634dfd94bb0d -2010-08-20T21:14:54.431991Z -565 -court - - - - - - - - - - - - - - - - - - - - - -1716 - -subscriptions.html -file - - - - -2012-06-22T20:34:42.568490Z -d4b2f187cf673d65bb7f1a1461fd010a -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - - - - - - - - -1680 - diff --git a/forum/skins/default/templates/users/.svn/text-base/activity.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/activity.html.svn-base deleted file mode 100644 index 0b6a9142d859da60441008c5b48fe89f72afe876..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/activity.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load extra_tags %} -{% load humanize %} -{% load extra_tags %} - -<div class="action_container"> - <div class="action_body"> - {{ describe }} - </div> - <div class="action_date" style="text-align: right;"> - {% diff_date action.action_date %} - </div> -</div> \ No newline at end of file diff --git a/forum/skins/default/templates/users/.svn/text-base/edit.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/edit.html.svn-base deleted file mode 100644 index ce54c773e6633b551b7f7414a34ff0e97e4a4843..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/edit.html.svn-base +++ /dev/null @@ -1,108 +0,0 @@ -{% extends "base_content.html" %} -<!-- user_edit.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Edit user profile" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript">google.load("jquery", "1.4.2");google.load("jqueryui", "1.8.1");</script> - - <link rel="stylesheet" href="http://jquery-ui.googlecode.com/svn/tags/latest/themes/base/jquery-ui.css" type="text/css" media="all" /> - <link rel="stylesheet" href="http://static.jquery.com/ui/css/demo-docs-theme/ui.theme.css" type="text/css" media="all" /> - - <script type="text/javascript"> - $().ready(function(){ - $("#id_birthday").datepicker({ - changeMonth: true, - changeYear: true, - dateFormat: 'yy-mm-dd', - minDate: null, - maxDate: '0M 0D', - yearRange: '1920:2010' - }); - - $("#nav_profile").attr('className',"on"); - $("#cancel").bind('click', function(){history.go(-1);}) - }); - </script> - {% block userjs %} - {% endblock %} -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {{ user.username }} - {% trans "edit profile" %} -</div> -<div id="main-body" style="width:100%;padding-top:10px"> - <form name="" action="{% url edit_user user.id user.username|slugify %}" method="post"> - {% csrf_token %} - <div id="left" style="float:left;width:180px"> - {% if user.email %} - {% gravatar user 128 %} - {% else %} - <img src="{% media "/media/images/nophoto.png" %}"> - {% endif %} - <div style="padding:20px 0 0 20px;font-weight:bold;font-size:150%"> - <a href="http://www.gravatar.com/" target="_blank" - title="gravatar {% trans "image associated with your email address" %}">{% trans "gravatar" %}</a> - </div> - </div> - - <div id="askform" style="float:right;width:750px;text-align:left;"> - <h2>{% trans "Registered user" %}</h2> - <table class="user-details"> - <tr> - <th width="100px"></th> - <th></th> - </tr> - <tr style="height:35px"> - <td>{% trans "Screen Name" %}:</td> - <td> - {% if form.username %} - {{ form.username }} <span class="form-error"></span> {{ form.username.errors }} - {% else %} - {{ user.username }} - {% endif %} - </td> - </tr> - - <tr style="height:35px"> - <td>{{ form.email.label_tag }}:</td> - <td>{{ form.email }} <span class="form-error"></span> {{ form.email.errors }} </td> - </tr> - <tr style="height:35px"> - <td></td> - <td class="title-desc">{{ form.email.help_text }}</td> - </tr> - <tr style="height:35px"> - <td>{{ form.realname.label_tag }}:</td> - <td>{{ form.realname }} <span class="form-error"></span> {{ form.realname.errors }} </td> - </tr> - <tr style="height:35px"> - <td>{{ form.website.label_tag }}:</td> - <td>{{ form.website }} <span class="form-error"></span> {{ form.website.errors }} </td> - </tr> - <tr style="height:35px"> - <td>{{ form.city.label_tag }}:</td> - <td>{{ form.city }} <span class="form-error"></span> {{ form.city.errors }} </td> - </tr> - <tr style="height:35px"> - <td>{{ form.birthday.label_tag }}:</td> - <td>{{ form.birthday }} <span class="form-error"></span> {{ form.birthday.errors }} </td> - </tr> - <tr> - <td style="vertical-align:top">{{ form.about.label_tag }}:</td> - <td>{{ form.about }} <span class="form-error"></span> {{ form.about.errors }} </td> - </tr> - - </table> - <div style="margin:30px 0 60px 0"> - <input type="submit" value="{% trans "Update" %}" class="submit" > - <input id="cancel" type="button" value="{% trans "Cancel" %}" class="submit" > - - </div> - </div> - </form> - -</div> -{% endblock %} -<!-- end user_edit.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/info.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/info.html.svn-base deleted file mode 100644 index 656c0cee1c43c2e707918a287ee1c22905c1f864..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/info.html.svn-base +++ /dev/null @@ -1,123 +0,0 @@ -<!-- user_info.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load smart_if %} -{% load i18n %} -{% load markup %} -{% load user_tags %} - -<div id="subheader" class="headUser{% if view_user.is_suspended %} suspended-user{% endif %}"> - {{view_user.decorated_name}} -</div> -<table class="user-info-table"> - <tr> - <td width="180" style="vertical-align:middle;text-align:center;"> - <table width="100%"> - <tr> - <td> - {% gravatar view_user 128 %} - </td> - </tr> - <tr> - <td align="center"> - {% if not view_user.is_suspended %} - <div class="scoreNumber" id="user-reputation">{{view_user.reputation|intcomma}}</div> - <p><b style="color:#777;">{% trans "reputation" %}</b></p> - {% else %} - <div class="scoreNumber">{% trans "Suspended" %}</div> - <p>{{ view_user.suspension.extra.publicmsg }}</p> - {% endif %} - </td> - </tr> - </table> - </td> - <td width="360" style="vertical-align: top;"> - {% if can_view_private %}{% user_menu request.user view_user %}{% endif %} - <table class="user-details"> - <tr> - <th colspan="2" align="left"> - <h3> - {% if view_user.is_superuser %} - {% trans "Administrator" %} - {% else %} - {% if view_user.is_staff %} - {% trans "Moderator" %} - {% else %} - {% trans "Registered user" %} - {% endif %} - {% endif %} - </h3> - </th> - </tr> - {% if view_user.real_name %} - <tr> - <td>{% trans "real name" %}</td> - <td><b>{{view_user.real_name}}</b></td> - </tr> - {% endif %} - <tr> - <td>{% trans "member for" %}</td> - <td><strong>{% diff_date view_user.date_joined %}</strong></td> - </tr> - {% if view_user.last_seen %} - <tr> - <td>{% trans "last seen" %}</td> - <td><strong title="{{ view_user.last_activity }}">{% diff_date view_user.last_activity %}</strong></td> - </tr> - {% endif %} - {% if view_user.website %} - <tr> - <td>{% trans "user's website" %}</td> - <td><a rel="nofollow" target="_blank" href="{{view_user.website}}">{{view_user.website}}</a></td> - </tr> - {% endif %} - {% if view_user.location %} - <tr> - <td>{% trans "location" %}</td> - <td>{{view_user.location}}</td> - </tr> - {% endif %} - {% if view_user.date_of_birth%} - <tr> - <!--todo - redo this with blocktrans --> - {% if view_user.date_of_birth.year != 1900%} - <td>{% trans "age" %}</td> - <td>{% get_age view_user.date_of_birth %} {% trans "age unit" %}</td> - {% endif %} - </tr> - {% endif %} - {% if can_view_private %} - <tr> - <td>{% trans "email" %}</td> - <td> - <a href="mailto:{{ view_user.email }}">{{ view_user.email }}</a> - {% if not view_user.email_isvalid %} - ({% trans "not validated" %}) - {% ifequal request.user view_user %} - </td></tr><tr><td></td><td><a href="{% url send_validation_email %}">{% trans "Send me a validation link." %}</a> - {% endifequal %} - {% endif %} - </td> - </tr> - {% endif %} - <!-- - {% if votes_today_left %} - <tr> - <td>{% trans "todays unused votes" %}</td> - <td><strong class="darkred">{{ votes_today_left }}</strong> {% trans "votes left" %}</td> - </tr> - {% endif %} - --> - </table> - </td> - <td width="380"> - <div class="user-about"> - {% if view_user.about %} - {{view_user.about|markdown}} - {% endif %} - </div> - </td> - </tr> -</table> -<!-- end user_info.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/karma_bonus.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/karma_bonus.html.svn-base deleted file mode 100644 index b39c276f33dccca59341bd2fe6cf9f39b6c90f8f..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/karma_bonus.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load i18n %} - -<table> - <tr> - <th>{% trans "Points" %}:</th> - <td><input type="text" id="points-to-award" name="points" value="1" /></td> - </tr> - <tr> - <th>{% trans "Message" %}:</th> - <td><textarea id="award-message" name="message"></textarea></td> - </tr> -</table> \ No newline at end of file diff --git a/forum/skins/default/templates/users/.svn/text-base/menu.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/menu.html.svn-base deleted file mode 100644 index 24d213d06cb72e9dfaa44759107c7830bbf5187e..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/menu.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n smart_if ui_registry %} - -<div id="user-menu-container" class="context-menu"> - <span id="user-menu" class="context-menu-trigger">{% trans "User tools" %} ▼</span> - <ul id="user-menu-dropdown" class="context-menu-dropdown"> - {% loadregistry user_menu %}{% endloadregistry %} - </ul> -</div> diff --git a/forum/skins/default/templates/users/.svn/text-base/online_users.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/online_users.html.svn-base deleted file mode 100644 index 903e89517f646d14d41e3c45d58d7af81feefc36..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/online_users.html.svn-base +++ /dev/null @@ -1,54 +0,0 @@ -{% extends "base_content.html" %} -<!-- users.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Users Online" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - //todo move javascript out - $().ready(function(){ - $("#type-user").attr('checked',true); - var orderby = "{{ tab_id }}"; - $("#sort_" + orderby).attr('className',"on"); - - Hilite.exact = false; - Hilite.elementid = "main-body"; - Hilite.debug_referrer = location.href; - }); - </script> -{% endblock %} -{% block content %} -<div class="tabBar"> - <div class="headUsers">{% trans "Users Online" %}</div> - {{ users.paginator.sort_tabs }} -</div> -<div id="main-body" style="width:100%"> - <p> - {% if suser %} - {% blocktrans %}users matching query {{suser}}:{% endblocktrans %} - {% endif %} - - {% if not users.paginator.count %} - <span>{% trans "Nothing found." %}</span> - {% endif %} - </p> - <div class="userList"> - {% for user in users.paginator.page %} - <div class="user"> - <ul> - <li class="thumb"><a href="{{ user.get_profile_url }} ">{% gravatar user 32 %}</a></li> - <li><a {% if user.is_suspended %}class="suspended-user" {% endif %}href="{{ user.get_profile_url }}">{{ user.decorated_name }}</a></li> - <li>{% get_score_badge user %}</li> - </ul> - </div> - {% endfor %} - </div> -</div> -{% endblock %} -{% block tail %} -<div class="pager"> - {{ users.paginator.page_numbers }} -</div> -{% endblock %} -<!-- end users.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/preferences.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/preferences.html.svn-base deleted file mode 100644 index 68a547fc68ac2995fdb6d93e69cf1b6bbfa1ab22..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/preferences.html.svn-base +++ /dev/null @@ -1,30 +0,0 @@ -{% extends "user.html" %} -{% load i18n %} -{% load extra_tags %} - -{% block usercontent %} - <h2>{% trans "Preferences" %}</h2> - <div class='inline-block'> - <form method="POST"> - {% csrf_token %} - <p class="message"> - {% trans "Here you can set some personal preferences." %} - </p> - {{ form.errors }} - <table class="form-as-table"> - <tr> - <td colspan="2"> - <strong>{% trans "Navigation:" %}</strong> - </td> - </tr> - <tr> - <td>{{ form.sticky_sorts }}</td> - <td>{% trans "Always remember the sort order I apply to the lists I view" %}</td> - </tr> - </table> - <div class="submit-row"> - <input type="submit" class="submit" name="save" value="{% trans "Save" %}"/> - </div> - </form> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/default/templates/users/.svn/text-base/questions.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/questions.html.svn-base deleted file mode 100644 index 92de7cfac769b2d3a5325a6d4bbfbd1fd2aa651f..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/questions.html.svn-base +++ /dev/null @@ -1,14 +0,0 @@ -{% extends "user.html" %} - -{% load extra_tags question_list_tags i18n %} -{% block usercontent %} -<div class="user-stats-table"> -{% if favorites %} - {% for favorite in favorites %} - {% question_list_item favorite.node favorite_count=yes signature_type=badges %} - {% endfor %} -{% else %} - {% trans "No favorite questions to display." %} -{% endif %} -</div> -{% endblock %} diff --git a/forum/skins/default/templates/users/.svn/text-base/recent.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/recent.html.svn-base deleted file mode 100644 index 5098df6a6ac1a14c7c319a9e91a781dc05d1ebaa..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/recent.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% extends "user.html" %} - -{% load extra_tags %} -{% load user_tags %} -{% block usercontent %} - <div style="padding-top:5px;font-size:13px;"> - {% for act in activities %} - {% activity_item act request.user %} - {% endfor %} - </div> -{% endblock %} - diff --git a/forum/skins/default/templates/users/.svn/text-base/reputation.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/reputation.html.svn-base deleted file mode 100644 index fe06b6eae0fff222385d4401670a72485231a887..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/reputation.html.svn-base +++ /dev/null @@ -1,57 +0,0 @@ -{% extends "user.html" %} -<!-- user_reputation.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load user_tags %} -{% block userjs %} - <script type='text/javascript' src='{% media "/media/js/excanvas.min.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/jquery.flot.min.js" %}'></script> - - <script type="text/javascript"> - $().ready(function(){ - var d = {{ graph_data }}; - var placeholder = $("#diagram"); - - var plot = $.plot(placeholder, [d], { - xaxis: { mode: "time" }, - points: { show: true }, - lines: { show: true } - }); - }); - - </script> - - <style type="text/css"> - div.positiveReputation { - float: left; - min-width: 20px; - color: green; - padding-right: 5px; - } - div.negativeReputation { - float: left; - min-width: 20px; - color: red; - } - </style> -{% endblock %} -{% block usercontent %} - <div style="padding:5px;font-size:13px;"> - <div id="diagram" style="width:550px;height:250px;float:left"> - - </div> - <div style="float:right; width:385px; height:300px; overflow-y:auto;word-wrap:break-word;" > - {% for rep in reputation %} - <p style="clear:both"> - <div style="float:left;text-align:right;font-family:arial;font-weight:bold;background:#eee;padding:2px 10px 2px 10px;margin-right:5px"> - <div class="positiveReputation">{{ rep.positive }}</div> - <div class="negativeReputation">{{ rep.negative }}</div> - - </div> - {% activity_item rep.action request.user %}<br/> - </p> - {% endfor %} - </div> - </div> -{% endblock %}<!-- end user_reputation.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/signature.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/signature.html.svn-base deleted file mode 100644 index e8aebf3519d3223f761217a86af621f374c91eca..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/signature.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% load i18n extra_filters %}{% spaceless %} - -{% if not user.is_suspended %} - {% ifequal format "full" %} - - {% else %} - <a href="{{ user.get_absolute_url }}">{{ user.decorated_name }}</a> - <span class="score" title="{{ user.reputation }} {% trans "reputation" %}">{{ user.reputation|decorated_int:"" }}</span> - {% ifequal format "badges" %} - {% if user.gold %} - <span title="{{ user.gold }} {% trans "badges" %}"> - <span class="badge1">●</span> - <span class="badgecount">{{ user.gold }}</span> - </span> - {% endif %} - {% if user.silver %} - <span title="{{ user.silver }} {% trans "badges" %}"> - <span class="silver">●</span> - <span class="badgecount">{{ user.silver }}</span> - </span> - {% endif %} - {% if user.bronze %} - <span title="{{ user.bronze }} {% trans "badges" %}"> - <span class="bronze">●</span> - <span class="badgecount">{{ user.bronze }}</span> - </span> - {% endif %} - {% endifequal %} - {% endifequal %} -{% else %} - <a class="suspended-user" href="{{ user.get_absolute_url }}">{{ user.decorated_name }}</a>{% trans "(suspended)" %} -{% endif %} -{% endspaceless %} diff --git a/forum/skins/default/templates/users/.svn/text-base/stats.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/stats.html.svn-base deleted file mode 100644 index 358771dd59b912bc373ec93951daf41f07413dc8..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/stats.html.svn-base +++ /dev/null @@ -1,157 +0,0 @@ -{% extends "user.html" %} -<!-- user_stats.html --> -{% load i18n %} -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load question_list_tags %} - {% block usercontent %} - <div id="questionsBlock" class="userSection"> - <a name="questions"></a> - {% spaceless %} - <h2> - {% blocktrans count questions.paginator.count as counter %} - <span class="count">{{counter}}</span> Question - {% plural %} - <span class="count">{{counter}}</span> Questions - {% endblocktrans %} - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" - href="{{ view_user.get_asked_url }}?type=rss" title="{% trans "subscribe to question RSS feed" %}"></a> - </h2> - {% endspaceless %} - <div id="questionTabs">{{ questions.paginator.sort_tabs }}</div> - <div id="listA" class="user-stats-table"> - {% for question in questions.paginator.page %} - {% question_list_item question favorite_count=yes signature_type=badges %} - {% endfor %} - </div> - <br clear="all"/> - <div class="pager">{{ questions.paginator.page_numbers }}</div> - <br clear="all"/> - </div> - - <div id="answersBlock" class="userSection"> - <a name="answers"></a> - {% spaceless %} - <h2> - {% blocktrans count answers.paginator.count as counter %} - <span class="count">{{counter}}</span> Answer - {% plural %} - <span class="count">{{counter}}</span> Answers - {% endblocktrans %} - </h2> - {% endspaceless %} - <div id="answerTabs">{{ answers.paginator.sort_tabs }}</div> - <div class="user-stats-table"> - {% for answer in answers.paginator.page %} - <div class="answer-summary"> - <a title="{{answer.question.title}}" - href="{{ answer.get_absolute_url }}"> - <span class="{% if answer.nis.accepted %}answered-accepted {% endif %} answer-votes" - title="{% blocktrans with answer.score as vote_count %}the answer has been voted for {{ vote_count }} times{% endblocktrans %} {% if answer.nis.accepted %}{% trans "this answer has been selected as correct" %}{%endif%}"> - {{ answer.score }} - </span> - </a> - <div class="answer-link"> - {% spaceless %} - <a href="{{ answer.get_absolute_url }}">{{answer.headline}}</a> - {% endspaceless %} - </div> - </div> - {% endfor %} - </div> - <br clear="all"/> - <div class="pager">{{ answers.paginator.page_numbers }}</div> - <br clear="all"/> - </div> - - - <a name="votes"></a> - {% spaceless %} - <h2> - {% blocktrans count total_votes as cnt %} - <span class="count">{{cnt}}</span> Vote - {% plural %} - <span class="count">{{cnt}}</span> Votes - {% endblocktrans %} - </h2> - {% endspaceless %} - <div class="user-stats-table"> - <table> - <tr> - <td width="60"> - <img style="cursor: default;" src="{% media "/media/images/vote-arrow-up-on.png" %}" alt="{% trans "thumb up" %}" /> - <span title="{% trans "user has voted up this many times" %}" class="vote-count">{{up_votes}}</span> - - </td> - <td width="60"> - <img style="cursor: default;" src="{% media "/media/images/vote-arrow-down-on.png" %}" alt="{% trans "thumb down" %}" /> - <span title="{% trans "user voted down this many times" %}" class="vote-count">{{down_votes}}</span> - - </td> - </tr> - </table> - </div> - <a name="tags"></a> - {% spaceless %} - <h2> - {% blocktrans count user_tags|length as counter %} - <span class="count">{{counter}}</span> Tag - {% plural %} - <span class="count">{{counter}}</span> Tags - {% endblocktrans %} - </h2> - {% endspaceless %} - <div class="user-stats-table"> - <table class="tags"> - <tr style="vertical-align: top;"> - <td valign="top" style="padding-right: 20px;"> - {% for tag in user_tags%} - <a rel="tag" - class="tag-link-{{ tag.name }}" - title="{% blocktrans with tag.name as tag_name %}see other questions with {{view_user}}'s contributions tagged '{{ tag_name }}' {% endblocktrans %}" - href="{% url tag_questions tag|urlencode %}?user={{view_user.username}}">{{tag.name}}</a> - <span class="tag-number">× {{ tag.user_tag_usage_count|intcomma }}</span><br/> - {% if forloop.counter|divisibleby:"10" %} - </td> - <td width="180" valign="top"> - {% endif %} - {% endfor %} - </td> - </tr> - </table> - </div> - <a name="badges"></a> - {% spaceless %} - <h2> - {% blocktrans count total_awards as counter %} - <span class="count">{{counter}}</span> Badge - {% plural %} - <span class="count">{{counter}}</span> Badges - {% endblocktrans %} - </h2> - {% endspaceless %} - <div class="user-stats-table"> - <table> - <tr style="vertical-align: top;"> - <td style="line-height:35px; padding-right: 20px;"> - {% for award, count in awards %} - {% spaceless %} - <a href="{% url badges %}{{award.id}}/{{award.name|slugify}}" title="{{ award.description }}" class="medal"> - <span class="badge{{ award.type }}">●</span> {{ award.name }} - </a> - {% ifnotequal count 1 %} - <span class="tag-number"> × {{ count|intcomma }}</span> - {% endifnotequal %}<br/> - {% if forloop.counter|divisibleby:"6" %} - </td> - <td width="180" style="line-height:35px"> - {% endif %} - {% endspaceless %} - {% endfor %} - </td> - </tr> - </table> - </div> -{% endblock %} -<!-- end user_stats.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/subscriptions.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/subscriptions.html.svn-base deleted file mode 100644 index 5d71919319e8c59738d347ccceb6d0e0546f94d2..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/subscriptions.html.svn-base +++ /dev/null @@ -1,53 +0,0 @@ -{% extends "user.html" %} -<!-- user_subscriptions.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} - -{% block userjs %} - <script type="text/javascript"> - function enableSettings() { - $("div#subscriptions_settings").show(); - $("div#subscriptions_management").hide(); - - $("a#subscriptions_settings_button").addClass('on'); - $("a#subscriptions_management_button").removeClass("on"); - - //location.reload(true); - } - - function enableManagement() { - $("div#subscriptions_settings").hide(); - $("div#subscriptions_management").show(); - - $("a#subscriptions_settings_button").removeClass('on'); - $("a#subscriptions_management_button").addClass('on'); - - //location.reload(true); - } - </script> -{% endblock %} - -{% block usercontent %} - <br/> - - <div id="navBar"><div class="tabsA"> - <a href='{{ view_user.get_user_subscriptions_url }}?tab=settings' id="subscriptions_settings_button" {% if not manage_open %}class="on"{% endif %}>Settings</a> - <a href='{{ view_user.get_user_subscriptions_url }}?tab=manage' id="subscriptions_management_button" {% if manage_open %}class="on"{% endif %}>Manage</a> - </div></div> - - <br/> - - {% if not manage_open %} - <div id="subscriptions_settings" > - {% include "users/subscriptions_settings.html" %} - </div> - {% endif %} - - {% if manage_open %} - <div id="subscriptions_management" > - {% include "users/subscriptions_management.html" %} - </div> - {% endif %} -{% endblock %} -<!-- end user_subscriptions.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/subscriptions_management.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/subscriptions_management.html.svn-base deleted file mode 100644 index a0d921e2f77cc8358bcf7b7d05b6d1eb6d9e3eca..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/subscriptions_management.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% load i18n %} -{% load question_list_tags %} - -<div id="subscription_list" align="left"> - <h2> - {% trans "Manage your current subscriptions" %} - <span style="font-size:11px"> - {% if auto %} - <a href='{% url user_subscriptions id=view_user.id slug=view_user.username|slugify %}?auto=False&tab=manage'>{% trans "don't show auto-subscribe" %}</a> - {% else %} - <a href='{% url user_subscriptions id=view_user.id slug=view_user.username|slugify %}?auto=True&tab=manage'>{% trans "show auto-subscribe" %}</a> - {% endif %} - </span> - </h2> - - {% for subscription in subscriptions.paginator.page %} - {% subscription_list_item subscription subscription.question %} - {% endfor %} - - <div class="pager">{{ subscriptions.paginator.page_numbers }}</div> -</div> - -<br /> -<br /> - -<!-- end user_subscriptions.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/subscriptions_settings.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/subscriptions_settings.html.svn-base deleted file mode 100644 index 7675db3fde47b3a6e061f3aee472abeaf11443b9..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/subscriptions_settings.html.svn-base +++ /dev/null @@ -1,108 +0,0 @@ -{% load i18n %} -{% load extra_tags %} -{% load humanize %} - -<h2>{% trans "Notifications and subscription settings" %}</h2> -<p class="message"> - {% blocktrans %} - Here you can decide which types of notifications you wish to receive, and their frequency.<br /> - {% endblocktrans %} -</p> -<div class='inline-block'> -<form method="POST"> - {% csrf_token %} - {{ form.errors }} - <table class="form-as-table"> - <tr> - <td colspan="2"> - <strong>{% trans "Notify me when:" %}</strong> - </td> - </tr> - <tr> - <td>{% trans "A new member joins" %}</td> - <td>{{ form.member_joins }}</td> - </tr> - <tr> - <td>{% trans "A new question is posted" %}</td> - <td>{{ form.new_question }}</td> - </tr> - <tr> - <td>{% trans "A new question matching my interesting tags is posted" %}</td> - <td>{{ form.new_question_watched_tags }}</td> - </tr> - <tr> - <td>{% trans "There's an update on one of my subscriptions" %}</td> - <td >{{ form.subscribed_questions }}</td> - </tr> - </table> - <p> </p> - <table class="form-as-table check-table"> - <tr> - <td colspan="3"> - <strong>{% trans "Auto subscribe me to:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.questions_viewed }}{% trans "Questions I view" %} - </td> - <td> - {{ form.all_questions_watched_tags }}{% trans "All questions matching my interesting tags" %} - </td> - <td> - {{ form.all_questions }}{% trans "All questions" %} - </td> - </tr> - </table> - <p> </p> - <table class="form-as-table check-table"> - <tr> - <td colspan="2"> - <strong>{% trans "On my subscriptions, notify me when:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.notify_answers }}{% trans "An answer is posted" %} - </td> - <td> - {{ form.notify_comments_own_post }}{% trans "A comment on one of my posts is posted" %} - </td> - </tr> - <tr> - <td> - {{ form.notify_comments }}{% trans "A comment is posted" %} - </td> - <td> - {{ form.notify_accepted }}{% trans "An answer is accepted" %} - </td> - </tr> - </table> - <p> </p> - <table class="form-as-table check-table"> - <tr> - <td> - <strong>{% trans "Daily Digest:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.send_digest }}{% trans "Send me the daily digest with information about the site activity" %} - </td> - </tr> - <tr> - <td> - <strong>{% trans "Notify When I'm Discussed:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.notify_reply_to_comments }}{% trans "Notify me when someone replies to one of my comments on any post using the <pre>@username</pre> notation" %} - </td> - </tr> - </table> - <div class="submit-row"> - <input type="submit" class="submit" name="save" value="{% trans "Update" %}"/> - </div> -</form> -</div> diff --git a/forum/skins/default/templates/users/.svn/text-base/suspend_user.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/suspend_user.html.svn-base deleted file mode 100644 index 4dd17f22c381fe2b6594fb4d89c0abdc74d7820d..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/suspend_user.html.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -{% load i18n %} - -<table> - <caption><h2>{% trans "Suspend user" %}</h2></caption> - <tr> - <td> - <select name="bantype" id="bantype"> - <option value="indefinitely">{% trans "Indefinitely" %}</option> - <option value="forxdays">{% trans "For X days" %}</option> - </select> - </td> - </tr> - <tr id="forxdays" style="display: none"> - <td> - {% trans "Suspend for" %}<input type="text" size="3" style="width: 30px; height: 1.2em; margin: 0 0.5em 0 0.5em; font-size: 1em;" name="forxdays" value="3" />{% trans "days" %} - </td> - </tr> - <tr> - <td> - <p><b>{% trans "Public message" %}:</b></p> - </td> - </tr> - <tr> - <td> - <textarea rows="3" name="publicmsg" cols="35"></textarea><br /> - <small>{% trans "This message will be visible through the user activity log." %}</small> - </td> - </tr> - <tr> - <td> - <p><b>{% trans "Private message" %}:</b></p> - </td> - </tr> - <tr> - <td> - <textarea rows="3" name="privatemsg" cols="35"></textarea><br /> - <small>{% trans "If set, only the suspended user will see this message." %}</small> - </td> - </tr> -</table> -<script type="text/javascript"> - $('#bantype').change(function() { - if ($(this).val() == 'forxdays') { - $('#forxdays').slideDown('fast'); - } else { - $('#forxdays').slideUp('fast'); - } - }); -</script> \ No newline at end of file diff --git a/forum/skins/default/templates/users/.svn/text-base/tabs.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/tabs.html.svn-base deleted file mode 100644 index d3d8d90a560509414986edea17cf99cca5c037e8..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/tabs.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load extra_filters ui_registry i18n %} -{% with view_user.username|slugify as user_slug %} -<div class="tabBar"> - <div class="tabsA"> - {% loopregistry profile_tabs %}{% spaceless %} - <a title="{{ tab_description }}" id="{{ tab_name }}" {% ifequal active_tab tab_name %}class="on"{% endifequal %} href="{{ tab_url }}"> - {{ tab_title }} - </a> - {% endspaceless %}{% endloopregistry %} - </div> -</div> -{% endwith %} diff --git a/forum/skins/default/templates/users/.svn/text-base/users.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/users.html.svn-base deleted file mode 100644 index d7e01dbc8a5c22efeffdbfbaf29227abbca73246..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/users.html.svn-base +++ /dev/null @@ -1,54 +0,0 @@ -{% extends "base_content.html" %} -<!-- users.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Users" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - //todo move javascript out - $().ready(function(){ - $("#type-user").attr('checked',true); - var orderby = "{{ tab_id }}"; - $("#sort_" + orderby).attr('className',"on"); - - Hilite.exact = false; - Hilite.elementid = "main-body"; - Hilite.debug_referrer = location.href; - }); - </script> -{% endblock %} -{% block content %} -<div class="tabBar"> - <div class="headUsers">{% trans "Users" %}</div> - {{ users.paginator.sort_tabs }} -</div> -<div id="main-body" style="width:100%"> - <p> - {% if suser %} - {% blocktrans %}users matching query {{suser}}:{% endblocktrans %} - {% endif %} - - {% if not users.paginator.count %} - <span>{% trans "Nothing found." %}</span> - {% endif %} - </p> - <div class="userList"> - {% for user in users.paginator.page %} - <div class="user"> - <ul> - <li class="thumb"><a href="{{ user.get_profile_url }} ">{% gravatar user 32 %}</a></li> - <li><a {% if user.is_suspended %}class="suspended-user" {% endif %}href="{{ user.get_profile_url }}">{{ user.decorated_name }}</a></li> - <li>{% get_score_badge user %}</li> - </ul> - </div> - {% endfor %} - </div> -</div> -{% endblock %} -{% block tail %} -<div class="pager"> - {{ users.paginator.page_numbers }} -</div> -{% endblock %} -<!-- end users.html --> diff --git a/forum/skins/default/templates/users/.svn/text-base/votes.html.svn-base b/forum/skins/default/templates/users/.svn/text-base/votes.html.svn-base deleted file mode 100644 index 7d6b3483c1b34771cead7aca88df9a50231b91f3..0000000000000000000000000000000000000000 --- a/forum/skins/default/templates/users/.svn/text-base/votes.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% extends "user.html" %} -<!-- user_votes.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load i18n %} - -{% block usercontent %} - <div style="padding-top:5px;font-size:13px;"> - {% for vote in votes %} - <div style="clear:both;line-height:20px" > - <div style="width:150px;float:left">{% diff_date vote.voted_at 3 %}</div> - <div style="width:30px;float:left"> - {% ifequal vote.value 1 %} - <img src="{% media "/media/images/vote-arrow-up-on.png" %}" title="{% trans "upvote" %}"> - {% else %} - <img src="{% media "/media/images/vote-arrow-down-on.png" %}" title="{% trans "downvote" %}"> - {% endifequal %} - </div> - <div style="float:left;overflow:hidden;width:750px"> - <span class="{{ vote.node.node_type }}-title-link"><a href="{{ vote.node.get_absolute_url }}">{{ vote.node.headline }}</a></span> - <div style="height:5px"></div> - </div> - </div> - {% endfor %} - </div> -{% endblock %} -<!-- end user_votes.html --> diff --git a/forum/skins/default/tests/.svn/all-wcprops b/forum/skins/default/tests/.svn/all-wcprops deleted file mode 100644 index 104924eee8c413b4f7b6c577f07b52408eedc8e5..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests -END -tags_page.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/tags_page.py -END -users_page.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/users_page.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/__init__.py -END -registration_login.py -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/registration_login.py -END -faq_page.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/faq_page.py -END diff --git a/forum/skins/default/tests/.svn/entries b/forum/skins/default/tests/.svn/entries deleted file mode 100644 index 497a11dc8d109c312c95c733d9f92e38ddc7ae24..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/entries +++ /dev/null @@ -1,198 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/tests -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -tags_page.py -file - - - - -2012-06-22T20:34:42.244651Z -c5afd287aed12b4583041507a94cf6e0 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -997 - -users_page.py -file - - - - -2012-06-22T20:34:42.248649Z -5f17b4a694f07117e4ac788918ed294d -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1333 - -__init__.py -file - - - - -2012-06-22T20:34:42.248649Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -registration_login.py -file - - - - -2012-06-22T20:34:42.248649Z -eda0a5e01feae6a47eaa2d0bf249ebf0 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1648 - -faq_page.py -file - - - - -2012-06-22T20:34:42.248649Z -a37db61d54f700ac4275fd7592b62fb3 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -647 - diff --git a/forum/skins/default/tests/.svn/prop-base/__init__.py.svn-base b/forum/skins/default/tests/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/default/tests/.svn/prop-base/faq_page.py.svn-base b/forum/skins/default/tests/.svn/prop-base/faq_page.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/prop-base/faq_page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/default/tests/.svn/prop-base/registration_login.py.svn-base b/forum/skins/default/tests/.svn/prop-base/registration_login.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/prop-base/registration_login.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/default/tests/.svn/prop-base/tags_page.py.svn-base b/forum/skins/default/tests/.svn/prop-base/tags_page.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/prop-base/tags_page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/default/tests/.svn/prop-base/users_page.py.svn-base b/forum/skins/default/tests/.svn/prop-base/users_page.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/prop-base/users_page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/default/tests/.svn/text-base/__init__.py.svn-base b/forum/skins/default/tests/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum/skins/default/tests/.svn/text-base/faq_page.py.svn-base b/forum/skins/default/tests/.svn/text-base/faq_page.py.svn-base deleted file mode 100644 index 573ed4ed5a26911422eba4eabc0cff0868eecc02..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/text-base/faq_page.py.svn-base +++ /dev/null @@ -1,21 +0,0 @@ -from selenium import selenium -import unittest, time, re - -class faq_page(unittest.TestCase): - def setUp(self): - self.verificationErrors = [] - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_faq_page(self): - sel = self.selenium - sel.open("/faq/") - try: self.failUnless(sel.is_text_present("FAQ")) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/skins/default/tests/.svn/text-base/registration_login.py.svn-base b/forum/skins/default/tests/.svn/text-base/registration_login.py.svn-base deleted file mode 100644 index 181d6e13ed64b2532fc46d7805b954d84617c940..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/text-base/registration_login.py.svn-base +++ /dev/null @@ -1,43 +0,0 @@ -from selenium import selenium -import unittest, time, re -import random - -class registration_login(unittest.TestCase): - def setUp(self): - rand_number = random.randrange(1, 10000) - self.verificationErrors = [] - self.account_name = 'TestAccount%d' % rand_number - self.account_email = 'test_account_%d@example.com' % rand_number - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_registration_login(self): - sel = self.selenium - sel.open("/account/signin/") - sel.click("link=Create account") - sel.wait_for_page_to_load("30000") - sel.type("id_username", "%s" % self.account_name) - sel.type("id_email", "%s" % self.account_email) - sel.type("id_password1", "test") - sel.type("id_password2", "test") - sel.click("bnewaccount") - sel.wait_for_page_to_load("30000") - sel.click("link=logout") - sel.wait_for_page_to_load("30000") - sel.click("btLogout") - sel.wait_for_page_to_load("30000") - sel.click("link=login") - sel.wait_for_page_to_load("30000") - sel.type("id_username", "%s" % self.account_name) - sel.type("id_password", "test") - sel.click("blogin") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_element_present("link=%s" % self.account_name)) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/skins/default/tests/.svn/text-base/tags_page.py.svn-base b/forum/skins/default/tests/.svn/text-base/tags_page.py.svn-base deleted file mode 100644 index 38e355085c85c3ec25469cb6fec4eafdb53c20ca..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/text-base/tags_page.py.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -from selenium import selenium -import unittest, time, re - -class tags_page(unittest.TestCase): - def setUp(self): - self.verificationErrors = [] - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_tags_page(self): - sel = self.selenium - sel.open("/") - sel.click("nav_tags") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_text_present("Tag list")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("by name")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("by popularity")) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/skins/default/tests/.svn/text-base/users_page.py.svn-base b/forum/skins/default/tests/.svn/text-base/users_page.py.svn-base deleted file mode 100644 index b4ff3458c1d9fecb955214844c9014029b0bc39f..0000000000000000000000000000000000000000 --- a/forum/skins/default/tests/.svn/text-base/users_page.py.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -from selenium import selenium -import unittest, time, re - -class users_page(unittest.TestCase): - def setUp(self): - self.verificationErrors = [] - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_users_page(self): - sel = self.selenium - sel.open("/") - sel.click("nav_users") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_text_present("Users")) - except AssertionError, e: self.verificationErrors.append(str(e)) - sel.click("nav_users") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_text_present("karma")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("recent")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("oldest")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("by username")) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/skins/light/.svn/all-wcprops b/forum/skins/light/.svn/all-wcprops deleted file mode 100755 index 80827794757d5c3466767cd9d0e1a44dfb649e4b..0000000000000000000000000000000000000000 --- a/forum/skins/light/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1273/osqa/trunk/forum/skins/default -END diff --git a/forum/skins/light/.svn/entries b/forum/skins/light/.svn/entries deleted file mode 100755 index bb0c580b61a6060ab8452ba5ec34fa004d198d56..0000000000000000000000000000000000000000 --- a/forum/skins/light/.svn/entries +++ /dev/null @@ -1,37 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default -http://svn.osqa.net/svnroot - - - -2012-06-26T22:10:09.453191Z -1273 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -tests -dir - -templates -dir - -media -dir - diff --git a/forum/skins/light/media/.svn/all-wcprops b/forum/skins/light/media/.svn/all-wcprops deleted file mode 100755 index ba50e4b8d355fdbe65e023a6f53e7672e2802b77..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins/default/media -END diff --git a/forum/skins/light/media/.svn/dir-prop-base b/forum/skins/light/media/.svn/dir-prop-base deleted file mode 100755 index fcceacb9c0fd1003934f586ec71283a8a229d268..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/.svn/dir-prop-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 320 -/osqa/branches/cacheimp/forum/skins/default/media:874-939 -/osqa/branches/carpenter/forum/skins/default/media:691-725 -/osqa/branches/hernani/forum/skins/default/media:772-832 -/osqa/branches/jambazov/forum/skins/default/media:675-831 -/osqa/branches/notification-config/forum/skins/default/media:693-793,809,811-812,825-827 -END diff --git a/forum/skins/light/media/.svn/entries b/forum/skins/light/media/.svn/entries deleted file mode 100755 index 2ebae760ba0746eaa94ddc4f6650737291ec5282..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/.svn/entries +++ /dev/null @@ -1,40 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media -http://svn.osqa.net/svnroot - - - -2012-05-23T17:10:19.489673Z -1268 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -images -dir - -iepngfix -dir - -js -dir - -style -dir - diff --git a/forum/skins/light/media/iepngfix/.svn/all-wcprops b/forum/skins/light/media/iepngfix/.svn/all-wcprops deleted file mode 100755 index 1493090738a55131c69efcf6de04a4ce84016585..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/iepngfix/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix -END -iepngfix.htc -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix/iepngfix.htc -END -iepngfix_tilebg.js -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix/iepngfix_tilebg.js -END -blank.gif -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/943/osqa/trunk/forum/skins/default/media/iepngfix/blank.gif -END diff --git a/forum/skins/light/media/iepngfix/.svn/entries b/forum/skins/light/media/iepngfix/.svn/entries deleted file mode 100755 index d806e55a0faf410574f46756b98523e2f7149011..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/iepngfix/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/iepngfix -http://svn.osqa.net/svnroot - - - -2011-04-07T21:25:11.206789Z -943 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -iepngfix.htc -file - - - - -2012-07-01T12:37:33.801376Z -7adc49bd4961583fa03e303a9384eb64 -2011-04-07T21:25:11.206789Z -943 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -5227 - -iepngfix_tilebg.js -file - - - - -2012-07-01T12:37:33.801376Z -2700a811fcca690548a5c67e982ca336 -2011-04-07T21:25:11.206789Z -943 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4345 - -blank.gif -file - - - - -2012-07-01T12:37:33.801376Z -56398e76be6355ad5999b262208a17c9 -2011-04-07T21:25:11.206789Z -943 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -49 - diff --git a/forum/skins/light/media/iepngfix/.svn/prop-base/blank.gif.svn-base b/forum/skins/light/media/iepngfix/.svn/prop-base/blank.gif.svn-base deleted file mode 100755 index dbc918b06c1c8d7c24f3b9fa6b1d1e424817309d..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/iepngfix/.svn/prop-base/blank.gif.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 14 -svn:executable -V 1 -* -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/iepngfix/.svn/prop-base/iepngfix.htc.svn-base b/forum/skins/light/media/iepngfix/.svn/prop-base/iepngfix.htc.svn-base deleted file mode 100755 index 869ac71cf7e4d72d9ab52f86d630c1c3f0c017ce..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/iepngfix/.svn/prop-base/iepngfix.htc.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -svn:executable -V 1 -* -END diff --git a/forum/skins/light/media/iepngfix/.svn/prop-base/iepngfix_tilebg.js.svn-base b/forum/skins/light/media/iepngfix/.svn/prop-base/iepngfix_tilebg.js.svn-base deleted file mode 100755 index 869ac71cf7e4d72d9ab52f86d630c1c3f0c017ce..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/iepngfix/.svn/prop-base/iepngfix_tilebg.js.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -svn:executable -V 1 -* -END diff --git a/forum/skins/light/media/iepngfix/.svn/text-base/blank.gif.svn-base b/forum/skins/light/media/iepngfix/.svn/text-base/blank.gif.svn-base deleted file mode 100755 index 75b945d2553848b8b6f41fe5e24599c0687b8472..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/iepngfix/.svn/text-base/blank.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/iepngfix/.svn/text-base/iepngfix.htc.svn-base b/forum/skins/light/media/iepngfix/.svn/text-base/iepngfix.htc.svn-base deleted file mode 100755 index 909f599946a91c1b202e5eff0ee2f31a2ae1c9d4..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/iepngfix/.svn/text-base/iepngfix.htc.svn-base +++ /dev/null @@ -1,198 +0,0 @@ -<public:component> -<script type="text/javascript"> - -// IE5.5+ PNG Alpha Fix v2.0 Alpha -// (c) 2004-2009 Angus Turnbull http://www.twinhelix.com - -// This is licensed under the GNU LGPL, version 2.1 or later. -// For details, see: http://creativecommons.org/licenses/LGPL/2.1/ - -var IEPNGFix = window.IEPNGFix || {}; -IEPNGFix.data = IEPNGFix.data || {}; - - -// CONFIG: blankImg is the path to blank.gif, *relative to the HTML document*. -// Try either: -// * An absolute path like: '/images/blank.gif' -// * A path relative to this HTC file like: thisFolder + 'blank.gif' -var thisFolder = document.URL.replace(/(\\|\/)[^\\\/]*$/, '/'); -IEPNGFix.blankImg = thisFolder + 'blank.gif'; - - -IEPNGFix.fix = function(elm, src, t) { - // Applies an image 'src' to an element 'elm' using the DirectX filter. - // If 'src' is null, filter is disabled. - // Disables the 'hook' to prevent infinite recursion on setting BG/src. - // 't' = type, where background tile = 0, background = 1, IMG SRC = 2. - - var h = this.hook.enabled; - this.hook.enabled = 0; - - var f = 'DXImageTransform.Microsoft.AlphaImageLoader'; - src = (src || '').replace(/\(/g, '%28').replace(/\)/g, '%29'); - - if ( - src && !(/IMG|INPUT/.test(elm.nodeName) && (t != 2)) && - elm.currentStyle.width == 'auto' && elm.currentStyle.height == 'auto' - ) { - if (elm.offsetWidth) { - elm.style.width = elm.offsetWidth + 'px'; - } - if (elm.clientHeight) { - elm.style.height = elm.clientHeight + 'px'; - } - if (elm.currentStyle.display == 'inline') { - elm.style.display = 'inline-block'; - } - } - - if (t == 1) { - elm.style.backgroundImage = 'url("' + this.blankImg + '")'; - } - if (t == 2) { - elm.src = this.blankImg; - } - - if (elm.filters[f]) { - elm.filters[f].enabled = src ? true : false; - if (src) { - elm.filters[f].src = src; - } - } else if (src) { - elm.style.filter = 'progid:' + f + '(src="' + src + - '",sizingMethod="' + (t == 2 ? 'scale' : 'crop') + '")'; - } - - this.hook.enabled = h; -}; - - -IEPNGFix.process = function(elm, init) { - // Checks the onpropertychange event (on first 'init' run, a fake event) - // and calls the filter-applying-functions. - - if ( - !/MSIE (5\.5|6)/.test(navigator.userAgent) || - typeof elm.filters == 'unknown' - ) { - return; - } - if (!this.data[elm.uniqueID]) { - this.data[elm.uniqueID] = { - className: '' - }; - } - var data = this.data[elm.uniqueID], - evt = init ? { propertyName: 'src,backgroundImage' } : event, - isSrc = /src/.test(evt.propertyName), - isBg = /backgroundImage/.test(evt.propertyName), - isPos = /width|height|background(Pos|Rep)/.test(evt.propertyName), - isClass = !init && ((elm.className != data.className) && - (elm.className || data.className)); - if (!(isSrc || isBg || isPos || isClass)) { - return; - } - data.className = elm.className; - var blank = this.blankImg.match(/([^\/]+)$/)[1], - eS = elm.style, - eCS = elm.currentStyle; - - // Required for Whatever:hover - erase set BG if className changes. - if ( - isClass && (eS.backgroundImage.indexOf('url(') == -1 || - eS.backgroundImage.indexOf(blank) > -1) - ) { - return setTimeout(function() { - eS.backgroundImage = ''; - }, 0); - } - - // Foregrounds. - if (isSrc && elm.src && { IMG: 1, INPUT: 1 }[elm.nodeName]) { - if ((/\.png/i).test(elm.src)) { - if (!elm.oSrc) { - // MM rollover compat - elm.oSrc = elm.src; - } - this.fix(elm, elm.src, 2); - } else if (elm.src.indexOf(blank) == -1) { - this.fix(elm, ''); - } - } - - // Backgrounds. - var bgSrc = eCS.backgroundImage || eS.backgroundImage; - if ((bgSrc + elm.src).indexOf(blank) == -1) { - var bgPNG = bgSrc.match(/url[("']+(.*\.png[^\)"']*)[\)"']/i); - if (bgPNG) { - if (this.tileBG && !{ IMG: 1, INPUT: 1 }[elm.nodeName]) { - this.tileBG(elm, bgPNG[1]); - this.fix(elm, '', 1); - } else { - if (data.tiles && data.tiles.src) { - this.tileBG(elm, ''); - } - this.fix(elm, bgPNG[1], 1); - this.childFix(elm); - } - } else { - if (data.tiles && data.tiles.src) { - this.tileBG(elm, ''); - } - this.fix(elm, ''); - } - } else if ((isPos || isClass) && data.tiles && data.tiles.src) { - this.tileBG(elm, data.tiles.src); - } - - if (init) { - this.hook.enabled = 1; - elm.attachEvent('onpropertychange', this.hook); - } -}; - - -IEPNGFix.childFix = function(elm) { - // "hasLayout" fix for unclickable children inside PNG backgrounds. - var tags = [ - 'a', - 'input', - 'select', - 'textarea', - 'button', - 'iframe', - 'object' - ], - t = tags.length, - tFix = []; - while (t--) { - var pFix = elm.all.tags(tags[t]), - e = pFix.length; - while (e--) { - tFix.push(pFix[e]); - } - } - t = tFix.length; - if (t && (/relative|absolute/i).test(elm.currentStyle.position)) { - alert('IEPNGFix: Unclickable children of element:' + - '\n\n<' + elm.nodeName + (elm.id && ' id=' + elm.id) + '>'); - } - while (t--) { - if (!(/relative|absolute/i).test(tFix[t].currentStyle.position)) { - tFix[t].style.position = 'relative'; - } - } -}; - - -IEPNGFix.hook = function() { - if (IEPNGFix.hook.enabled) { - IEPNGFix.process(element, 0); - } -}; - - -IEPNGFix.process(element, 1); - -</script> -</public:component> diff --git a/forum/skins/light/media/iepngfix/.svn/text-base/iepngfix_tilebg.js.svn-base b/forum/skins/light/media/iepngfix/.svn/text-base/iepngfix_tilebg.js.svn-base deleted file mode 100755 index 6a1ff4955bf3eec68eb312fccc97d4a8cc8d4e1e..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/iepngfix/.svn/text-base/iepngfix_tilebg.js.svn-base +++ /dev/null @@ -1,173 +0,0 @@ -// IE5.5+ PNG Alpha Fix v2.0 Alpha: Background Tiling Support -// (c) 2008-2009 Angus Turnbull http://www.twinhelix.com - -// This is licensed under the GNU LGPL, version 2.1 or later. -// For details, see: http://creativecommons.org/licenses/LGPL/2.1/ - -var IEPNGFix = window.IEPNGFix || {}; - -IEPNGFix.tileBG = function(elm, pngSrc, ready) { - // Params: A reference to a DOM element, the PNG src file pathname, and a - // hidden "ready-to-run" passed when called back after image preloading. - - var data = this.data[elm.uniqueID], - elmW = Math.max(elm.clientWidth, elm.scrollWidth), - elmH = Math.max(elm.clientHeight, elm.scrollHeight), - bgX = elm.currentStyle.backgroundPositionX, - bgY = elm.currentStyle.backgroundPositionY, - bgR = elm.currentStyle.backgroundRepeat; - - // Cache of DIVs created per element, and image preloader/data. - if (!data.tiles) { - data.tiles = { - elm: elm, - src: '', - cache: [], - img: new Image(), - old: {} - }; - } - var tiles = data.tiles, - pngW = tiles.img.width, - pngH = tiles.img.height; - - if (pngSrc) { - if (!ready && pngSrc != tiles.src) { - // New image? Preload it with a callback to detect dimensions. - tiles.img.onload = function() { - this.onload = null; - IEPNGFix.tileBG(elm, pngSrc, 1); - }; - return tiles.img.src = pngSrc; - } - } else { - // No image? - if (tiles.src) ready = 1; - pngW = pngH = 0; - } - tiles.src = pngSrc; - - if (!ready && elmW == tiles.old.w && elmH == tiles.old.h && - bgX == tiles.old.x && bgY == tiles.old.y && bgR == tiles.old.r) { - return; - } - - // Convert English and percentage positions to pixels. - var pos = { - top: '0%', - left: '0%', - center: '50%', - bottom: '100%', - right: '100%' - }, - x, - y, - pc; - x = pos[bgX] || bgX; - y = pos[bgY] || bgY; - if (pc = x.match(/(\d+)%/)) { - x = Math.round((elmW - pngW) * (parseInt(pc[1]) / 100)); - } - if (pc = y.match(/(\d+)%/)) { - y = Math.round((elmH - pngH) * (parseInt(pc[1]) / 100)); - } - x = parseInt(x); - y = parseInt(y); - - // Handle backgroundRepeat. - var repeatX = { 'repeat': 1, 'repeat-x': 1 }[bgR], - repeatY = { 'repeat': 1, 'repeat-y': 1 }[bgR]; - if (repeatX) { - x %= pngW; - if (x > 0) x -= pngW; - } - if (repeatY) { - y %= pngH; - if (y > 0) y -= pngH; - } - - // Go! - this.hook.enabled = 0; - if (!({ relative: 1, absolute: 1 }[elm.currentStyle.position])) { - elm.style.position = 'relative'; - } - var count = 0, - xPos, - maxX = repeatX ? elmW : x + 0.1, - yPos, - maxY = repeatY ? elmH : y + 0.1, - d, - s, - isNew; - if (pngW && pngH) { - for (xPos = x; xPos < maxX; xPos += pngW) { - for (yPos = y; yPos < maxY; yPos += pngH) { - isNew = 0; - if (!tiles.cache[count]) { - tiles.cache[count] = document.createElement('div'); - isNew = 1; - } - var clipR = Math.max(0, xPos + pngW > elmW ? elmW - xPos : pngW), - clipB = Math.max(0, yPos + pngH > elmH ? elmH - yPos : pngH); - d = tiles.cache[count]; - s = d.style; - s.behavior = 'none'; - s.left = (xPos - parseInt(elm.currentStyle.paddingLeft)) + 'px'; - s.top = yPos + 'px'; - s.width = clipR + 'px'; - s.height = clipB + 'px'; - s.clip = 'rect(' + - (yPos < 0 ? 0 - yPos : 0) + 'px,' + - clipR + 'px,' + - clipB + 'px,' + - (xPos < 0 ? 0 - xPos : 0) + 'px)'; - s.display = 'block'; - if (isNew) { - s.position = 'absolute'; - s.zIndex = -999; - if (elm.firstChild) { - elm.insertBefore(d, elm.firstChild); - } else { - elm.appendChild(d); - } - } - this.fix(d, pngSrc, 0); - count++; - } - } - } - while (count < tiles.cache.length) { - this.fix(tiles.cache[count], '', 0); - tiles.cache[count++].style.display = 'none'; - } - - this.hook.enabled = 1; - - // Cache so updates are infrequent. - tiles.old = { - w: elmW, - h: elmH, - x: bgX, - y: bgY, - r: bgR - }; -}; - - -IEPNGFix.update = function() { - // Update all PNG backgrounds. - for (var i in IEPNGFix.data) { - var t = IEPNGFix.data[i].tiles; - if (t && t.elm && t.src) { - IEPNGFix.tileBG(t.elm, t.src); - } - } -}; -IEPNGFix.update.timer = 0; - -if (window.attachEvent && !window.opera) { - window.attachEvent('onresize', function() { - clearTimeout(IEPNGFix.update.timer); - IEPNGFix.update.timer = setTimeout(IEPNGFix.update, 100); - }); -} diff --git a/forum/skins/light/media/images/.svn/all-wcprops b/forum/skins/light/media/images/.svn/all-wcprops deleted file mode 100755 index 6876f3425015e396a41f8fef980f30cd644c2fb8..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/all-wcprops +++ /dev/null @@ -1,323 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images -END -favicon.ico -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/favicon.ico -END -logo1.png -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo1.png -END -webfaction.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/225/osqa/trunk/forum/skins/default/media/images/webfaction.png -END -logo2.png -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo2.png -END -comment-like.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-like.png -END -expander-arrow-hide.gif -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/expander-arrow-hide.gif -END -djangomade124x25_grey.gif -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/djangomade124x25_grey.gif -END -convert-to-question-hover.png -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/1092/osqa/trunk/forum/skins/default/media/images/convert-to-question-hover.png -END -nophoto.png -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/nophoto.png -END -convert-off.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/744/osqa/trunk/forum/skins/default/media/images/convert-off.png -END -close-small-dark.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/close-small-dark.png -END -dot-g.gif -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/dot-g.gif -END -close-small-hover.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/close-small-hover.png -END -indicator.gif -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/indicator.gif -END -dash.gif -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/dash.gif -END -logo.png -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo.png -END -medala_on.gif -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/medala_on.gif -END -medala.gif -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/medala.gif -END -vote-favorite-on.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-favorite-on.png -END -comment-edit-hover.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-edit-hover.png -END -blue-up-arrow-h18px.png -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/blue-up-arrow-h18px.png -END -new.gif -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/new.gif -END -close-small.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/close-small.png -END -convert-to-question-off.png -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/!svn/ver/1092/osqa/trunk/forum/skins/default/media/images/convert-to-question-off.png -END -cc-88x31.png -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/cc-88x31.png -END -dot-list.gif -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/dot-list.gif -END -logo.gif -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/logo.gif -END -gray-up-arrow-h18px.png -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/gray-up-arrow-h18px.png -END -user-sprite.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/285/osqa/trunk/forum/skins/default/media/images/user-sprite.png -END -comment-delete-hover.png -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-delete-hover.png -END -vote-accepted.png -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-accepted.png -END -vote-arrow-down-on.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-down-on.png -END -edit.png -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/edit.png -END -comment-edit.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-edit.png -END -cc-wiki.png -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/cc-wiki.png -END -vote-arrow-up.png -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-up.png -END -bullet_green.gif -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/bullet_green.gif -END -expander-arrow-show.gif -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/expander-arrow-show.gif -END -vote-accepted-on.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-accepted-on.png -END -comment-like-on.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-like-on.png -END -grippie.png -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/grippie.png -END -feed-icon-small.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/feed-icon-small.png -END -openid.gif -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid.gif -END -box-arrow.gif -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/box-arrow.gif -END -convert-hover.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/744/osqa/trunk/forum/skins/default/media/images/convert-hover.png -END -vote-arrow-up-on.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-up-on.png -END -vote-favorite-off.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-favorite-off.png -END -comment-delete.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/comment-delete.png -END -wiki.png -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/329/osqa/trunk/forum/skins/default/media/images/wiki.png -END -by-sa-88x31.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/735/osqa/trunk/forum/skins/default/media/images/by-sa-88x31.png -END -favicon.gif -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/favicon.gif -END -quest-bg.gif -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/quest-bg.gif -END -vote-arrow-down.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/vote-arrow-down.png -END diff --git a/forum/skins/light/media/images/.svn/entries b/forum/skins/light/media/images/.svn/entries deleted file mode 100755 index 9cff50270f1d0d524bb7869d8916276464c49dfc..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/entries +++ /dev/null @@ -1,1836 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/images -http://svn.osqa.net/svnroot - - - -2011-07-07T11:23:40.081495Z -1110 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -cc-88x31.png -file - - - - -2012-07-01T12:37:33.789376Z -80fb4a8b9dd7c600afda07b3d3c5efa4 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -5460 - -dot-list.gif -file - - - - -2012-07-01T12:37:33.789376Z -8cd0df6a63fc7c5ae444f3d3bc47bb49 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -56 - -logo.gif -file - - - - -2012-07-01T12:37:33.789376Z -0743b026c7cbeefd4dce0a66458bea46 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2114 - -logo1.png -file - - - - -2012-07-01T12:37:33.789376Z -5468d791be63bee697695f9007ae403f -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2752 - -logo2.png -file - - - - -2012-07-01T12:37:33.789376Z -9147b2875f4180454807c0cae6081a23 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2124 - -comment-delete-hover.png -file - - - - -2012-07-01T12:37:33.789376Z -41ccee91e68691f97beabab7bcf3e031 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1113 - -vote-arrow-down-on.png -file - - - - -2012-07-01T12:37:33.789376Z -dba1d2cc7115406e95e9a66eec578793 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -905 - -edit.png -file - - - - -2012-07-01T12:37:33.793376Z -293ef7413a7e6b723160bceea27285dc -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -758 - -comment-edit.png -file - - - - -2012-07-01T12:37:33.789376Z -c501931dc00589335d65e98d7ddbfeff -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -433 - -expander-arrow-hide.gif -file - - - - -2012-07-01T12:37:33.793376Z -925277fd59eecd194cae2578c1126928 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -126 - -djangomade124x25_grey.gif -file - - - - -2012-07-01T12:37:33.793376Z -66f4812f5935112c18a307a828dc7a46 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2035 - -convert-to-question-hover.png -file - - - - -2012-07-01T12:37:33.793376Z -8b0dbfa2b663d95647c895faab583150 -2011-07-02T14:04:43.918209Z -1092 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -780 - -nophoto.png -file - - - - -2012-07-01T12:37:33.793376Z -7d4b493f847e9650fcaaac48ca06244a -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -696 - -bullet_green.gif -file - - - - -2012-07-01T12:37:33.793376Z -7cf486fae2493f3bb70ae7c12c1050f6 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -64 - -convert-off.png -file - - - - -2012-07-01T12:37:33.793376Z -72707acdadb7334fbc2f7b2402f775fa -2011-02-04T18:37:34.151192Z -744 -claycarpenter -has-props - - - - - - - - - - - - - - - - - - - - -1455 - -openid -dir - -dot-g.gif -file - - - - -2012-07-01T12:37:33.793376Z -ba50204f6be92464ec14643090936652 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -61 - -close-small-hover.png -file - - - - -2012-07-01T12:37:33.793376Z -84470b7d49d16fba386035c18c10884f -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -337 - -indicator.gif -file - - - - -2012-07-01T12:37:33.793376Z -faa74e8c61fc64d5edb11613c7eead2c -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2545 - -vote-accepted-on.png -file - - - - -2012-07-01T12:37:33.793376Z -5f108bfaf403cbebf524d30a1ae30d7b -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1124 - -openid.gif -file - - - - -2012-07-01T12:37:33.793376Z -86ad418dc465163d828bfdfca1527afa -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -910 - -viewbox -dir - -medala_on.gif -file - - - - -2012-07-01T12:37:33.793376Z -b0d59c5e8cf6fa74b6e4ec2a1cbd444d -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -957 - -vote-arrow-up-on.png -file - - - - -2012-07-01T12:37:33.793376Z -1eee7baca2cb8684294c81210609abdb -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -906 - -comment-delete.png -file - - - - -2012-07-01T12:37:33.793376Z -c41b4358029e2bac9113313a478b3cb6 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1092 - -wiki.png -file - - - - -2012-07-01T12:37:33.793376Z -901a9475f3e39c3d16974d591c524baa -2010-05-25T21:28:23.158598Z -329 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -5349 - -blue-up-arrow-h18px.png -file - - - - -2012-07-01T12:37:33.793376Z -b8316e5adb6922429da1a77ea8d4216c -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -593 - -quest-bg.gif -file - - - - -2012-07-01T12:37:33.793376Z -cf7f3d0d3c80811c8fd7421ec9db7427 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -294 - -new.gif -file - - - - -2012-07-01T12:37:33.793376Z -572f793561e026ac635df68a8c2a1f0d -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -635 - -close-small.png -file - - - - -2012-07-01T12:37:33.793376Z -dfc06fe59d10b1f43ed47ac74b7eb3e8 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -293 - -convert-to-question-off.png -file - - - - -2012-07-01T12:37:33.793376Z -aca5b4cf6d8e19df8f6eeac7de25532e -2011-07-02T14:04:43.918209Z -1092 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -759 - -webfaction.png -file - - - - -2012-07-01T12:37:33.797376Z -a4123ddbd28774cfefe2e0adbc1a2671 -2010-05-11T20:26:36.854633Z -225 -rick -has-props - - - - - - - - - - - - - - - - - - - - -2348 - -gray-up-arrow-h18px.png -file - - - - -2012-07-01T12:37:33.797376Z -a30c3faba43bd77b3b97360f3c16e456 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -383 - -user-sprite.png -file - - - - -2012-07-01T12:37:33.797376Z -30c7e76895beb7dffae5c9dedc9109eb -2010-05-15T00:00:50.645299Z -285 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -4982 - -vote-accepted.png -file - - - - -2012-07-01T12:37:33.797376Z -5a150e1e25f4130cd0b28423ae7e7b91 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1058 - -comment-like.png -file - - - - -2012-07-01T12:37:33.797376Z -23ed59f406c9985dfc90935817e6cbb4 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1530 - -cc-wiki.png -file - - - - -2012-07-01T12:37:33.797376Z -9a26044fc6d4c26d6c0d9e441f26e71e -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2333 - -vote-arrow-up.png -file - - - - -2012-07-01T12:37:33.797376Z -475ca9d114ea7630e3ec0c47c2be5b56 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -843 - -close-small-dark.png -file - - - - -2012-07-01T12:37:33.797376Z -de1c0dd143d3da38bd911af457dcb4f8 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -226 - -expander-arrow-show.gif -file - - - - -2012-07-01T12:37:33.785376Z -82a298435518c540e71146d8ea239d09 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -135 - -comment-like-on.png -file - - - - -2012-07-01T12:37:33.785376Z -24b8eced4f2c72171c7ab0ce5b842b86 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1523 - -grippie.png -file - - - - -2012-07-01T12:37:33.789376Z -dd2fb703003273603bc4fbefa9816bb5 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -162 - -feed-icon-small.png -file - - - - -2012-07-01T12:37:33.789376Z -2168a573d0d45bd2f9a89b8236453d61 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -689 - -dash.gif -file - - - - -2012-07-01T12:37:33.789376Z -22565c33d801b94c522e266b3d4d4e50 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -44 - -logo.png -file - - - - -2012-07-01T12:37:33.789376Z -609ff471064af275f03a3a343fb71139 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2081 - -box-arrow.gif -file - - - - -2012-07-01T12:37:33.789376Z -c9fa82ab7aef63c7209d5a54cb592be6 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -69 - -convert-hover.png -file - - - - -2012-07-01T12:37:33.789376Z -04d7b3e03fd25b00eec0fa24c43d3da2 -2011-02-04T18:37:34.151192Z -744 -claycarpenter -has-props - - - - - - - - - - - - - - - - - - - - -1567 - -vote-favorite-off.png -file - - - - -2012-07-01T12:37:33.789376Z -cb1bd6f79ebf03c1f2a739db399c1f07 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -930 - -by-sa-88x31.png -file - - - - -2012-07-01T12:37:33.789376Z -15d99bea74da9b7ec6a0ca3bad80903c -2011-02-02T23:34:44.906228Z -735 -claycarpenter -has-props - - - - - - - - - - - - - - - - - - - - -5083 - -medala.gif -file - - - - -2012-07-01T12:37:33.789376Z -9f53f22e52b274e5b14e535ad250e28e -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -801 - -vote-favorite-on.png -file - - - - -2012-07-01T12:37:33.789376Z -5e6414e2cb03fccbe3d6bba5ded4da85 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1023 - -comment-edit-hover.png -file - - - - -2012-07-01T12:37:33.789376Z -051a314a9ac56a0453f535db4678d472 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -448 - -favicon.gif -file - - - - -2012-07-01T12:37:33.789376Z -aad7ff80b0b312cae2e0c137dfab3cef -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -3918 - -vote-arrow-down.png -file - - - - -2012-07-01T12:37:33.789376Z -3c3b8e3620747b2c465841284fec60d4 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -876 - -favicon.ico -file - - - - -2012-07-01T12:37:33.789376Z -6418fc7f5d83622b50c4355a6c101003 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1150 - diff --git a/forum/skins/light/media/images/.svn/prop-base/blue-up-arrow-h18px.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/blue-up-arrow-h18px.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/blue-up-arrow-h18px.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/box-arrow.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/box-arrow.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/box-arrow.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/bullet_green.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/bullet_green.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/bullet_green.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/by-sa-88x31.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/by-sa-88x31.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/by-sa-88x31.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/cc-88x31.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/cc-88x31.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/cc-88x31.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/cc-wiki.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/cc-wiki.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/cc-wiki.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/close-small-dark.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/close-small-dark.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/close-small-dark.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/close-small-hover.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/close-small-hover.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/close-small-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/close-small.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/close-small.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/close-small.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/comment-delete-hover.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/comment-delete-hover.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/comment-delete-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/comment-delete.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/comment-delete.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/comment-delete.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/comment-edit-hover.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/comment-edit-hover.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/comment-edit-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/comment-edit.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/comment-edit.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/comment-edit.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/comment-like-on.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/comment-like-on.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/comment-like-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/comment-like.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/comment-like.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/comment-like.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/convert-hover.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/convert-hover.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/convert-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/convert-off.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/convert-off.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/convert-off.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/convert-to-question-hover.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/convert-to-question-hover.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/convert-to-question-hover.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/convert-to-question-off.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/convert-to-question-off.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/convert-to-question-off.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/dash.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/dash.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/dash.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/djangomade124x25_grey.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/djangomade124x25_grey.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/djangomade124x25_grey.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/dot-g.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/dot-g.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/dot-g.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/dot-list.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/dot-list.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/dot-list.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/edit.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/edit.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/edit.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/expander-arrow-hide.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/expander-arrow-hide.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/expander-arrow-hide.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/expander-arrow-show.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/expander-arrow-show.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/expander-arrow-show.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/favicon.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/favicon.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/favicon.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/favicon.ico.svn-base b/forum/skins/light/media/images/.svn/prop-base/favicon.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/favicon.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/feed-icon-small.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/feed-icon-small.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/feed-icon-small.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/gray-up-arrow-h18px.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/gray-up-arrow-h18px.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/gray-up-arrow-h18px.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/grippie.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/grippie.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/grippie.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/indicator.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/indicator.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/indicator.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/logo.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/logo.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/logo.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/logo.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/logo.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/logo.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/logo1.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/logo1.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/logo1.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/logo2.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/logo2.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/logo2.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/medala.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/medala.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/medala.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/medala_on.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/medala_on.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/medala_on.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/new.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/new.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/new.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/nophoto.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/nophoto.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/nophoto.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/openid.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/openid.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/openid.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/quest-bg.gif.svn-base b/forum/skins/light/media/images/.svn/prop-base/quest-bg.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/quest-bg.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/user-sprite.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/user-sprite.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/user-sprite.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-accepted-on.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-accepted-on.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-accepted-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-accepted.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-accepted.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-accepted.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-down-on.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-arrow-down-on.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-down-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-down.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-arrow-down.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-down.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-up-on.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-arrow-up-on.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-up-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-up.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-arrow-up.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-arrow-up.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-favorite-off.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-favorite-off.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-favorite-off.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/vote-favorite-on.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/vote-favorite-on.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/vote-favorite-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/webfaction.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/webfaction.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/webfaction.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/prop-base/wiki.png.svn-base b/forum/skins/light/media/images/.svn/prop-base/wiki.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/.svn/prop-base/wiki.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/.svn/text-base/blue-up-arrow-h18px.png.svn-base b/forum/skins/light/media/images/.svn/text-base/blue-up-arrow-h18px.png.svn-base deleted file mode 100755 index e1f29e86334ce72d2d28989a133571d7bf53a94e..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/blue-up-arrow-h18px.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/box-arrow.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/box-arrow.gif.svn-base deleted file mode 100755 index 89dcf5b3dd40fac0e6afb0b1a7ff899a059f923f..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/box-arrow.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/bullet_green.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/bullet_green.gif.svn-base deleted file mode 100755 index fa530910f9dc11fadaa2314f72bd98f29df39daf..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/bullet_green.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/by-sa-88x31.png.svn-base b/forum/skins/light/media/images/.svn/text-base/by-sa-88x31.png.svn-base deleted file mode 100755 index f0a944e0b89642ae282047846e55393007b04686..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/by-sa-88x31.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/cc-88x31.png.svn-base b/forum/skins/light/media/images/.svn/text-base/cc-88x31.png.svn-base deleted file mode 100755 index 0f2a0f10722d3fabffe8af5d5eed09866e25909a..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/cc-88x31.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/cc-wiki.png.svn-base b/forum/skins/light/media/images/.svn/text-base/cc-wiki.png.svn-base deleted file mode 100755 index 3e6805383c0ee73a835ef260c888b847a289bb03..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/cc-wiki.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/close-small-dark.png.svn-base b/forum/skins/light/media/images/.svn/text-base/close-small-dark.png.svn-base deleted file mode 100755 index 280c1fc74e47c0e7d1c68d6f356eb22eeba7a2de..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/close-small-dark.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/close-small-hover.png.svn-base b/forum/skins/light/media/images/.svn/text-base/close-small-hover.png.svn-base deleted file mode 100755 index 7899aec7213b837143a2e975faa90a2abd456521..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/close-small-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/close-small.png.svn-base b/forum/skins/light/media/images/.svn/text-base/close-small.png.svn-base deleted file mode 100755 index 5a99d31f17b26a07d60acd0da4a1cb5b93929bba..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/close-small.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/comment-delete-hover.png.svn-base b/forum/skins/light/media/images/.svn/text-base/comment-delete-hover.png.svn-base deleted file mode 100755 index e8c69f4489359d8a958cd13ad325efa5ddd4e6b3..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/comment-delete-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/comment-delete.png.svn-base b/forum/skins/light/media/images/.svn/text-base/comment-delete.png.svn-base deleted file mode 100755 index e1c2d8afaaf6feb74da3217157b5b56f577db839..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/comment-delete.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/comment-edit-hover.png.svn-base b/forum/skins/light/media/images/.svn/text-base/comment-edit-hover.png.svn-base deleted file mode 100755 index 8291c565240496111de86671b84aed84ed5925d1..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/comment-edit-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/comment-edit.png.svn-base b/forum/skins/light/media/images/.svn/text-base/comment-edit.png.svn-base deleted file mode 100755 index bad5c47c57ac45f024889af405c365d90ecf71e2..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/comment-edit.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/comment-like-on.png.svn-base b/forum/skins/light/media/images/.svn/text-base/comment-like-on.png.svn-base deleted file mode 100755 index c2e497e412d96e76112b22bd18627e986688e013..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/comment-like-on.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/comment-like.png.svn-base b/forum/skins/light/media/images/.svn/text-base/comment-like.png.svn-base deleted file mode 100755 index 87a19b9fdd401f4a48eff72e1bc50395ed9396fd..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/comment-like.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/convert-hover.png.svn-base b/forum/skins/light/media/images/.svn/text-base/convert-hover.png.svn-base deleted file mode 100755 index 9e973efbeaa97f01f6db02b87b85d26dab92a828..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/convert-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/convert-off.png.svn-base b/forum/skins/light/media/images/.svn/text-base/convert-off.png.svn-base deleted file mode 100755 index a10dddd8dbbd80d9ab23cbf1972a32b5fffa6991..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/convert-off.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/convert-to-question-hover.png.svn-base b/forum/skins/light/media/images/.svn/text-base/convert-to-question-hover.png.svn-base deleted file mode 100755 index 52f6ee656a96bb9014ad13cd333aeed29e9be1f3..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/convert-to-question-hover.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/convert-to-question-off.png.svn-base b/forum/skins/light/media/images/.svn/text-base/convert-to-question-off.png.svn-base deleted file mode 100755 index 846fa15b8a83c7e26cc613c721469268e0e3493d..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/convert-to-question-off.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/dash.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/dash.gif.svn-base deleted file mode 100755 index d1ddc507fe00bd654fce38ac8552793aa18c9966..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/dash.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/djangomade124x25_grey.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/djangomade124x25_grey.gif.svn-base deleted file mode 100755 index d34bb311615b1378a672a828c7a7916490cd882b..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/djangomade124x25_grey.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/dot-g.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/dot-g.gif.svn-base deleted file mode 100755 index 5d6bb28e56377b0eeb80899222aa3290ec2a3a95..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/dot-g.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/dot-list.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/dot-list.gif.svn-base deleted file mode 100755 index f6a6b86531d1f0250fc7b0eea0cd874c4e74c8ac..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/dot-list.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/edit.png.svn-base b/forum/skins/light/media/images/.svn/text-base/edit.png.svn-base deleted file mode 100755 index dcb09be0640f075b1cdd480c6967b9cfd6c8719a..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/edit.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/expander-arrow-hide.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/expander-arrow-hide.gif.svn-base deleted file mode 100755 index feb6a6187c2742ea8e516244f139e7946ed757fb..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/expander-arrow-hide.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/expander-arrow-show.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/expander-arrow-show.gif.svn-base deleted file mode 100755 index 6825c56ee42f0184d66c0fe954d7fc4b6f05e850..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/expander-arrow-show.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/favicon.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/favicon.gif.svn-base deleted file mode 100755 index 910c26660ca2088729309bd9286403237c68f020..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/favicon.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/favicon.ico.svn-base b/forum/skins/light/media/images/.svn/text-base/favicon.ico.svn-base deleted file mode 100755 index 35c9e149fb8755e7c2ff33433a9022c146b20bde..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/favicon.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/feed-icon-small.png.svn-base b/forum/skins/light/media/images/.svn/text-base/feed-icon-small.png.svn-base deleted file mode 100755 index b3c949d2244f2c0c81d65e74719af2a1b56d06a3..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/feed-icon-small.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/gray-up-arrow-h18px.png.svn-base b/forum/skins/light/media/images/.svn/text-base/gray-up-arrow-h18px.png.svn-base deleted file mode 100755 index 78767445ec3e38fab840f8177c249e38379abb06..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/gray-up-arrow-h18px.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/grippie.png.svn-base b/forum/skins/light/media/images/.svn/text-base/grippie.png.svn-base deleted file mode 100755 index 6524d4167d2d6e3939cfcf3111ce520acd66bc21..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/grippie.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/indicator.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/indicator.gif.svn-base deleted file mode 100755 index 1c72ebb554be018511ae972c3f2361dff02dce02..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/indicator.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/logo.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/logo.gif.svn-base deleted file mode 100755 index ab690de2a1c9679f225d80560cf5e06f3ed3cab0..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/logo.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/logo.png.svn-base b/forum/skins/light/media/images/.svn/text-base/logo.png.svn-base deleted file mode 100755 index 6a250e35b34cbe9113e3a62d17eba05d05c83888..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/logo.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/logo1.png.svn-base b/forum/skins/light/media/images/.svn/text-base/logo1.png.svn-base deleted file mode 100755 index d79a627174b08ee90776540abad2e76f28909652..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/logo1.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/logo2.png.svn-base b/forum/skins/light/media/images/.svn/text-base/logo2.png.svn-base deleted file mode 100755 index bd3cccd9f47793f86864cd068621ab07198b5ff0..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/logo2.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/medala.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/medala.gif.svn-base deleted file mode 100755 index 93dd1a3960a9668a92ed55a81402592f296c9333..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/medala.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/medala_on.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/medala_on.gif.svn-base deleted file mode 100755 index a18f9e8562941254941a446efad3e6edcb651d9c..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/medala_on.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/new.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/new.gif.svn-base deleted file mode 100755 index 8a220b531225397b6a304918e4d96f6196ef40a8..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/new.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/nophoto.png.svn-base b/forum/skins/light/media/images/.svn/text-base/nophoto.png.svn-base deleted file mode 100755 index 2daf0ffd4333c90aafd71479510144bcdcb16c79..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/nophoto.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/openid.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/openid.gif.svn-base deleted file mode 100755 index 8540e12bcd8303b44a1f1676b59e9ff61713a2da..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/openid.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/quest-bg.gif.svn-base b/forum/skins/light/media/images/.svn/text-base/quest-bg.gif.svn-base deleted file mode 100755 index b754023882679555b5d31862f777e5f8b1877bcf..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/quest-bg.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/user-sprite.png.svn-base b/forum/skins/light/media/images/.svn/text-base/user-sprite.png.svn-base deleted file mode 100755 index f437351bb5b9cc2933900204e3b1a597141ffade..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/user-sprite.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-accepted-on.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-accepted-on.png.svn-base deleted file mode 100755 index 2026f3bcc50e2738bdb6c21f32ffb2a82d088e11..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-accepted-on.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-accepted.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-accepted.png.svn-base deleted file mode 100755 index ecd185515a82bf81ac99a67c755eae74505819fd..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-accepted.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-arrow-down-on.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-arrow-down-on.png.svn-base deleted file mode 100755 index 048dbb44dcf2aa3669386737e4e34503659cfa70..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-arrow-down-on.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-arrow-down.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-arrow-down.png.svn-base deleted file mode 100755 index e4fdec0ab033b417e1299890595fa6a1522b67f2..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-arrow-down.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-arrow-up-on.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-arrow-up-on.png.svn-base deleted file mode 100755 index 56ad0c2591434e732e2148420330878414dd25b5..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-arrow-up-on.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-arrow-up.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-arrow-up.png.svn-base deleted file mode 100755 index 6e9a51c7df2da30fd2e56359a93f4712077ee62d..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-arrow-up.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-favorite-off.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-favorite-off.png.svn-base deleted file mode 100755 index c1bef0745ea9acd1c405ac11e0d5555e8b12d7e3..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-favorite-off.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/vote-favorite-on.png.svn-base b/forum/skins/light/media/images/.svn/text-base/vote-favorite-on.png.svn-base deleted file mode 100755 index 1f9c14ab0813a1aec1f66b12c3eebe7232be3d8d..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/vote-favorite-on.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/webfaction.png.svn-base b/forum/skins/light/media/images/.svn/text-base/webfaction.png.svn-base deleted file mode 100755 index 7c19d6c2a4004919c3c6527b1d0daea3c27c4dd8..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/webfaction.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/.svn/text-base/wiki.png.svn-base b/forum/skins/light/media/images/.svn/text-base/wiki.png.svn-base deleted file mode 100755 index a6be55888ebb48fe73c198312b01854a64cf9dfa..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/.svn/text-base/wiki.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/all-wcprops b/forum/skins/light/media/images/openid/.svn/all-wcprops deleted file mode 100755 index 769a7739d0b97e557ec4c0bdbbdf8b037fd99024..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/all-wcprops +++ /dev/null @@ -1,161 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid -END -claimid.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/claimid.png -END -twitter.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/twitter.png -END -openid-inputicon.gif -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/openid-inputicon.gif -END -myopenid_big.png -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid/myopenid_big.png -END -blogger.ico -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/blogger.ico -END -myopenid.ico -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/myopenid.ico -END -flickr.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/flickr.png -END -aol.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid/aol.png -END -verisign.ico -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/verisign.ico -END -wordpress.ico -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/wordpress.ico -END -livejournal.ico -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/livejournal.ico -END -blogger.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/blogger.png -END -myopenid.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/myopenid.png -END -technorati.ico -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/technorati.ico -END -verisign.png -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/verisign.png -END -vidoop.ico -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/vidoop.ico -END -claimid.ico -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/claimid.ico -END -wordpress.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/wordpress.png -END -livejournal.png -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/livejournal.png -END -facebook.gif -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/facebook.gif -END -aol.gif -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/570/osqa/trunk/forum/skins/default/media/images/openid/aol.gif -END -google.gif -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/google.gif -END -openid.gif -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/openid.gif -END -flickr.ico -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/images/openid/flickr.ico -END -technorati.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/technorati.png -END -yahoo.gif -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/images/openid/yahoo.gif -END diff --git a/forum/skins/light/media/images/openid/.svn/entries b/forum/skins/light/media/images/openid/.svn/entries deleted file mode 100755 index 9093873c5cdcc0ad553a924dcf9d16d7cbe70df0..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/entries +++ /dev/null @@ -1,912 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/images/openid -http://svn.osqa.net/svnroot - - - -2010-08-25T06:01:34.224595Z -570 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -myopenid.png -file - - - - -2012-07-01T12:37:33.737376Z -c992ad6983c629f35b580791dd81b2ac -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -686 - -technorati.ico -file - - - - -2012-07-01T12:37:33.737376Z -c3499b3481456154e8872b28eaeed26c -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2294 - -verisign.png -file - - - - -2012-07-01T12:37:33.737376Z -48423ae1b587a51fb30f04acf2272955 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -513 - -vidoop.ico -file - - - - -2012-07-01T12:37:33.737376Z -1a4ef65fda7ee5b18852bc0802e59452 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1406 - -claimid.ico -file - - - - -2012-07-01T12:37:33.737376Z -0ae741d639cd3d6a2862728e19e4e436 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -3638 - -wordpress.png -file - - - - -2012-07-01T12:37:33.737376Z -d65827fddec8e186e6384db1843ea939 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -268 - -livejournal.png -file - - - - -2012-07-01T12:37:33.737376Z -9e1c93fe01c591a25a767e5448ad11e1 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -471 - -facebook.gif -file - - - - -2012-07-01T12:37:33.737376Z -45995e641f4db62970d15b3ae750abe9 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2035 - -aol.gif -file - - - - -2012-07-01T12:37:33.733376Z -49375f1b8ab9eff7b53503f51bc2b347 -2010-08-25T06:01:34.224595Z -570 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2101 - -google.gif -file - - - - -2012-07-01T12:37:33.733376Z -2cf43f8db882aae7972aed088d9d73ef -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1888 - -openid.gif -file - - - - -2012-07-01T12:37:33.733376Z -9066047ddd4ec2ab119d0796280edbe3 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -740 - -flickr.ico -file - - - - -2012-07-01T12:37:33.737376Z -9bac7c8e40a7b987102711a8e6c2bbb5 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1150 - -technorati.png -file - - - - -2012-07-01T12:37:33.737376Z -a53eb7e06b87c98c59ffa9d59da427c0 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -422 - -yahoo.gif -file - - - - -2012-07-01T12:37:33.733376Z -3e6d6a54c79145e133fb40e7f15838a7 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1643 - -claimid.png -file - - - - -2012-07-01T12:37:33.737376Z -6954ad55d1daec083e3d7911f2540e2c -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -453 - -twitter.png -file - - - - -2012-07-01T12:37:33.737376Z -ef61fa3329e5d99eac1596b4b20eee40 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2198 - -openid-inputicon.gif -file - - - - -2012-07-01T12:37:33.737376Z -032a66df4adf284203e91af0bfcb6a73 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -237 - -myopenid_big.png -file - - - - -2012-07-01T12:37:33.737376Z -6f84b7929e74b4d575ea274108a8fc4f -2010-08-25T06:01:34.224595Z -570 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2106 - -blogger.ico -file - - - - -2012-07-01T12:37:33.737376Z -59a0c7b6e4848ccdabcea0636efda02b -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -3638 - -myopenid.ico -file - - - - -2012-07-01T12:37:33.737376Z -b22b02868086edabad91d026830da2eb -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -2862 - -flickr.png -file - - - - -2012-07-01T12:37:33.737376Z -eb20e1a887b7e4520293a4072f556fa2 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -270 - -aol.png -file - - - - -2012-07-01T12:37:33.737376Z -81115d5a838c986a137f5502ba4af1b4 -2010-08-25T06:01:34.224595Z -570 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -583 - -verisign.ico -file - - - - -2012-07-01T12:37:33.737376Z -eb0aba8ded5e67a970c0520be8c5f593 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -4710 - -wordpress.ico -file - - - - -2012-07-01T12:37:33.737376Z -6cec5a9c106d45e458fc680f70df91b0 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -1150 - -livejournal.ico -file - - - - -2012-07-01T12:37:33.737376Z -ce16cde3e74e64131992da97b266ee95 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -5222 - -blogger.png -file - - - - -2012-07-01T12:37:33.737376Z -ff1282365daba23105850f0ccc5d6a65 -2010-05-07T01:15:39.920263Z -156 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -194 - diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/aol.gif.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/aol.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/aol.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/aol.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/aol.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/aol.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/blogger.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/blogger.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/blogger.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/blogger.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/blogger.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/blogger.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/claimid.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/claimid.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/claimid.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/claimid.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/claimid.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/claimid.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/facebook.gif.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/facebook.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/facebook.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/flickr.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/flickr.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/flickr.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/flickr.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/flickr.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/flickr.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/google.gif.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/google.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/google.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/livejournal.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/livejournal.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/livejournal.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/livejournal.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/livejournal.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/livejournal.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/myopenid.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/myopenid.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/myopenid.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/myopenid.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/myopenid.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/myopenid.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/myopenid_big.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/myopenid_big.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/myopenid_big.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/openid-inputicon.gif.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/openid-inputicon.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/openid-inputicon.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/openid.gif.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/openid.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/openid.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/technorati.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/technorati.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/technorati.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/technorati.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/technorati.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/technorati.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/twitter.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/twitter.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/twitter.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/verisign.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/verisign.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/verisign.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/verisign.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/verisign.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/verisign.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/vidoop.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/vidoop.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/vidoop.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/wordpress.ico.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/wordpress.ico.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/wordpress.ico.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/wordpress.png.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/wordpress.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/wordpress.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/prop-base/yahoo.gif.svn-base b/forum/skins/light/media/images/openid/.svn/prop-base/yahoo.gif.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/openid/.svn/prop-base/yahoo.gif.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/openid/.svn/text-base/aol.gif.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/aol.gif.svn-base deleted file mode 100755 index 92373d5fb7f964fcf45245b4aa03f85eb25d6297..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/aol.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/aol.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/aol.png.svn-base deleted file mode 100755 index e5a51a8fd68d452ecab0e89c45fe404589bd9208..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/aol.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/blogger.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/blogger.ico.svn-base deleted file mode 100755 index 1b9730b01c3e60a396afa4193986b7ce800784a7..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/blogger.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/blogger.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/blogger.png.svn-base deleted file mode 100755 index 3c4681839f80b1092fe9d8d745a24dee1676a293..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/blogger.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/claimid.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/claimid.ico.svn-base deleted file mode 100755 index 2b80f49183c7c36fee4c4f9f0a82d4fd9950fcd5..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/claimid.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/claimid.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/claimid.png.svn-base deleted file mode 100755 index 441c0ed19504a98bcd4e50611eefd46e55043701..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/claimid.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/facebook.gif.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/facebook.gif.svn-base deleted file mode 100755 index 9a32529ba77668ac4a96d8175d05c27fd8caa7a4..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/facebook.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/flickr.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/flickr.ico.svn-base deleted file mode 100755 index 11f6e07f68446a858eb793ece7bd44dad957a8e3..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/flickr.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/flickr.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/flickr.png.svn-base deleted file mode 100755 index 6c443e1e536a6be39a599a1b9f280c17bd6e9f92..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/flickr.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/google.gif.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/google.gif.svn-base deleted file mode 100755 index be451e56d4b1236c6e231d994ec64fa6625193e4..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/google.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/livejournal.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/livejournal.ico.svn-base deleted file mode 100755 index f3d21ec5e8f629b77c77615982cef929802fbde4..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/livejournal.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/livejournal.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/livejournal.png.svn-base deleted file mode 100755 index 9f2f6dd8d5de00d094b0a153a53f0b5c6dd0dfce..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/livejournal.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/myopenid.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/myopenid.ico.svn-base deleted file mode 100755 index ceb06e6a3f0d88fb97cf10475a3062fb0edab33e..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/myopenid.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/myopenid.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/myopenid.png.svn-base deleted file mode 100755 index e5df78d03b39a7461a3a79a91901c25f154b9eba..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/myopenid.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/myopenid_big.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/myopenid_big.png.svn-base deleted file mode 100755 index 8c357cbe76eb8c10840070d8dfbe8e2fc24b8890..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/myopenid_big.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/openid-inputicon.gif.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/openid-inputicon.gif.svn-base deleted file mode 100755 index cde836c893f64bcfec04b9c817e3371ff122fe19..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/openid-inputicon.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/openid.gif.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/openid.gif.svn-base deleted file mode 100755 index c718b0e6f37012db6c9c10d9d21c4dea0d0c01bc..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/openid.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/technorati.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/technorati.ico.svn-base deleted file mode 100755 index fa1083c116527de7cdbf5897976aae8807fce878..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/technorati.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/technorati.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/technorati.png.svn-base deleted file mode 100755 index 7216641485277b5a26152a4b7b424913c61aa9c5..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/technorati.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/twitter.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/twitter.png.svn-base deleted file mode 100755 index 6178f9ccffe9eccc49f4627323c77fe20ff33fed..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/twitter.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/verisign.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/verisign.ico.svn-base deleted file mode 100755 index 3953af931987b0e66c122b338dc352502564eafd..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/verisign.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/verisign.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/verisign.png.svn-base deleted file mode 100755 index bc5c5f3e7fba6d7a1d5de5f52c311b5db174eebf..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/verisign.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/vidoop.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/vidoop.ico.svn-base deleted file mode 100755 index bbd9a0d50f83cba859fd46512873155397d548e1..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/vidoop.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/wordpress.ico.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/wordpress.ico.svn-base deleted file mode 100755 index 31b7d2c2b77c039342854190a90a8d8436992b47..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/wordpress.ico.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/wordpress.png.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/wordpress.png.svn-base deleted file mode 100755 index f2617056ba02bc3a9623b6f3df2cc1d480df8e01..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/wordpress.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/openid/.svn/text-base/yahoo.gif.svn-base b/forum/skins/light/media/images/openid/.svn/text-base/yahoo.gif.svn-base deleted file mode 100755 index 1ebaa7f46b541d1c57953b8042fa8759a0567d48..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/openid/.svn/text-base/yahoo.gif.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/viewbox/.svn/all-wcprops b/forum/skins/light/media/images/viewbox/.svn/all-wcprops deleted file mode 100755 index 407c9653642ae2c6a3aa034f1e392bb0123e4d15..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/viewbox/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox -END -ViewBox_prev.png -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/ViewBox_prev.png -END -ViewBox_next.png -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/ViewBox_next.png -END -viewbox_close.png -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/viewbox_close.png -END -ViewBox_bg.png -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/images/viewbox/ViewBox_bg.png -END diff --git a/forum/skins/light/media/images/viewbox/.svn/entries b/forum/skins/light/media/images/viewbox/.svn/entries deleted file mode 100755 index 73d00dc1203db662ba4a3af6519689e7e5578278..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/viewbox/.svn/entries +++ /dev/null @@ -1,164 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/images/viewbox -http://svn.osqa.net/svnroot - - - -2011-07-07T11:23:40.081495Z -1110 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -ViewBox_bg.png -file - - - - -2012-07-01T12:37:33.753376Z -258d71313fd5d9ff7c0926fa991ee1cc -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2808 - -ViewBox_prev.png -file - - - - -2012-07-01T12:37:33.753376Z -5302956881e54899269f66f6e5276d52 -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -418 - -ViewBox_next.png -file - - - - -2012-07-01T12:37:33.753376Z -73fae305da96577624e5aaad5635cdbb -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -458 - -viewbox_close.png -file - - - - -2012-07-01T12:37:33.753376Z -dff5a73e43116722d4bb498e172babb2 -2011-07-07T11:23:40.081495Z -1110 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3669 - diff --git a/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_bg.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_bg.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_bg.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_next.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_next.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_next.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_prev.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_prev.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/viewbox/.svn/prop-base/ViewBox_prev.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/viewbox/.svn/prop-base/viewbox_close.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/prop-base/viewbox_close.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/images/viewbox/.svn/prop-base/viewbox_close.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_bg.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_bg.png.svn-base deleted file mode 100755 index 396ed6dc48d5154161642fb9c5a2e3521929becf..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_bg.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_next.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_next.png.svn-base deleted file mode 100755 index 30ec82a8e5115d2650584dca2de2e0c85b9b59e3..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_next.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_prev.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_prev.png.svn-base deleted file mode 100755 index b5f25ab7f973d86f933c679577bdb2e70fe8b7b5..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/viewbox/.svn/text-base/ViewBox_prev.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/images/viewbox/.svn/text-base/viewbox_close.png.svn-base b/forum/skins/light/media/images/viewbox/.svn/text-base/viewbox_close.png.svn-base deleted file mode 100755 index 6595cc825ae8a0317334ddd39d4acf870df22bb0..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/images/viewbox/.svn/text-base/viewbox_close.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/.svn/all-wcprops b/forum/skins/light/media/js/.svn/all-wcprops deleted file mode 100755 index f8856b961aa43b302525b1b35444d2c15b69745a..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/all-wcprops +++ /dev/null @@ -1,197 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins/default/media/js -END -osqa.main.min.js -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/osqa.main.min.js -END -osqa.question.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/625/osqa/trunk/forum/skins/default/media/js/osqa.question.js -END -se_hilite_src.js -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/se_hilite_src.js -END -jquery-1.2.6.js -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery-1.2.6.js -END -jquery.validate.pack.js -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.validate.pack.js -END -yuicompressor-2.4.2.jar -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/yuicompressor-2.4.2.jar -END -compress.bat -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/compress.bat -END -ui.datepicker.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.datepicker.js -END -flot-build.bat -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/flot-build.bat -END -youtube.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1181/osqa/trunk/forum/skins/default/media/js/youtube.js -END -html_sanitizer.js -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/media/js/html_sanitizer.js -END -jquery.i18n.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.i18n.js -END -ZeroClipboard.js -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1023/osqa/trunk/forum/skins/default/media/js/ZeroClipboard.js -END -jquery-1.2.6.min.js -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery-1.2.6.min.js -END -ui.core.js -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.core.js -END -se_hilite.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/se_hilite.js -END -jquery.ajaxfileupload.js -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.ajaxfileupload.js -END -ui.datepicker.min.js -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.datepicker.min.js -END -jquery.caret.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1112/osqa/trunk/forum/skins/default/media/js/jquery.caret.js -END -osqa.ask.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/962/osqa/trunk/forum/skins/default/media/js/osqa.ask.js -END -jquery.form.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.form.js -END -ZeroClipboard.swf -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1023/osqa/trunk/forum/skins/default/media/js/ZeroClipboard.swf -END -jquery.flot.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.flot.js -END -viewbox_min.js -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1098/osqa/trunk/forum/skins/default/media/js/viewbox_min.js -END -ui.core.min.js -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/ui.core.min.js -END -osqa.main.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1268/osqa/trunk/forum/skins/default/media/js/osqa.main.js -END -effects.core.min.js -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/105/osqa/trunk/forum/skins/default/media/js/effects.core.min.js -END -osqa.admin.js -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/media/js/osqa.admin.js -END -excanvas.min.js -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/excanvas.min.js -END -jquery.openid.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/js/jquery.openid.js -END -viewbox.css -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1110/osqa/trunk/forum/skins/default/media/js/viewbox.css -END -jquery.flot.min.js -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/jquery.flot.min.js -END diff --git a/forum/skins/light/media/js/.svn/entries b/forum/skins/light/media/js/.svn/entries deleted file mode 100755 index a67b505b579e6b39407dfe870abbbda073dd35f0..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/entries +++ /dev/null @@ -1,1119 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/js -http://svn.osqa.net/svnroot - - - -2012-05-23T17:10:19.489673Z -1268 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -ui.datepicker.js -file - - - - -2012-07-01T12:37:36.157376Z -687dafabf91ae4b2d0d311584a539ece -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -69877 - -flot-build.bat -file - - - - -2012-07-01T12:37:36.157376Z -2211970b621d2c11730c5dabd0701044 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -106 - -youtube.js -file - - - - -2012-07-01T12:37:36.157376Z -75db759fc36f5e1271973b70eafe65a4 -2011-10-02T13:14:35.471432Z -1181 -jordan - - - - - - - - - - - - - - - - - - - - - -137 - -html_sanitizer.js -file - - - - -2012-07-01T12:37:36.157376Z -b418b3b0b406f0d633736a86cf8a8ffc -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -13108 - -jquery.i18n.js -file - - - - -2012-07-01T12:37:36.157376Z -8c06a8ee6a2165e854243e38f975da21 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -3062 - -ZeroClipboard.js -file - - - - -2012-07-01T12:37:36.157376Z -176c629b88458883f01abb4436c2df75 -2011-05-05T14:22:25.962919Z -1023 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -9784 - -jquery-1.2.6.min.js -file - - - - -2012-07-01T12:37:36.157376Z -a9331828c517ac5d97f93b3cfdbcc9bc -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -55774 - -ui.core.js -file - - - - -2012-07-01T12:37:36.157376Z -22214fe2b8e6c1a70cd41e5c3ae702ad -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -13932 - -se_hilite.js -file - - - - -2012-07-01T12:37:36.157376Z -fcad54a18febb07f02abccea199c1589 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -2859 - -jquery.ajaxfileupload.js -file - - - - -2012-07-01T12:37:36.157376Z -6234e2c9076329f9e63539fce92a0a3a -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -6905 - -ui.datepicker.min.js -file - - - - -2012-07-01T12:37:36.157376Z -e0fb084d7b4b54ee356befa48d8b1bda -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -44963 - -jquery.caret.js -file - - - - -2012-07-01T12:37:36.157376Z -ee130de5e6b9ae2be7579a5fd77f7b23 -2011-07-07T16:21:02.402736Z -1112 -jordan - - - - - - - - - - - - - - - - - - - - - -1444 - -wmd -dir - -osqa.ask.js -file - - - - -2012-07-01T12:37:36.157376Z -8142af7705172b560f3ea17adc99f9f2 -2011-04-11T10:37:28.261964Z -962 -hernani - - - - - - - - - - - - - - - - - - - - - -3186 - -jquery.form.js -file - - - - -2012-07-01T12:37:36.157376Z -0b57a3c48e7fa89dacc016b3356bccc2 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -20023 - -ZeroClipboard.swf -file - - - - -2012-07-01T12:37:36.157376Z -9f4401cdc4405d0730362256b4c04cc0 -2011-05-05T14:22:25.962919Z -1023 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1071 - -jquery.flot.js -file - - - - -2012-07-01T12:37:36.157376Z -950162fa054a49c4d82f55a76e2224ec -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -97807 - -viewbox_min.js -file - - - - -2012-07-01T12:37:36.157376Z -d4d9af46131f8f21acc3fdca682fb460 -2011-07-03T00:50:16.690242Z -1098 -jordan - - - - - - - - - - - - - - - - - - - - - -7960 - -ui.core.min.js -file - - - - -2012-07-01T12:37:36.157376Z -ec7d2e180b647f8ee80fd7370f340a0d -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -8104 - -osqa.main.js -file - - - - -2012-07-01T12:37:36.157376Z -24a0ac3a8c1d2ec48d040e8e8569f881 -2012-05-23T17:10:19.489673Z -1268 -jordan - - - - - - - - - - - - - - - - - - - - - -56691 - -effects.core.min.js -file - - - - -2012-07-01T12:37:36.157376Z -ff6b54debf0a2b2098ec64d1bb4832d3 -2010-04-30T16:12:49.806546Z -105 -qw3rty - - - - - - - - - - - - - - - - - - - - - -10765 - -osqa.admin.js -file - - - - -2012-07-01T12:37:36.161376Z -6f37c276c302858bd4251fb12ecfd55a -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -11716 - -excanvas.min.js -file - - - - -2012-07-01T12:37:36.161376Z -3682670784157eca627a91ae04f925b8 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -19415 - -jquery.openid.js -file - - - - -2012-07-01T12:37:36.161376Z -b953496cb2312c687fd39afe7aa4a820 -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -4987 - -viewbox.css -file - - - - -2012-07-01T12:37:36.161376Z -fdc66b1efc59752f66454ff9ac9e6fe6 -2011-07-07T11:23:40.081495Z -1110 -jordan - - - - - - - - - - - - - - - - - - - - - -2556 - -jquery.flot.min.js -file - - - - -2012-07-01T12:37:36.153376Z -894855595d743ec62595d0772f1424fe -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -32993 - -osqa.main.min.js -file - - - - -2012-07-01T12:37:36.153376Z -ee38b5bb6a3d6c3b1d946f4fbac0d856 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -27256 - -osqa.question.js -file - - - - -2012-07-01T12:37:36.153376Z -01db91ac7c69581af3ff23b625b0e65c -2010-12-22T22:39:53.714785Z -625 -jordan - - - - - - - - - - - - - - - - - - - - - -216 - -se_hilite_src.js -file - - - - -2012-07-01T12:37:36.153376Z -0ab594a326ae2ac3432bf11abb748945 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -8623 - -jquery-1.2.6.js -file - - - - -2012-07-01T12:37:36.153376Z -343607636acfee88faa2b638330a3370 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -100196 - -jquery.validate.pack.js -file - - - - -2012-07-01T12:37:36.157376Z -ec9b7babb354b383eeffacf23ceb9d91 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -14126 - -yuicompressor-2.4.2.jar -file - - - - -2012-07-01T12:37:36.157376Z -de7f9bf5ecb82166493ba7839f62a73e -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -851219 - -compress.bat -file - - - - -2012-07-01T12:37:36.157376Z -67edce1dc5a9a6d3b9230df337978a40 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -94 - diff --git a/forum/skins/light/media/js/.svn/prop-base/ZeroClipboard.js.svn-base b/forum/skins/light/media/js/.svn/prop-base/ZeroClipboard.js.svn-base deleted file mode 100755 index 869ac71cf7e4d72d9ab52f86d630c1c3f0c017ce..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/prop-base/ZeroClipboard.js.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -svn:executable -V 1 -* -END diff --git a/forum/skins/light/media/js/.svn/prop-base/ZeroClipboard.swf.svn-base b/forum/skins/light/media/js/.svn/prop-base/ZeroClipboard.swf.svn-base deleted file mode 100755 index dbc918b06c1c8d7c24f3b9fa6b1d1e424817309d..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/prop-base/ZeroClipboard.swf.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 14 -svn:executable -V 1 -* -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/.svn/prop-base/yuicompressor-2.4.2.jar.svn-base b/forum/skins/light/media/js/.svn/prop-base/yuicompressor-2.4.2.jar.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/prop-base/yuicompressor-2.4.2.jar.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/.svn/text-base/ZeroClipboard.js.svn-base b/forum/skins/light/media/js/.svn/text-base/ZeroClipboard.js.svn-base deleted file mode 100755 index 5adde951082116f039d3a4dae9a9294ae29e571f..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/ZeroClipboard.js.svn-base +++ /dev/null @@ -1,311 +0,0 @@ -// Simple Set Clipboard System -// Author: Joseph Huckaby - -var ZeroClipboard = { - - version: "1.0.7", - clients: {}, // registered upload clients on page, indexed by id - moviePath: 'ZeroClipboard.swf', // URL to movie - nextId: 1, // ID of next movie - - $: function(thingy) { - // simple DOM lookup utility function - if (typeof(thingy) == 'string') thingy = document.getElementById(thingy); - if (!thingy.addClass) { - // extend element with a few useful methods - thingy.hide = function() { this.style.display = 'none'; }; - thingy.show = function() { this.style.display = ''; }; - thingy.addClass = function(name) { this.removeClass(name); this.className += ' ' + name; }; - thingy.removeClass = function(name) { - var classes = this.className.split(/\s+/); - var idx = -1; - for (var k = 0; k < classes.length; k++) { - if (classes[k] == name) { idx = k; k = classes.length; } - } - if (idx > -1) { - classes.splice( idx, 1 ); - this.className = classes.join(' '); - } - return this; - }; - thingy.hasClass = function(name) { - return !!this.className.match( new RegExp("\\s*" + name + "\\s*") ); - }; - } - return thingy; - }, - - setMoviePath: function(path) { - // set path to ZeroClipboard.swf - this.moviePath = path; - }, - - dispatch: function(id, eventName, args) { - // receive event from flash movie, send to client - var client = this.clients[id]; - if (client) { - client.receiveEvent(eventName, args); - } - }, - - register: function(id, client) { - // register new client to receive events - this.clients[id] = client; - }, - - getDOMObjectPosition: function(obj, stopObj) { - // get absolute coordinates for dom element - var info = { - left: 0, - top: 0, - width: obj.width ? obj.width : obj.offsetWidth, - height: obj.height ? obj.height : obj.offsetHeight - }; - - while (obj && (obj != stopObj)) { - info.left += obj.offsetLeft; - info.top += obj.offsetTop; - obj = obj.offsetParent; - } - - return info; - }, - - Client: function(elem) { - // constructor for new simple upload client - this.handlers = {}; - - // unique ID - this.id = ZeroClipboard.nextId++; - this.movieId = 'ZeroClipboardMovie_' + this.id; - - // register client with singleton to receive flash events - ZeroClipboard.register(this.id, this); - - // create movie - if (elem) this.glue(elem); - } -}; - -ZeroClipboard.Client.prototype = { - - id: 0, // unique ID for us - ready: false, // whether movie is ready to receive events or not - movie: null, // reference to movie object - clipText: '', // text to copy to clipboard - handCursorEnabled: true, // whether to show hand cursor, or default pointer cursor - cssEffects: true, // enable CSS mouse effects on dom container - handlers: null, // user event handlers - - glue: function(elem, appendElem, stylesToAdd) { - // glue to DOM element - // elem can be ID or actual DOM element object - this.domElement = ZeroClipboard.$(elem); - - // float just above object, or zIndex 99 if dom element isn't set - var zIndex = 99; - if (this.domElement.style.zIndex) { - zIndex = parseInt(this.domElement.style.zIndex, 10) + 1; - } - - if (typeof(appendElem) == 'string') { - appendElem = ZeroClipboard.$(appendElem); - } - else if (typeof(appendElem) == 'undefined') { - appendElem = document.getElementsByTagName('body')[0]; - } - - // find X/Y position of domElement - var box = ZeroClipboard.getDOMObjectPosition(this.domElement, appendElem); - - // create floating DIV above element - this.div = document.createElement('div'); - var style = this.div.style; - style.position = 'absolute'; - style.left = '' + box.left + 'px'; - style.top = '' + box.top + 'px'; - style.width = '' + box.width + 'px'; - style.height = '' + box.height + 'px'; - style.zIndex = zIndex; - - if (typeof(stylesToAdd) == 'object') { - for (addedStyle in stylesToAdd) { - style[addedStyle] = stylesToAdd[addedStyle]; - } - } - - // style.backgroundColor = '#f00'; // debug - - appendElem.appendChild(this.div); - - this.div.innerHTML = this.getHTML( box.width, box.height ); - }, - - getHTML: function(width, height) { - // return HTML for movie - var html = ''; - var flashvars = 'id=' + this.id + - '&width=' + width + - '&height=' + height; - - if (navigator.userAgent.match(/MSIE/)) { - // IE gets an OBJECT tag - var protocol = location.href.match(/^https/i) ? 'https://' : 'http://'; - html += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="'+protocol+'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+width+'" height="'+height+'" id="'+this.movieId+'" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="movie" value="'+ZeroClipboard.moviePath+'" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="'+flashvars+'"/><param name="wmode" value="transparent"/></object>'; - } - else { - // all other browsers get an EMBED tag - html += '<embed id="'+this.movieId+'" src="'+ZeroClipboard.moviePath+'" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="'+width+'" height="'+height+'" name="'+this.movieId+'" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="'+flashvars+'" wmode="transparent" />'; - } - return html; - }, - - hide: function() { - // temporarily hide floater offscreen - if (this.div) { - this.div.style.left = '-2000px'; - } - }, - - show: function() { - // show ourselves after a call to hide() - this.reposition(); - }, - - destroy: function() { - // destroy control and floater - if (this.domElement && this.div) { - this.hide(); - this.div.innerHTML = ''; - - var body = document.getElementsByTagName('body')[0]; - try { body.removeChild( this.div ); } catch(e) {;} - - this.domElement = null; - this.div = null; - } - }, - - reposition: function(elem) { - // reposition our floating div, optionally to new container - // warning: container CANNOT change size, only position - if (elem) { - this.domElement = ZeroClipboard.$(elem); - if (!this.domElement) this.hide(); - } - - if (this.domElement && this.div) { - var box = ZeroClipboard.getDOMObjectPosition(this.domElement); - var style = this.div.style; - style.left = '' + box.left + 'px'; - style.top = '' + box.top + 'px'; - } - }, - - setText: function(newText) { - // set text to be copied to clipboard - this.clipText = newText; - if (this.ready) this.movie.setText(newText); - }, - - addEventListener: function(eventName, func) { - // add user event listener for event - // event types: load, queueStart, fileStart, fileComplete, queueComplete, progress, error, cancel - eventName = eventName.toString().toLowerCase().replace(/^on/, ''); - if (!this.handlers[eventName]) this.handlers[eventName] = []; - this.handlers[eventName].push(func); - }, - - setHandCursor: function(enabled) { - // enable hand cursor (true), or default arrow cursor (false) - this.handCursorEnabled = enabled; - if (this.ready) this.movie.setHandCursor(enabled); - }, - - setCSSEffects: function(enabled) { - // enable or disable CSS effects on DOM container - this.cssEffects = !!enabled; - }, - - receiveEvent: function(eventName, args) { - // receive event from flash - eventName = eventName.toString().toLowerCase().replace(/^on/, ''); - - // special behavior for certain events - switch (eventName) { - case 'load': - // movie claims it is ready, but in IE this isn't always the case... - // bug fix: Cannot extend EMBED DOM elements in Firefox, must use traditional function - this.movie = document.getElementById(this.movieId); - if (!this.movie) { - var self = this; - setTimeout( function() { self.receiveEvent('load', null); }, 1 ); - return; - } - - // firefox on pc needs a "kick" in order to set these in certain cases - if (!this.ready && navigator.userAgent.match(/Firefox/) && navigator.userAgent.match(/Windows/)) { - var self = this; - setTimeout( function() { self.receiveEvent('load', null); }, 100 ); - this.ready = true; - return; - } - - this.ready = true; - this.movie.setText( this.clipText ); - this.movie.setHandCursor( this.handCursorEnabled ); - break; - - case 'mouseover': - if (this.domElement && this.cssEffects) { - this.domElement.addClass('hover'); - if (this.recoverActive) this.domElement.addClass('active'); - } - break; - - case 'mouseout': - if (this.domElement && this.cssEffects) { - this.recoverActive = false; - if (this.domElement.hasClass('active')) { - this.domElement.removeClass('active'); - this.recoverActive = true; - } - this.domElement.removeClass('hover'); - } - break; - - case 'mousedown': - if (this.domElement && this.cssEffects) { - this.domElement.addClass('active'); - } - break; - - case 'mouseup': - if (this.domElement && this.cssEffects) { - this.domElement.removeClass('active'); - this.recoverActive = false; - } - break; - } // switch eventName - - if (this.handlers[eventName]) { - for (var idx = 0, len = this.handlers[eventName].length; idx < len; idx++) { - var func = this.handlers[eventName][idx]; - - if (typeof(func) == 'function') { - // actual function reference - func(this, args); - } - else if ((typeof(func) == 'object') && (func.length == 2)) { - // PHP style object + method, i.e. [myObject, 'myMethod'] - func[0][ func[1] ](this, args); - } - else if (typeof(func) == 'string') { - // name of function - window[func](this, args); - } - } // foreach event handler defined - } // user defined handler for event - } - -}; diff --git a/forum/skins/light/media/js/.svn/text-base/ZeroClipboard.swf.svn-base b/forum/skins/light/media/js/.svn/text-base/ZeroClipboard.swf.svn-base deleted file mode 100755 index 13bf8e396202964e0048333d878f4b949a2f5e6a..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/.svn/text-base/ZeroClipboard.swf.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/.svn/text-base/compress.bat.svn-base b/forum/skins/light/media/js/.svn/text-base/compress.bat.svn-base deleted file mode 100755 index f6f2a4fe098384e5c1ffb287ab1eb634883498ff..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/compress.bat.svn-base +++ /dev/null @@ -1 +0,0 @@ -java -jar yuicompressor-2.4.2.jar --type js --charset utf-8 osqa.main.js -o osqa.main.min.js diff --git a/forum/skins/light/media/js/.svn/text-base/effects.core.min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/effects.core.min.js.svn-base deleted file mode 100755 index 0a1d6d4a193354baee6ecfa315867437ace5f880..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/effects.core.min.js.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Effects 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/ - */ -jQuery.effects||(function(d){d.effects={version:"1.7.2",save:function(g,h){for(var f=0;f<h.length;f++){if(h[f]!==null){g.data("ec.storage."+h[f],g[0].style[h[f]])}}},restore:function(g,h){for(var f=0;f<h.length;f++){if(h[f]!==null){g.css(h[f],g.data("ec.storage."+h[f]))}}},setMode:function(f,g){if(g=="toggle"){g=f.is(":hidden")?"show":"hide"}return g},getBaseline:function(g,h){var i,f;switch(g[0]){case"top":i=0;break;case"middle":i=0.5;break;case"bottom":i=1;break;default:i=g[0]/h.height}switch(g[1]){case"left":f=0;break;case"center":f=0.5;break;case"right":f=1;break;default:f=g[1]/h.width}return{x:f,y:i}},createWrapper:function(f){if(f.parent().is(".ui-effects-wrapper")){return f.parent()}var g={width:f.outerWidth(true),height:f.outerHeight(true),"float":f.css("float")};f.wrap('<div class="ui-effects-wrapper" style="font-size:100%;background:transparent;border:none;margin:0;padding:0"></div>');var j=f.parent();if(f.css("position")=="static"){j.css({position:"relative"});f.css({position:"relative"})}else{var i=f.css("top");if(isNaN(parseInt(i,10))){i="auto"}var h=f.css("left");if(isNaN(parseInt(h,10))){h="auto"}j.css({position:f.css("position"),top:i,left:h,zIndex:f.css("z-index")}).show();f.css({position:"relative",top:0,left:0})}j.css(g);return j},removeWrapper:function(f){if(f.parent().is(".ui-effects-wrapper")){return f.parent().replaceWith(f)}return f},setTransition:function(g,i,f,h){h=h||{};d.each(i,function(k,j){unit=g.cssUnit(j);if(unit[0]>0){h[j]=unit[0]*f+unit[1]}});return h},animateClass:function(h,i,k,j){var f=(typeof k=="function"?k:(j?j:null));var g=(typeof k=="string"?k:null);return this.each(function(){var q={};var o=d(this);var p=o.attr("style")||"";if(typeof p=="object"){p=p.cssText}if(h.toggle){o.hasClass(h.toggle)?h.remove=h.toggle:h.add=h.toggle}var l=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.addClass(h.add)}if(h.remove){o.removeClass(h.remove)}var m=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.removeClass(h.add)}if(h.remove){o.addClass(h.remove)}for(var r in m){if(typeof m[r]!="function"&&m[r]&&r.indexOf("Moz")==-1&&r.indexOf("length")==-1&&m[r]!=l[r]&&(r.match(/color/i)||(!r.match(/color/i)&&!isNaN(parseInt(m[r],10))))&&(l.position!="static"||(l.position=="static"&&!r.match(/left|top|bottom|right/)))){q[r]=m[r]}}o.animate(q,i,g,function(){if(typeof d(this).attr("style")=="object"){d(this).attr("style")["cssText"]="";d(this).attr("style")["cssText"]=p}else{d(this).attr("style",p)}if(h.add){d(this).addClass(h.add)}if(h.remove){d(this).removeClass(h.remove)}if(f){f.apply(this,arguments)}})})}};function c(g,f){var i=g[1]&&g[1].constructor==Object?g[1]:{};if(f){i.mode=f}var h=g[1]&&g[1].constructor!=Object?g[1]:(i.duration?i.duration:g[2]);h=d.fx.off?0:typeof h==="number"?h:d.fx.speeds[h]||d.fx.speeds._default;var j=i.callback||(d.isFunction(g[1])&&g[1])||(d.isFunction(g[2])&&g[2])||(d.isFunction(g[3])&&g[3]);return[g[0],i,h,j]}d.fn.extend({_show:d.fn.show,_hide:d.fn.hide,__toggle:d.fn.toggle,_addClass:d.fn.addClass,_removeClass:d.fn.removeClass,_toggleClass:d.fn.toggleClass,effect:function(g,f,h,i){return d.effects[g]?d.effects[g].call(this,{method:g,options:f||{},duration:h,callback:i}):null},show:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._show.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"show"))}},hide:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._hide.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"hide"))}},toggle:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))||(d.isFunction(arguments[0])||typeof arguments[0]=="boolean")){return this.__toggle.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"toggle"))}},addClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{add:g},f,i,h]):this._addClass(g)},removeClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{remove:g},f,i,h]):this._removeClass(g)},toggleClass:function(g,f,i,h){return((typeof f!=="boolean")&&f)?d.effects.animateClass.apply(this,[{toggle:g},f,i,h]):this._toggleClass(g,f)},morph:function(f,h,g,j,i){return d.effects.animateClass.apply(this,[{add:h,remove:f},g,j,i])},switchClass:function(){return this.morph.apply(this,arguments)},cssUnit:function(f){var g=this.css(f),h=[];d.each(["em","px","%","pt"],function(j,k){if(g.indexOf(k)>0){h=[parseFloat(g),k]}});return h}});d.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(g,f){d.fx.step[f]=function(h){if(h.state==0){h.start=e(h.elem,f);h.end=b(h.end)}h.elem.style[f]="rgb("+[Math.max(Math.min(parseInt((h.pos*(h.end[0]-h.start[0]))+h.start[0],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[1]-h.start[1]))+h.start[1],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[2]-h.start[2]))+h.start[2],10),255),0)].join(",")+")"}});function b(g){var f;if(g&&g.constructor==Array&&g.length==3){return g}if(f=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(g)){return[parseInt(f[1],10),parseInt(f[2],10),parseInt(f[3],10)]}if(f=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(g)){return[parseFloat(f[1])*2.55,parseFloat(f[2])*2.55,parseFloat(f[3])*2.55]}if(f=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(g)){return[parseInt(f[1],16),parseInt(f[2],16),parseInt(f[3],16)]}if(f=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(g)){return[parseInt(f[1]+f[1],16),parseInt(f[2]+f[2],16),parseInt(f[3]+f[3],16)]}if(f=/rgba\(0, 0, 0, 0\)/.exec(g)){return a.transparent}return a[d.trim(g).toLowerCase()]}function e(h,f){var g;do{g=d.curCSS(h,f);if(g!=""&&g!="transparent"||d.nodeName(h,"body")){break}f="backgroundColor"}while(h=h.parentNode);return b(g)}var a={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]};d.easing.jswing=d.easing.swing;d.extend(d.easing,{def:"easeOutQuad",swing:function(g,h,f,j,i){return d.easing[d.easing.def](g,h,f,j,i)},easeInQuad:function(g,h,f,j,i){return j*(h/=i)*h+f},easeOutQuad:function(g,h,f,j,i){return -j*(h/=i)*(h-2)+f},easeInOutQuad:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h+f}return -j/2*((--h)*(h-2)-1)+f},easeInCubic:function(g,h,f,j,i){return j*(h/=i)*h*h+f},easeOutCubic:function(g,h,f,j,i){return j*((h=h/i-1)*h*h+1)+f},easeInOutCubic:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h+f}return j/2*((h-=2)*h*h+2)+f},easeInQuart:function(g,h,f,j,i){return j*(h/=i)*h*h*h+f},easeOutQuart:function(g,h,f,j,i){return -j*((h=h/i-1)*h*h*h-1)+f},easeInOutQuart:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h+f}return -j/2*((h-=2)*h*h*h-2)+f},easeInQuint:function(g,h,f,j,i){return j*(h/=i)*h*h*h*h+f},easeOutQuint:function(g,h,f,j,i){return j*((h=h/i-1)*h*h*h*h+1)+f},easeInOutQuint:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h*h+f}return j/2*((h-=2)*h*h*h*h+2)+f},easeInSine:function(g,h,f,j,i){return -j*Math.cos(h/i*(Math.PI/2))+j+f},easeOutSine:function(g,h,f,j,i){return j*Math.sin(h/i*(Math.PI/2))+f},easeInOutSine:function(g,h,f,j,i){return -j/2*(Math.cos(Math.PI*h/i)-1)+f},easeInExpo:function(g,h,f,j,i){return(h==0)?f:j*Math.pow(2,10*(h/i-1))+f},easeOutExpo:function(g,h,f,j,i){return(h==i)?f+j:j*(-Math.pow(2,-10*h/i)+1)+f},easeInOutExpo:function(g,h,f,j,i){if(h==0){return f}if(h==i){return f+j}if((h/=i/2)<1){return j/2*Math.pow(2,10*(h-1))+f}return j/2*(-Math.pow(2,-10*--h)+2)+f},easeInCirc:function(g,h,f,j,i){return -j*(Math.sqrt(1-(h/=i)*h)-1)+f},easeOutCirc:function(g,h,f,j,i){return j*Math.sqrt(1-(h=h/i-1)*h)+f},easeInOutCirc:function(g,h,f,j,i){if((h/=i/2)<1){return -j/2*(Math.sqrt(1-h*h)-1)+f}return j/2*(Math.sqrt(1-(h-=2)*h)+1)+f},easeInElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l)==1){return f+m}if(!k){k=l*0.3}if(h<Math.abs(m)){h=m;var j=k/4}else{var j=k/(2*Math.PI)*Math.asin(m/h)}return -(h*Math.pow(2,10*(i-=1))*Math.sin((i*l-j)*(2*Math.PI)/k))+f},easeOutElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l)==1){return f+m}if(!k){k=l*0.3}if(h<Math.abs(m)){h=m;var j=k/4}else{var j=k/(2*Math.PI)*Math.asin(m/h)}return h*Math.pow(2,-10*i)*Math.sin((i*l-j)*(2*Math.PI)/k)+m+f},easeInOutElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l/2)==2){return f+m}if(!k){k=l*(0.3*1.5)}if(h<Math.abs(m)){h=m;var j=k/4}else{var j=k/(2*Math.PI)*Math.asin(m/h)}if(i<1){return -0.5*(h*Math.pow(2,10*(i-=1))*Math.sin((i*l-j)*(2*Math.PI)/k))+f}return h*Math.pow(2,-10*(i-=1))*Math.sin((i*l-j)*(2*Math.PI)/k)*0.5+m+f},easeInBack:function(g,h,f,k,j,i){if(i==undefined){i=1.70158}return k*(h/=j)*h*((i+1)*h-i)+f},easeOutBack:function(g,h,f,k,j,i){if(i==undefined){i=1.70158}return k*((h=h/j-1)*h*((i+1)*h+i)+1)+f},easeInOutBack:function(g,h,f,k,j,i){if(i==undefined){i=1.70158}if((h/=j/2)<1){return k/2*(h*h*(((i*=(1.525))+1)*h-i))+f}return k/2*((h-=2)*h*(((i*=(1.525))+1)*h+i)+2)+f},easeInBounce:function(g,h,f,j,i){return j-d.easing.easeOutBounce(g,i-h,0,j,i)+f},easeOutBounce:function(g,h,f,j,i){if((h/=i)<(1/2.75)){return j*(7.5625*h*h)+f}else{if(h<(2/2.75)){return j*(7.5625*(h-=(1.5/2.75))*h+0.75)+f}else{if(h<(2.5/2.75)){return j*(7.5625*(h-=(2.25/2.75))*h+0.9375)+f}else{return j*(7.5625*(h-=(2.625/2.75))*h+0.984375)+f}}}},easeInOutBounce:function(g,h,f,j,i){if(h<i/2){return d.easing.easeInBounce(g,h*2,0,j,i)*0.5+f}return d.easing.easeOutBounce(g,h*2-i,0,j,i)*0.5+j*0.5+f}})})(jQuery); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/excanvas.min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/excanvas.min.js.svn-base deleted file mode 100755 index 12c74f7bea844f60953021cadc8468297712f0df..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/excanvas.min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -if(!document.createElement("canvas").getContext){(function(){var z=Math;var K=z.round;var J=z.sin;var U=z.cos;var b=z.abs;var k=z.sqrt;var D=10;var F=D/2;function T(){return this.context_||(this.context_=new W(this))}var O=Array.prototype.slice;function G(i,j,m){var Z=O.call(arguments,2);return function(){return i.apply(j,Z.concat(O.call(arguments)))}}function AD(Z){return String(Z).replace(/&/g,"&").replace(/"/g,""")}function r(i){if(!i.namespaces.g_vml_){i.namespaces.add("g_vml_","urn:schemas-microsoft-com:vml","#default#VML")}if(!i.namespaces.g_o_){i.namespaces.add("g_o_","urn:schemas-microsoft-com:office:office","#default#VML")}if(!i.styleSheets.ex_canvas_){var Z=i.createStyleSheet();Z.owningElement.id="ex_canvas_";Z.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}r(document);var E={init:function(Z){if(/MSIE/.test(navigator.userAgent)&&!window.opera){var i=Z||document;i.createElement("canvas");i.attachEvent("onreadystatechange",G(this.init_,this,i))}},init_:function(m){var j=m.getElementsByTagName("canvas");for(var Z=0;Z<j.length;Z++){this.initElement(j[Z])}},initElement:function(i){if(!i.getContext){i.getContext=T;r(i.ownerDocument);i.innerHTML="";i.attachEvent("onpropertychange",S);i.attachEvent("onresize",w);var Z=i.attributes;if(Z.width&&Z.width.specified){i.style.width=Z.width.nodeValue+"px"}else{i.width=i.clientWidth}if(Z.height&&Z.height.specified){i.style.height=Z.height.nodeValue+"px"}else{i.height=i.clientHeight}}return i}};function S(i){var Z=i.srcElement;switch(i.propertyName){case"width":Z.getContext().clearRect();Z.style.width=Z.attributes.width.nodeValue+"px";Z.firstChild.style.width=Z.clientWidth+"px";break;case"height":Z.getContext().clearRect();Z.style.height=Z.attributes.height.nodeValue+"px";Z.firstChild.style.height=Z.clientHeight+"px";break}}function w(i){var Z=i.srcElement;if(Z.firstChild){Z.firstChild.style.width=Z.clientWidth+"px";Z.firstChild.style.height=Z.clientHeight+"px"}}E.init();var I=[];for(var AC=0;AC<16;AC++){for(var AB=0;AB<16;AB++){I[AC*16+AB]=AC.toString(16)+AB.toString(16)}}function V(){return[[1,0,0],[0,1,0],[0,0,1]]}function d(m,j){var i=V();for(var Z=0;Z<3;Z++){for(var AF=0;AF<3;AF++){var p=0;for(var AE=0;AE<3;AE++){p+=m[Z][AE]*j[AE][AF]}i[Z][AF]=p}}return i}function Q(i,Z){Z.fillStyle=i.fillStyle;Z.lineCap=i.lineCap;Z.lineJoin=i.lineJoin;Z.lineWidth=i.lineWidth;Z.miterLimit=i.miterLimit;Z.shadowBlur=i.shadowBlur;Z.shadowColor=i.shadowColor;Z.shadowOffsetX=i.shadowOffsetX;Z.shadowOffsetY=i.shadowOffsetY;Z.strokeStyle=i.strokeStyle;Z.globalAlpha=i.globalAlpha;Z.font=i.font;Z.textAlign=i.textAlign;Z.textBaseline=i.textBaseline;Z.arcScaleX_=i.arcScaleX_;Z.arcScaleY_=i.arcScaleY_;Z.lineScale_=i.lineScale_}var B={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",grey:"#808080",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",oldlace:"#FDF5E6",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",whitesmoke:"#F5F5F5",yellowgreen:"#9ACD32"};function g(i){var m=i.indexOf("(",3);var Z=i.indexOf(")",m+1);var j=i.substring(m+1,Z).split(",");if(j.length==4&&i.substr(3,1)=="a"){alpha=Number(j[3])}else{j[3]=1}return j}function C(Z){return parseFloat(Z)/100}function N(i,j,Z){return Math.min(Z,Math.max(j,i))}function c(AF){var j,i,Z;h=parseFloat(AF[0])/360%360;if(h<0){h++}s=N(C(AF[1]),0,1);l=N(C(AF[2]),0,1);if(s==0){j=i=Z=l}else{var m=l<0.5?l*(1+s):l+s-l*s;var AE=2*l-m;j=A(AE,m,h+1/3);i=A(AE,m,h);Z=A(AE,m,h-1/3)}return"#"+I[Math.floor(j*255)]+I[Math.floor(i*255)]+I[Math.floor(Z*255)]}function A(i,Z,j){if(j<0){j++}if(j>1){j--}if(6*j<1){return i+(Z-i)*6*j}else{if(2*j<1){return Z}else{if(3*j<2){return i+(Z-i)*(2/3-j)*6}else{return i}}}}function Y(Z){var AE,p=1;Z=String(Z);if(Z.charAt(0)=="#"){AE=Z}else{if(/^rgb/.test(Z)){var m=g(Z);var AE="#",AF;for(var j=0;j<3;j++){if(m[j].indexOf("%")!=-1){AF=Math.floor(C(m[j])*255)}else{AF=Number(m[j])}AE+=I[N(AF,0,255)]}p=m[3]}else{if(/^hsl/.test(Z)){var m=g(Z);AE=c(m);p=m[3]}else{AE=B[Z]||Z}}}return{color:AE,alpha:p}}var L={style:"normal",variant:"normal",weight:"normal",size:10,family:"sans-serif"};var f={};function X(Z){if(f[Z]){return f[Z]}var m=document.createElement("div");var j=m.style;try{j.font=Z}catch(i){}return f[Z]={style:j.fontStyle||L.style,variant:j.fontVariant||L.variant,weight:j.fontWeight||L.weight,size:j.fontSize||L.size,family:j.fontFamily||L.family}}function P(j,i){var Z={};for(var AF in j){Z[AF]=j[AF]}var AE=parseFloat(i.currentStyle.fontSize),m=parseFloat(j.size);if(typeof j.size=="number"){Z.size=j.size}else{if(j.size.indexOf("px")!=-1){Z.size=m}else{if(j.size.indexOf("em")!=-1){Z.size=AE*m}else{if(j.size.indexOf("%")!=-1){Z.size=(AE/100)*m}else{if(j.size.indexOf("pt")!=-1){Z.size=m/0.75}else{Z.size=AE}}}}}Z.size*=0.981;return Z}function AA(Z){return Z.style+" "+Z.variant+" "+Z.weight+" "+Z.size+"px "+Z.family}function t(Z){switch(Z){case"butt":return"flat";case"round":return"round";case"square":default:return"square"}}function W(i){this.m_=V();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=D*1;this.globalAlpha=1;this.font="10px sans-serif";this.textAlign="left";this.textBaseline="alphabetic";this.canvas=i;var Z=i.ownerDocument.createElement("div");Z.style.width=i.clientWidth+"px";Z.style.height=i.clientHeight+"px";Z.style.overflow="hidden";Z.style.position="absolute";i.appendChild(Z);this.element_=Z;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var M=W.prototype;M.clearRect=function(){if(this.textMeasureEl_){this.textMeasureEl_.removeNode(true);this.textMeasureEl_=null}this.element_.innerHTML=""};M.beginPath=function(){this.currentPath_=[]};M.moveTo=function(i,Z){var j=this.getCoords_(i,Z);this.currentPath_.push({type:"moveTo",x:j.x,y:j.y});this.currentX_=j.x;this.currentY_=j.y};M.lineTo=function(i,Z){var j=this.getCoords_(i,Z);this.currentPath_.push({type:"lineTo",x:j.x,y:j.y});this.currentX_=j.x;this.currentY_=j.y};M.bezierCurveTo=function(j,i,AI,AH,AG,AE){var Z=this.getCoords_(AG,AE);var AF=this.getCoords_(j,i);var m=this.getCoords_(AI,AH);e(this,AF,m,Z)};function e(Z,m,j,i){Z.currentPath_.push({type:"bezierCurveTo",cp1x:m.x,cp1y:m.y,cp2x:j.x,cp2y:j.y,x:i.x,y:i.y});Z.currentX_=i.x;Z.currentY_=i.y}M.quadraticCurveTo=function(AG,j,i,Z){var AF=this.getCoords_(AG,j);var AE=this.getCoords_(i,Z);var AH={x:this.currentX_+2/3*(AF.x-this.currentX_),y:this.currentY_+2/3*(AF.y-this.currentY_)};var m={x:AH.x+(AE.x-this.currentX_)/3,y:AH.y+(AE.y-this.currentY_)/3};e(this,AH,m,AE)};M.arc=function(AJ,AH,AI,AE,i,j){AI*=D;var AN=j?"at":"wa";var AK=AJ+U(AE)*AI-F;var AM=AH+J(AE)*AI-F;var Z=AJ+U(i)*AI-F;var AL=AH+J(i)*AI-F;if(AK==Z&&!j){AK+=0.125}var m=this.getCoords_(AJ,AH);var AG=this.getCoords_(AK,AM);var AF=this.getCoords_(Z,AL);this.currentPath_.push({type:AN,x:m.x,y:m.y,radius:AI,xStart:AG.x,yStart:AG.y,xEnd:AF.x,yEnd:AF.y})};M.rect=function(j,i,Z,m){this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath()};M.strokeRect=function(j,i,Z,m){var p=this.currentPath_;this.beginPath();this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath();this.stroke();this.currentPath_=p};M.fillRect=function(j,i,Z,m){var p=this.currentPath_;this.beginPath();this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath();this.fill();this.currentPath_=p};M.createLinearGradient=function(i,m,Z,j){var p=new v("gradient");p.x0_=i;p.y0_=m;p.x1_=Z;p.y1_=j;return p};M.createRadialGradient=function(m,AE,j,i,p,Z){var AF=new v("gradientradial");AF.x0_=m;AF.y0_=AE;AF.r0_=j;AF.x1_=i;AF.y1_=p;AF.r1_=Z;return AF};M.drawImage=function(AO,j){var AH,AF,AJ,AV,AM,AK,AQ,AX;var AI=AO.runtimeStyle.width;var AN=AO.runtimeStyle.height;AO.runtimeStyle.width="auto";AO.runtimeStyle.height="auto";var AG=AO.width;var AT=AO.height;AO.runtimeStyle.width=AI;AO.runtimeStyle.height=AN;if(arguments.length==3){AH=arguments[1];AF=arguments[2];AM=AK=0;AQ=AJ=AG;AX=AV=AT}else{if(arguments.length==5){AH=arguments[1];AF=arguments[2];AJ=arguments[3];AV=arguments[4];AM=AK=0;AQ=AG;AX=AT}else{if(arguments.length==9){AM=arguments[1];AK=arguments[2];AQ=arguments[3];AX=arguments[4];AH=arguments[5];AF=arguments[6];AJ=arguments[7];AV=arguments[8]}else{throw Error("Invalid number of arguments")}}}var AW=this.getCoords_(AH,AF);var m=AQ/2;var i=AX/2;var AU=[];var Z=10;var AE=10;AU.push(" <g_vml_:group",' coordsize="',D*Z,",",D*AE,'"',' coordorigin="0,0"',' style="width:',Z,"px;height:",AE,"px;position:absolute;");if(this.m_[0][0]!=1||this.m_[0][1]||this.m_[1][1]!=1||this.m_[1][0]){var p=[];p.push("M11=",this.m_[0][0],",","M12=",this.m_[1][0],",","M21=",this.m_[0][1],",","M22=",this.m_[1][1],",","Dx=",K(AW.x/D),",","Dy=",K(AW.y/D),"");var AS=AW;var AR=this.getCoords_(AH+AJ,AF);var AP=this.getCoords_(AH,AF+AV);var AL=this.getCoords_(AH+AJ,AF+AV);AS.x=z.max(AS.x,AR.x,AP.x,AL.x);AS.y=z.max(AS.y,AR.y,AP.y,AL.y);AU.push("padding:0 ",K(AS.x/D),"px ",K(AS.y/D),"px 0;filter:progid:DXImageTransform.Microsoft.Matrix(",p.join(""),", sizingmethod='clip');")}else{AU.push("top:",K(AW.y/D),"px;left:",K(AW.x/D),"px;")}AU.push(' ">','<g_vml_:image src="',AO.src,'"',' style="width:',D*AJ,"px;"," height:",D*AV,'px"',' cropleft="',AM/AG,'"',' croptop="',AK/AT,'"',' cropright="',(AG-AM-AQ)/AG,'"',' cropbottom="',(AT-AK-AX)/AT,'"'," />","</g_vml_:group>");this.element_.insertAdjacentHTML("BeforeEnd",AU.join(""))};M.stroke=function(AM){var m=10;var AN=10;var AE=5000;var AG={x:null,y:null};var AL={x:null,y:null};for(var AH=0;AH<this.currentPath_.length;AH+=AE){var AK=[];var AF=false;AK.push("<g_vml_:shape",' filled="',!!AM,'"',' style="position:absolute;width:',m,"px;height:",AN,'px;"',' coordorigin="0,0"',' coordsize="',D*m,",",D*AN,'"',' stroked="',!AM,'"',' path="');var AO=false;for(var AI=AH;AI<Math.min(AH+AE,this.currentPath_.length);AI++){if(AI%AE==0&&AI>0){AK.push(" m ",K(this.currentPath_[AI-1].x),",",K(this.currentPath_[AI-1].y))}var Z=this.currentPath_[AI];var AJ;switch(Z.type){case"moveTo":AJ=Z;AK.push(" m ",K(Z.x),",",K(Z.y));break;case"lineTo":AK.push(" l ",K(Z.x),",",K(Z.y));break;case"close":AK.push(" x ");Z=null;break;case"bezierCurveTo":AK.push(" c ",K(Z.cp1x),",",K(Z.cp1y),",",K(Z.cp2x),",",K(Z.cp2y),",",K(Z.x),",",K(Z.y));break;case"at":case"wa":AK.push(" ",Z.type," ",K(Z.x-this.arcScaleX_*Z.radius),",",K(Z.y-this.arcScaleY_*Z.radius)," ",K(Z.x+this.arcScaleX_*Z.radius),",",K(Z.y+this.arcScaleY_*Z.radius)," ",K(Z.xStart),",",K(Z.yStart)," ",K(Z.xEnd),",",K(Z.yEnd));break}if(Z){if(AG.x==null||Z.x<AG.x){AG.x=Z.x}if(AL.x==null||Z.x>AL.x){AL.x=Z.x}if(AG.y==null||Z.y<AG.y){AG.y=Z.y}if(AL.y==null||Z.y>AL.y){AL.y=Z.y}}}AK.push(' ">');if(!AM){R(this,AK)}else{a(this,AK,AG,AL)}AK.push("</g_vml_:shape>");this.element_.insertAdjacentHTML("beforeEnd",AK.join(""))}};function R(j,AE){var i=Y(j.strokeStyle);var m=i.color;var p=i.alpha*j.globalAlpha;var Z=j.lineScale_*j.lineWidth;if(Z<1){p*=Z}AE.push("<g_vml_:stroke",' opacity="',p,'"',' joinstyle="',j.lineJoin,'"',' miterlimit="',j.miterLimit,'"',' endcap="',t(j.lineCap),'"',' weight="',Z,'px"',' color="',m,'" />')}function a(AO,AG,Ah,AP){var AH=AO.fillStyle;var AY=AO.arcScaleX_;var AX=AO.arcScaleY_;var Z=AP.x-Ah.x;var m=AP.y-Ah.y;if(AH instanceof v){var AL=0;var Ac={x:0,y:0};var AU=0;var AK=1;if(AH.type_=="gradient"){var AJ=AH.x0_/AY;var j=AH.y0_/AX;var AI=AH.x1_/AY;var Aj=AH.y1_/AX;var Ag=AO.getCoords_(AJ,j);var Af=AO.getCoords_(AI,Aj);var AE=Af.x-Ag.x;var p=Af.y-Ag.y;AL=Math.atan2(AE,p)*180/Math.PI;if(AL<0){AL+=360}if(AL<0.000001){AL=0}}else{var Ag=AO.getCoords_(AH.x0_,AH.y0_);Ac={x:(Ag.x-Ah.x)/Z,y:(Ag.y-Ah.y)/m};Z/=AY*D;m/=AX*D;var Aa=z.max(Z,m);AU=2*AH.r0_/Aa;AK=2*AH.r1_/Aa-AU}var AS=AH.colors_;AS.sort(function(Ak,i){return Ak.offset-i.offset});var AN=AS.length;var AR=AS[0].color;var AQ=AS[AN-1].color;var AW=AS[0].alpha*AO.globalAlpha;var AV=AS[AN-1].alpha*AO.globalAlpha;var Ab=[];for(var Ae=0;Ae<AN;Ae++){var AM=AS[Ae];Ab.push(AM.offset*AK+AU+" "+AM.color)}AG.push('<g_vml_:fill type="',AH.type_,'"',' method="none" focus="100%"',' color="',AR,'"',' color2="',AQ,'"',' colors="',Ab.join(","),'"',' opacity="',AV,'"',' g_o_:opacity2="',AW,'"',' angle="',AL,'"',' focusposition="',Ac.x,",",Ac.y,'" />')}else{if(AH instanceof u){if(Z&&m){var AF=-Ah.x;var AZ=-Ah.y;AG.push("<g_vml_:fill",' position="',AF/Z*AY*AY,",",AZ/m*AX*AX,'"',' type="tile"',' src="',AH.src_,'" />')}}else{var Ai=Y(AO.fillStyle);var AT=Ai.color;var Ad=Ai.alpha*AO.globalAlpha;AG.push('<g_vml_:fill color="',AT,'" opacity="',Ad,'" />')}}}M.fill=function(){this.stroke(true)};M.closePath=function(){this.currentPath_.push({type:"close"})};M.getCoords_=function(j,i){var Z=this.m_;return{x:D*(j*Z[0][0]+i*Z[1][0]+Z[2][0])-F,y:D*(j*Z[0][1]+i*Z[1][1]+Z[2][1])-F}};M.save=function(){var Z={};Q(this,Z);this.aStack_.push(Z);this.mStack_.push(this.m_);this.m_=d(V(),this.m_)};M.restore=function(){if(this.aStack_.length){Q(this.aStack_.pop(),this);this.m_=this.mStack_.pop()}};function H(Z){return isFinite(Z[0][0])&&isFinite(Z[0][1])&&isFinite(Z[1][0])&&isFinite(Z[1][1])&&isFinite(Z[2][0])&&isFinite(Z[2][1])}function y(i,Z,j){if(!H(Z)){return }i.m_=Z;if(j){var p=Z[0][0]*Z[1][1]-Z[0][1]*Z[1][0];i.lineScale_=k(b(p))}}M.translate=function(j,i){var Z=[[1,0,0],[0,1,0],[j,i,1]];y(this,d(Z,this.m_),false)};M.rotate=function(i){var m=U(i);var j=J(i);var Z=[[m,j,0],[-j,m,0],[0,0,1]];y(this,d(Z,this.m_),false)};M.scale=function(j,i){this.arcScaleX_*=j;this.arcScaleY_*=i;var Z=[[j,0,0],[0,i,0],[0,0,1]];y(this,d(Z,this.m_),true)};M.transform=function(p,m,AF,AE,i,Z){var j=[[p,m,0],[AF,AE,0],[i,Z,1]];y(this,d(j,this.m_),true)};M.setTransform=function(AE,p,AG,AF,j,i){var Z=[[AE,p,0],[AG,AF,0],[j,i,1]];y(this,Z,true)};M.drawText_=function(AK,AI,AH,AN,AG){var AM=this.m_,AQ=1000,i=0,AP=AQ,AF={x:0,y:0},AE=[];var Z=P(X(this.font),this.element_);var j=AA(Z);var AR=this.element_.currentStyle;var p=this.textAlign.toLowerCase();switch(p){case"left":case"center":case"right":break;case"end":p=AR.direction=="ltr"?"right":"left";break;case"start":p=AR.direction=="rtl"?"right":"left";break;default:p="left"}switch(this.textBaseline){case"hanging":case"top":AF.y=Z.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":AF.y=-Z.size/2.25;break}switch(p){case"right":i=AQ;AP=0.05;break;case"center":i=AP=AQ/2;break}var AO=this.getCoords_(AI+AF.x,AH+AF.y);AE.push('<g_vml_:line from="',-i,' 0" to="',AP,' 0.05" ',' coordsize="100 100" coordorigin="0 0"',' filled="',!AG,'" stroked="',!!AG,'" style="position:absolute;width:1px;height:1px;">');if(AG){R(this,AE)}else{a(this,AE,{x:-i,y:0},{x:AP,y:Z.size})}var AL=AM[0][0].toFixed(3)+","+AM[1][0].toFixed(3)+","+AM[0][1].toFixed(3)+","+AM[1][1].toFixed(3)+",0,0";var AJ=K(AO.x/D)+","+K(AO.y/D);AE.push('<g_vml_:skew on="t" matrix="',AL,'" ',' offset="',AJ,'" origin="',i,' 0" />','<g_vml_:path textpathok="true" />','<g_vml_:textpath on="true" string="',AD(AK),'" style="v-text-align:',p,";font:",AD(j),'" /></g_vml_:line>');this.element_.insertAdjacentHTML("beforeEnd",AE.join(""))};M.fillText=function(j,Z,m,i){this.drawText_(j,Z,m,i,false)};M.strokeText=function(j,Z,m,i){this.drawText_(j,Z,m,i,true)};M.measureText=function(j){if(!this.textMeasureEl_){var Z='<span style="position:absolute;top:-20000px;left:0;padding:0;margin:0;border:none;white-space:pre;"></span>';this.element_.insertAdjacentHTML("beforeEnd",Z);this.textMeasureEl_=this.element_.lastChild}var i=this.element_.ownerDocument;this.textMeasureEl_.innerHTML="";this.textMeasureEl_.style.font=this.font;this.textMeasureEl_.appendChild(i.createTextNode(j));return{width:this.textMeasureEl_.offsetWidth}};M.clip=function(){};M.arcTo=function(){};M.createPattern=function(i,Z){return new u(i,Z)};function v(Z){this.type_=Z;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}v.prototype.addColorStop=function(i,Z){Z=Y(Z);this.colors_.push({offset:i,color:Z.color,alpha:Z.alpha})};function u(i,Z){q(i);switch(Z){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=Z;break;default:n("SYNTAX_ERR")}this.src_=i.src;this.width_=i.width;this.height_=i.height}function n(Z){throw new o(Z)}function q(Z){if(!Z||Z.nodeType!=1||Z.tagName!="IMG"){n("TYPE_MISMATCH_ERR")}if(Z.readyState!="complete"){n("INVALID_STATE_ERR")}}function o(Z){this.code=this[Z];this.message=Z+": DOM Exception "+this.code}var x=o.prototype=new Error;x.INDEX_SIZE_ERR=1;x.DOMSTRING_SIZE_ERR=2;x.HIERARCHY_REQUEST_ERR=3;x.WRONG_DOCUMENT_ERR=4;x.INVALID_CHARACTER_ERR=5;x.NO_DATA_ALLOWED_ERR=6;x.NO_MODIFICATION_ALLOWED_ERR=7;x.NOT_FOUND_ERR=8;x.NOT_SUPPORTED_ERR=9;x.INUSE_ATTRIBUTE_ERR=10;x.INVALID_STATE_ERR=11;x.SYNTAX_ERR=12;x.INVALID_MODIFICATION_ERR=13;x.NAMESPACE_ERR=14;x.INVALID_ACCESS_ERR=15;x.VALIDATION_ERR=16;x.TYPE_MISMATCH_ERR=17;G_vmlCanvasManager=E;CanvasRenderingContext2D=W;CanvasGradient=v;CanvasPattern=u;DOMException=o})()}; \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/flot-build.bat.svn-base b/forum/skins/light/media/js/.svn/text-base/flot-build.bat.svn-base deleted file mode 100755 index f9f32cb790ca89c47cdb187194c278ba1a5d7e3b..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/flot-build.bat.svn-base +++ /dev/null @@ -1,3 +0,0 @@ -java -jar yuicompressor-2.4.2.jar --type js --charset utf-8 jquery.flot.js -o jquery.flot.pack.js - -pause diff --git a/forum/skins/light/media/js/.svn/text-base/html_sanitizer.js.svn-base b/forum/skins/light/media/js/.svn/text-base/html_sanitizer.js.svn-base deleted file mode 100755 index faba90061558d15cad7c92f62ebb9a36c3ae15de..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/html_sanitizer.js.svn-base +++ /dev/null @@ -1,36 +0,0 @@ -{var html4={},html,html_sanitize;html4.atype={'NONE':0,'URI':1,'URI_FRAGMENT':11,'SCRIPT':2,'STYLE':3,'ID':4,'IDREF':5,'IDREFS':6,'GLOBAL_NAME':7,'LOCAL_NAME':8,'CLASSES':9,'FRAME_TARGET':10},html4.ATTRIBS={'*::class':9,'*::dir':0,'*::id':4,'*::lang':0,'*::onclick':2,'*::ondblclick':2,'*::onkeydown':2,'*::onkeypress':2,'*::onkeyup':2,'*::onload':2,'*::onmousedown':2,'*::onmousemove':2,'*::onmouseout':2,'*::onmouseover':2,'*::onmouseup':2,'*::style':3,'*::title':0,'a::accesskey':0,'a::coords':0,'a::href':1,'a::hreflang':0,'a::name':7,'a::onblur':2,'a::onfocus':2,'a::rel':0,'a::rev':0,'a::shape':0,'a::tabindex':0,'a::target':10,'a::type':0,'area::accesskey':0,'area::alt':0,'area::coords':0,'area::href':1,'area::nohref':0,'area::onblur':2,'area::onfocus':2,'area::shape':0,'area::tabindex':0,'area::target':10,'bdo::dir':0,'blockquote::cite':1,'br::clear':0,'button::accesskey':0,'button::disabled':0,'button::name':8,'button::onblur':2,'button::onfocus':2,'button::tabindex':0,'button::type':0,'button::value':0,'canvas::height':0,'canvas::width':0,'caption::align':0,'col::align':0,'col::char':0,'col::charoff':0,'col::span':0,'col::valign':0,'col::width':0,'colgroup::align':0,'colgroup::char':0,'colgroup::charoff':0,'colgroup::span':0,'colgroup::valign':0,'colgroup::width':0,'del::cite':1,'del::datetime':0,'dir::compact':0,'div::align':0,'dl::compact':0,'font::color':0,'font::face':0,'font::size':0,'form::accept':0,'form::action':1,'form::autocomplete':0,'form::enctype':0,'form::method':0,'form::name':7,'form::onreset':2,'form::onsubmit':2,'form::target':10,'h1::align':0,'h2::align':0,'h3::align':0,'h4::align':0,'h5::align':0,'h6::align':0,'hr::align':0,'hr::noshade':0,'hr::size':0,'hr::width':0,'iframe::align':0,'iframe::frameborder':0,'iframe::height':0,'iframe::marginheight':0,'iframe::marginwidth':0,'iframe::width':0,'img::align':0,'img::alt':0,'img::border':0,'img::height':0,'img::hspace':0,'img::ismap':0,'img::name':7,'img::src':1,'img::usemap':11,'img::vspace':0,'img::width':0,'input::accept':0,'input::accesskey':0,'input::align':0,'input::alt':0,'input::autocomplete':0,'input::checked':0,'input::disabled':0,'input::ismap':0,'input::maxlength':0,'input::name':8,'input::onblur':2,'input::onchange':2,'input::onfocus':2,'input::onselect':2,'input::readonly':0,'input::size':0,'input::src':1,'input::tabindex':0,'input::type':0,'input::usemap':11,'input::value':0,'ins::cite':1,'ins::datetime':0,'label::accesskey':0,'label::for':5,'label::onblur':2,'label::onfocus':2,'legend::accesskey':0,'legend::align':0,'li::type':0,'li::value':0,'map::name':7,'menu::compact':0,'ol::compact':0,'ol::start':0,'ol::type':0,'optgroup::disabled':0,'optgroup::label':0,'option::disabled':0,'option::label':0,'option::selected':0,'option::value':0,'p::align':0,'pre::width':0,'q::cite':1,'select::disabled':0,'select::multiple':0,'select::name':8,'select::onblur':2,'select::onchange':2,'select::onfocus':2,'select::size':0,'select::tabindex':0,'table::align':0,'table::bgcolor':0,'table::border':0,'table::cellpadding':0,'table::cellspacing':0,'table::frame':0,'table::rules':0,'table::summary':0,'table::width':0,'tbody::align':0,'tbody::char':0,'tbody::charoff':0,'tbody::valign':0,'td::abbr':0,'td::align':0,'td::axis':0,'td::bgcolor':0,'td::char':0,'td::charoff':0,'td::colspan':0,'td::headers':6,'td::height':0,'td::nowrap':0,'td::rowspan':0,'td::scope':0,'td::valign':0,'td::width':0,'textarea::accesskey':0,'textarea::cols':0,'textarea::disabled':0,'textarea::name':8,'textarea::onblur':2,'textarea::onchange':2,'textarea::onfocus':2,'textarea::onselect':2,'textarea::readonly':0,'textarea::rows':0,'textarea::tabindex':0,'tfoot::align':0,'tfoot::char':0,'tfoot::charoff':0,'tfoot::valign':0,'th::abbr':0,'th::align':0,'th::axis':0,'th::bgcolor':0,'th::char':0,'th::charoff':0,'th::colspan':0,'th::headers':6,'th::height':0,'th::nowrap':0,'th::rowspan':0,'th::scope':0,'th::valign':0,'th::width':0,'thead::align':0,'thead::char':0,'thead::charoff':0,'thead::valign':0,'tr::align':0,'tr::bgcolor':0,'tr::char':0,'tr::charoff':0,'tr::valign':0,'ul::compact':0,'ul::type':0},html4.eflags={'OPTIONAL_ENDTAG':1,'EMPTY':2,'CDATA':4,'RCDATA':8,'UNSAFE':16,'FOLDABLE':32,'SCRIPT':64,'STYLE':128},html4.ELEMENTS={'a':0,'abbr':0,'acronym':0,'address':0,'applet':16,'area':2,'b':0,'base':18,'basefont':18,'bdo':0,'big':0,'blockquote':0,'body':49,'br':2,'button':0,'canvas':0,'caption':0,'center':0,'cite':0,'code':0,'col':2,'colgroup':1,'dd':1,'del':0,'dfn':0,'dir':0,'div':0,'dl':0,'dt':1,'em':0,'fieldset':0,'font':0,'form':0,'frame':18,'frameset':16,'h1':0,'h2':0,'h3':0,'h4':0,'h5':0,'h6':0,'head':49,'hr':2,'html':49,'i':0,'iframe':4,'img':2,'input':2,'ins':0,'isindex':18,'kbd':0,'label':0,'legend':0,'li':1,'link':18,'map':0,'menu':0,'meta':18,'nav':0,'nobr':0,'noembed':4,'noframes':20,'noscript':20,'object':16,'ol':0,'optgroup':0,'option':1,'p':1,'param':18,'pre':0,'q':0,'s':0,'samp':0,'script':84,'select':0,'small':0,'span':0,'strike':0,'strong':0,'style':148,'sub':0,'sup':0,'table':0,'tbody':1,'td':1,'textarea':8,'tfoot':1,'th':1,'thead':1,'title':24,'tr':1,'tt':0,'u':0,'ul':0,'var':0},html4.ueffects={'NOT_LOADED':0,'SAME_DOCUMENT':1,'NEW_DOCUMENT':2},html4.URIEFFECTS={'a::href':2,'area::href':2,'blockquote::cite':0,'body::background':1,'del::cite':0,'form::action':2,'img::src':1,'input::src':1,'ins::cite':0,'q::cite':0},html4.ltypes={'UNSANDBOXED':2,'SANDBOXED':1,'DATA':0},html4.LOADERTYPES={'a::href':2,'area::href':2,'blockquote::cite':2,'body::background':1,'del::cite':2,'form::action':2,'img::src':1,'input::src':1,'ins::cite':2,'q::cite':2},html=(function(html4){var - ENTITIES,INSIDE_TAG_TOKEN,OUTSIDE_TAG_TOKEN,URI_SCHEME_RE,WHITELISTED_SCHEMES,ampRe,decimalEscapeRe,entityRe,gtRe,hexEscapeRe,lcase,looseAmpRe,ltRe,nulRe,quotRe;'script'==='SCRIPT'.toLowerCase()?(lcase=function(s){return s.toLowerCase()}):(lcase=function(s){return s.replace(/[A-Z]/g,function(ch){return String.fromCharCode(ch.charCodeAt(0)|32)})}),ENTITIES={'lt':'<','gt':'>','amp':'&','nbsp':'\xa0','quot':'\"','apos':'\''},WHITELISTED_SCHEMES=/^(?:https?|mailto)$/i,decimalEscapeRe=/^#(\d+)$/,hexEscapeRe=/^#x([0-9A-Fa-f]+)$/;function - lookupEntity(name){var m;return name=lcase(name),ENTITIES.hasOwnProperty(name)?ENTITIES[name]:(m=name.match(decimalEscapeRe),m?String.fromCharCode(parseInt(m[1],10)):(m=name.match(hexEscapeRe))?String.fromCharCode(parseInt(m[1],16)):'')}function - decodeOneEntity(_,name){return lookupEntity(name)}nulRe=/\0/g;function stripNULs(s){return s.replace(nulRe,'')}entityRe=/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g;function - unescapeEntities(s){return s.replace(entityRe,decodeOneEntity)}ampRe=/&/g,looseAmpRe=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,ltRe=/</g,gtRe=/>/g,quotRe=/\"/g;function - escapeAttrib(s){return(''+s).replace(ampRe,'&').replace(ltRe,'<').replace(gtRe,'>').replace(quotRe,'"')}function - normalizeRCData(rcdata){return rcdata.replace(looseAmpRe,'&$1').replace(ltRe,'<').replace(gtRe,'>')}INSIDE_TAG_TOKEN=new - RegExp('^\\s*(?:(?:([a-z][a-z-]*)(\\s*=\\s*(\"[^\"]*\"|\'[^\']*\'|(?=[a-z][a-z-]*\\s*=)|[^>\"\'\\s]*))?)|(/?>)|[\\s\\S][^a-z\\s>]*)','i'),OUTSIDE_TAG_TOKEN=new - RegExp('^(?:&(\\#[0-9]+|\\#[x][0-9a-f]+|\\w+);|<!--[\\s\\S]*?-->|<!\\w[^>]*>|<\\?[^>*]*>|<(/)?([a-z][a-z0-9]*)|([^<&>]+)|([<&>]))','i');function - makeSaxParser(handler){return function parse(htmlText,param){var attribName,attribs,dataEnd,decodedValue,eflags,encodedValue,htmlLower,inTag,m,openTag,tagName;htmlText=String(htmlText),htmlLower=null,inTag=false,attribs=[],tagName=void - 0,eflags=void 0,openTag=void 0,handler.startDoc&&handler.startDoc(param);while(htmlText){m=htmlText.match(inTag?INSIDE_TAG_TOKEN:OUTSIDE_TAG_TOKEN),htmlText=htmlText.substring(m[0].length);if(inTag){if(m[1]){attribName=lcase(m[1]);if(m[2]){encodedValue=m[3];switch(encodedValue.charCodeAt(0)){case -34:case 39:encodedValue=encodedValue.substring(1,encodedValue.length-1)}decodedValue=unescapeEntities(stripNULs(encodedValue))}else - decodedValue=attribName;attribs.push(attribName,decodedValue)}else if(m[4])eflags!==void - 0&&(openTag?handler.startTag&&handler.startTag(tagName,attribs,param):handler.endTag&&handler.endTag(tagName,param)),openTag&&eflags&(html4.eflags.CDATA|html4.eflags.RCDATA)&&(htmlLower===null?(htmlLower=lcase(htmlText)):(htmlLower=htmlLower.substring(htmlLower.length-htmlText.length)),dataEnd=htmlLower.indexOf('</'+tagName),dataEnd<0&&(dataEnd=htmlText.length),dataEnd&&(eflags&html4.eflags.CDATA?handler.cdata&&handler.cdata(htmlText.substring(0,dataEnd),param):handler.rcdata&&handler.rcdata(normalizeRCData(htmlText.substring(0,dataEnd)),param),htmlText=htmlText.substring(dataEnd))),tagName=eflags=openTag=void - 0,attribs.length=0,inTag=false}else if(m[1])handler.pcdata&&handler.pcdata(m[0],param);else -if(m[3])openTag=!m[2],inTag=true,tagName=lcase(m[3]),eflags=html4.ELEMENTS.hasOwnProperty(tagName)?html4.ELEMENTS[tagName]:void - 0;else if(m[4])handler.pcdata&&handler.pcdata(m[4],param);else if(m[5]){if(handler.pcdata)switch(m[5]){case'<':handler.pcdata('<',param);break;case'>':handler.pcdata('>',param);break;case'&':handler.pcdata('&',param)}}}handler.endDoc&&handler.endDoc(param)}}function - makeHtmlSanitizer(tagPolicy){var ignoring,stack;return makeSaxParser({'startDoc':function(_){stack=[],ignoring=false},'startTag':function(tagName,attribs,out){var - attribName,eflags,i,n,value;if(ignoring)return;if(!html4.ELEMENTS.hasOwnProperty(tagName))return;eflags=html4.ELEMENTS[tagName];if(eflags&html4.eflags.FOLDABLE)return;attribs=tagPolicy(tagName,attribs);if(!attribs)return ignoring=!(eflags&html4.eflags.EMPTY),void - 0;eflags&html4.eflags.EMPTY||stack.push(tagName),out.push('<',tagName);for(i=0,n=attribs.length;i<n;i+=2)attribName=attribs[i],value=attribs[i+1],value!==null&&value!==void - 0&&out.push(' ',attribName,'=\"',escapeAttrib(value),'\"');out.push('>')},'endTag':function(tagName,out){var - eflags,i,index,stackEl;if(ignoring)return ignoring=false,void 0;if(!html4.ELEMENTS.hasOwnProperty(tagName))return;eflags=html4.ELEMENTS[tagName];if(!(eflags&(html4.eflags.EMPTY|html4.eflags.FOLDABLE))){if(eflags&html4.eflags.OPTIONAL_ENDTAG)for(index=stack.length;--index>=0;){stackEl=stack[index];if(stackEl===tagName)break;if(!(html4.ELEMENTS[stackEl]&html4.eflags.OPTIONAL_ENDTAG))return}else - for(index=stack.length;--index>=0;)if(stack[index]===tagName)break;if(index<0)return;for(i=stack.length;--i>index;)stackEl=stack[i],html4.ELEMENTS[stackEl]&html4.eflags.OPTIONAL_ENDTAG||out.push('</',stackEl,'>');stack.length=index,out.push('</',tagName,'>')}},'pcdata':function(text,out){ignoring||out.push(text)},'rcdata':function(text,out){ignoring||out.push(text)},'cdata':function(text,out){ignoring||out.push(text)},'endDoc':function(out){var - i;for(i=stack.length;--i>=0;)out.push('</',stack[i],'>');stack.length=0}})}URI_SCHEME_RE=new - RegExp('^(?:([^:/?#]+):)?');function sanitizeAttribs(tagName,attribs,opt_uriPolicy,opt_nmTokenPolicy){var - attribKey,attribName,atype,i,parsedUri,value;for(i=0;i<attribs.length;i+=2){attribName=attribs[i],value=attribs[i+1],atype=null,((attribKey=tagName+'::'+attribName,html4.ATTRIBS.hasOwnProperty(attribKey))||(attribKey='*::'+attribName,html4.ATTRIBS.hasOwnProperty(attribKey)))&&(atype=html4.ATTRIBS[attribKey]);if(atype!==null)switch(atype){case -html4.atype.NONE:break;case html4.atype.SCRIPT:case html4.atype.STYLE:value=null;break;case -html4.atype.ID:case html4.atype.IDREF:case html4.atype.IDREFS:case html4.atype.GLOBAL_NAME:case -html4.atype.LOCAL_NAME:case html4.atype.CLASSES:value=opt_nmTokenPolicy?opt_nmTokenPolicy(value):value;break;case -html4.atype.URI:parsedUri=(''+value).match(URI_SCHEME_RE),parsedUri?!parsedUri[1]||WHITELISTED_SCHEMES.test(parsedUri[1])?(value=opt_uriPolicy?opt_uriPolicy(value):null):(value=null):(value=null);break;case -html4.atype.URI_FRAGMENT:value&&'#'===value.charAt(0)?(value=value.substring(1),value=opt_nmTokenPolicy?opt_nmTokenPolicy(value):value,value!==null&&value!==void - 0&&(value='#'+value)):(value=null);break;default:value=null}else value=null;attribs[i+1]=value}return attribs}function - makeTagPolicy(opt_uriPolicy,opt_nmTokenPolicy){return function(tagName,attribs){if(!(html4.ELEMENTS[tagName]&html4.eflags.UNSAFE))return sanitizeAttribs(tagName,attribs,opt_uriPolicy,opt_nmTokenPolicy)}}function - sanitizeWithPolicy(inputHtml,tagPolicy){var outputArray=[];return makeHtmlSanitizer(tagPolicy)(inputHtml,outputArray),outputArray.join('')}function - sanitize(inputHtml,opt_uriPolicy,opt_nmTokenPolicy){var tagPolicy=makeTagPolicy(opt_uriPolicy,opt_nmTokenPolicy);return sanitizeWithPolicy(inputHtml,tagPolicy)}return{'escapeAttrib':escapeAttrib,'makeHtmlSanitizer':makeHtmlSanitizer,'makeSaxParser':makeSaxParser,'makeTagPolicy':makeTagPolicy,'normalizeRCData':normalizeRCData,'sanitize':sanitize,'sanitizeAttribs':sanitizeAttribs,'sanitizeWithPolicy':sanitizeWithPolicy,'unescapeEntities':unescapeEntities}})(html4),html_sanitize=html.sanitize,typeof - window!=='undefined'&&(window.html=html,window.html_sanitize=html_sanitize)} \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/jquery-1.2.6.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery-1.2.6.js.svn-base deleted file mode 100755 index 88e661eec806dc61eb5dfbd08fd0bae8343f96be..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery-1.2.6.js.svn-base +++ /dev/null @@ -1,3549 +0,0 @@ -(function(){ -/* - * jQuery 1.2.6 - New Wave Javascript - * - * Copyright (c) 2008 John Resig (jquery.com) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * $Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008) $ - * $Rev: 5685 $ - */ - -// Map over jQuery in case of overwrite -var _jQuery = window.jQuery, -// Map over the $ in case of overwrite - _$ = window.$; - -var jQuery = window.jQuery = window.$ = function( selector, context ) { - // The jQuery object is actually just the init constructor 'enhanced' - return new jQuery.fn.init( selector, context ); -}; - -// A simple way to check for HTML strings or ID strings -// (both of which we optimize for) -var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/, - -// Is it a simple selector - isSimple = /^.[^:#\[\.]*$/, - -// Will speed up references to undefined, and allows munging its name. - undefined; - -jQuery.fn = jQuery.prototype = { - init: function( selector, context ) { - // Make sure that a selection was provided - selector = selector || document; - - // Handle $(DOMElement) - if ( selector.nodeType ) { - this[0] = selector; - this.length = 1; - return this; - } - // Handle HTML strings - if ( typeof selector == "string" ) { - // Are we dealing with HTML string or an ID? - var match = quickExpr.exec( selector ); - - // Verify a match, and that no context was specified for #id - if ( match && (match[1] || !context) ) { - - // HANDLE: $(html) -> $(array) - if ( match[1] ) - selector = jQuery.clean( [ match[1] ], context ); - - // HANDLE: $("#id") - else { - var elem = document.getElementById( match[3] ); - - // Make sure an element was located - if ( elem ){ - // Handle the case where IE and Opera return items - // by name instead of ID - if ( elem.id != match[3] ) - return jQuery().find( selector ); - - // Otherwise, we inject the element directly into the jQuery object - return jQuery( elem ); - } - selector = []; - } - - // HANDLE: $(expr, [context]) - // (which is just equivalent to: $(content).find(expr) - } else - return jQuery( context ).find( selector ); - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( jQuery.isFunction( selector ) ) - return jQuery( document )[ jQuery.fn.ready ? "ready" : "load" ]( selector ); - - return this.setArray(jQuery.makeArray(selector)); - }, - - // The current version of jQuery being used - jquery: "1.2.6", - - // The number of elements contained in the matched element set - size: function() { - return this.length; - }, - - // The number of elements contained in the matched element set - length: 0, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - return num == undefined ? - - // Return a 'clean' array - jQuery.makeArray( this ) : - - // Return just the object - this[ num ]; - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems ) { - // Build a new jQuery matched element set - var ret = jQuery( elems ); - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - - // Return the newly-formed element set - return ret; - }, - - // Force the current matched set of elements to become - // the specified array of elements (destroying the stack in the process) - // You should use pushStack() in order to do this, but maintain the stack - setArray: function( elems ) { - // Resetting the length to 0, then using the native Array push - // is a super-fast way to populate an object with array-like properties - this.length = 0; - Array.prototype.push.apply( this, elems ); - - return this; - }, - - // Execute a callback for every element in the matched set. - // (You can seed the arguments with an array of args, but this is - // only used internally.) - each: function( callback, args ) { - return jQuery.each( this, callback, args ); - }, - - // Determine the position of an element within - // the matched set of elements - index: function( elem ) { - var ret = -1; - - // Locate the position of the desired element - return jQuery.inArray( - // If it receives a jQuery object, the first element is used - elem && elem.jquery ? elem[0] : elem - , this ); - }, - - attr: function( name, value, type ) { - var options = name; - - // Look for the case where we're accessing a style value - if ( name.constructor == String ) - if ( value === undefined ) - return this[0] && jQuery[ type || "attr" ]( this[0], name ); - - else { - options = {}; - options[ name ] = value; - } - - // Check to see if we're setting style values - return this.each(function(i){ - // Set all the styles - for ( name in options ) - jQuery.attr( - type ? - this.style : - this, - name, jQuery.prop( this, options[ name ], type, i, name ) - ); - }); - }, - - css: function( key, value ) { - // ignore negative width and height values - if ( (key == 'width' || key == 'height') && parseFloat(value) < 0 ) - value = undefined; - return this.attr( key, value, "curCSS" ); - }, - - text: function( text ) { - if ( typeof text != "object" && text != null ) - return this.empty().append( (this[0] && this[0].ownerDocument || document).createTextNode( text ) ); - - var ret = ""; - - jQuery.each( text || this, function(){ - jQuery.each( this.childNodes, function(){ - if ( this.nodeType != 8 ) - ret += this.nodeType != 1 ? - this.nodeValue : - jQuery.fn.text( [ this ] ); - }); - }); - - return ret; - }, - - wrapAll: function( html ) { - if ( this[0] ) - // The elements to wrap the target around - jQuery( html, this[0].ownerDocument ) - .clone() - .insertBefore( this[0] ) - .map(function(){ - var elem = this; - - while ( elem.firstChild ) - elem = elem.firstChild; - - return elem; - }) - .append(this); - - return this; - }, - - wrapInner: function( html ) { - return this.each(function(){ - jQuery( this ).contents().wrapAll( html ); - }); - }, - - wrap: function( html ) { - return this.each(function(){ - jQuery( this ).wrapAll( html ); - }); - }, - - append: function() { - return this.domManip(arguments, true, false, function(elem){ - if (this.nodeType == 1) - this.appendChild( elem ); - }); - }, - - prepend: function() { - return this.domManip(arguments, true, true, function(elem){ - if (this.nodeType == 1) - this.insertBefore( elem, this.firstChild ); - }); - }, - - before: function() { - return this.domManip(arguments, false, false, function(elem){ - this.parentNode.insertBefore( elem, this ); - }); - }, - - after: function() { - return this.domManip(arguments, false, true, function(elem){ - this.parentNode.insertBefore( elem, this.nextSibling ); - }); - }, - - end: function() { - return this.prevObject || jQuery( [] ); - }, - - find: function( selector ) { - var elems = jQuery.map(this, function(elem){ - return jQuery.find( selector, elem ); - }); - - return this.pushStack( /[^+>] [^+>]/.test( selector ) || selector.indexOf("..") > -1 ? - jQuery.unique( elems ) : - elems ); - }, - - clone: function( events ) { - // Do the clone - var ret = this.map(function(){ - if ( jQuery.browser.msie && !jQuery.isXMLDoc(this) ) { - // IE copies events bound via attachEvent when - // using cloneNode. Calling detachEvent on the - // clone will also remove the events from the orignal - // In order to get around this, we use innerHTML. - // Unfortunately, this means some modifications to - // attributes in IE that are actually only stored - // as properties will not be copied (such as the - // the name attribute on an input). - var clone = this.cloneNode(true), - container = document.createElement("div"); - container.appendChild(clone); - return jQuery.clean([container.innerHTML])[0]; - } else - return this.cloneNode(true); - }); - - // Need to set the expando to null on the cloned set if it exists - // removeData doesn't work here, IE removes it from the original as well - // this is primarily for IE but the data expando shouldn't be copied over in any browser - var clone = ret.find("*").andSelf().each(function(){ - if ( this[ expando ] != undefined ) - this[ expando ] = null; - }); - - // Copy the events from the original to the clone - if ( events === true ) - this.find("*").andSelf().each(function(i){ - if (this.nodeType == 3) - return; - var events = jQuery.data( this, "events" ); - - for ( var type in events ) - for ( var handler in events[ type ] ) - jQuery.event.add( clone[ i ], type, events[ type ][ handler ], events[ type ][ handler ].data ); - }); - - // Return the cloned set - return ret; - }, - - filter: function( selector ) { - return this.pushStack( - jQuery.isFunction( selector ) && - jQuery.grep(this, function(elem, i){ - return selector.call( elem, i ); - }) || - - jQuery.multiFilter( selector, this ) ); - }, - - not: function( selector ) { - if ( selector.constructor == String ) - // test special case where just one selector is passed in - if ( isSimple.test( selector ) ) - return this.pushStack( jQuery.multiFilter( selector, this, true ) ); - else - selector = jQuery.multiFilter( selector, this ); - - var isArrayLike = selector.length && selector[selector.length - 1] !== undefined && !selector.nodeType; - return this.filter(function() { - return isArrayLike ? jQuery.inArray( this, selector ) < 0 : this != selector; - }); - }, - - add: function( selector ) { - return this.pushStack( jQuery.unique( jQuery.merge( - this.get(), - typeof selector == 'string' ? - jQuery( selector ) : - jQuery.makeArray( selector ) - ))); - }, - - is: function( selector ) { - return !!selector && jQuery.multiFilter( selector, this ).length > 0; - }, - - hasClass: function( selector ) { - return this.is( "." + selector ); - }, - - val: function( value ) { - if ( value == undefined ) { - - if ( this.length ) { - var elem = this[0]; - - // We need to handle select boxes special - if ( jQuery.nodeName( elem, "select" ) ) { - var index = elem.selectedIndex, - values = [], - options = elem.options, - one = elem.type == "select-one"; - - // Nothing was selected - if ( index < 0 ) - return null; - - // Loop through all the selected options - for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) { - var option = options[ i ]; - - if ( option.selected ) { - // Get the specifc value for the option - value = jQuery.browser.msie && !option.attributes.value.specified ? option.text : option.value; - - // We don't need an array for one selects - if ( one ) - return value; - - // Multi-Selects return an array - values.push( value ); - } - } - - return values; - - // Everything else, we just grab the value - } else - return (this[0].value || "").replace(/\r/g, ""); - - } - - return undefined; - } - - if( value.constructor == Number ) - value += ''; - - return this.each(function(){ - if ( this.nodeType != 1 ) - return; - - if ( value.constructor == Array && /radio|checkbox/.test( this.type ) ) - this.checked = (jQuery.inArray(this.value, value) >= 0 || - jQuery.inArray(this.name, value) >= 0); - - else if ( jQuery.nodeName( this, "select" ) ) { - var values = jQuery.makeArray(value); - - jQuery( "option", this ).each(function(){ - this.selected = (jQuery.inArray( this.value, values ) >= 0 || - jQuery.inArray( this.text, values ) >= 0); - }); - - if ( !values.length ) - this.selectedIndex = -1; - - } else - this.value = value; - }); - }, - - html: function( value ) { - return value == undefined ? - (this[0] ? - this[0].innerHTML : - null) : - this.empty().append( value ); - }, - - replaceWith: function( value ) { - return this.after( value ).remove(); - }, - - eq: function( i ) { - return this.slice( i, i + 1 ); - }, - - slice: function() { - return this.pushStack( Array.prototype.slice.apply( this, arguments ) ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map(this, function(elem, i){ - return callback.call( elem, i, elem ); - })); - }, - - andSelf: function() { - return this.add( this.prevObject ); - }, - - data: function( key, value ){ - var parts = key.split("."); - parts[1] = parts[1] ? "." + parts[1] : ""; - - if ( value === undefined ) { - var data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]); - - if ( data === undefined && this.length ) - data = jQuery.data( this[0], key ); - - return data === undefined && parts[1] ? - this.data( parts[0] ) : - data; - } else - return this.trigger("setData" + parts[1] + "!", [parts[0], value]).each(function(){ - jQuery.data( this, key, value ); - }); - }, - - removeData: function( key ){ - return this.each(function(){ - jQuery.removeData( this, key ); - }); - }, - - domManip: function( args, table, reverse, callback ) { - var clone = this.length > 1, elems; - - return this.each(function(){ - if ( !elems ) { - elems = jQuery.clean( args, this.ownerDocument ); - - if ( reverse ) - elems.reverse(); - } - - var obj = this; - - if ( table && jQuery.nodeName( this, "table" ) && jQuery.nodeName( elems[0], "tr" ) ) - obj = this.getElementsByTagName("tbody")[0] || this.appendChild( this.ownerDocument.createElement("tbody") ); - - var scripts = jQuery( [] ); - - jQuery.each(elems, function(){ - var elem = clone ? - jQuery( this ).clone( true )[0] : - this; - - // execute all scripts after the elements have been injected - if ( jQuery.nodeName( elem, "script" ) ) - scripts = scripts.add( elem ); - else { - // Remove any inner scripts for later evaluation - if ( elem.nodeType == 1 ) - scripts = scripts.add( jQuery( "script", elem ).remove() ); - - // Inject the elements into the document - callback.call( obj, elem ); - } - }); - - scripts.each( evalScript ); - }); - } -}; - -// Give the init function the jQuery prototype for later instantiation -jQuery.fn.init.prototype = jQuery.fn; - -function evalScript( i, elem ) { - if ( elem.src ) - jQuery.ajax({ - url: elem.src, - async: false, - dataType: "script" - }); - - else - jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || "" ); - - if ( elem.parentNode ) - elem.parentNode.removeChild( elem ); -} - -function now(){ - return +new Date; -} - -jQuery.extend = jQuery.fn.extend = function() { - // copy reference to target object - var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options; - - // Handle a deep copy situation - if ( target.constructor == Boolean ) { - deep = target; - target = arguments[1] || {}; - // skip the boolean and the target - i = 2; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target != "object" && typeof target != "function" ) - target = {}; - - // extend jQuery itself if only one argument is passed - if ( length == i ) { - target = this; - --i; - } - - for ( ; i < length; i++ ) - // Only deal with non-null/undefined values - if ( (options = arguments[ i ]) != null ) - // Extend the base object - for ( var name in options ) { - var src = target[ name ], copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) - continue; - - // Recurse if we're merging object values - if ( deep && copy && typeof copy == "object" && !copy.nodeType ) - target[ name ] = jQuery.extend( deep, - // Never move original objects, clone them - src || ( copy.length != null ? [ ] : { } ) - , copy ); - - // Don't bring in undefined values - else if ( copy !== undefined ) - target[ name ] = copy; - - } - - // Return the modified object - return target; -}; - -var expando = "jQuery" + now(), uuid = 0, windowData = {}, - // exclude the following css properties to add px - exclude = /z-?index|font-?weight|opacity|zoom|line-?height/i, - // cache defaultView - defaultView = document.defaultView || {}; - -jQuery.extend({ - noConflict: function( deep ) { - window.$ = _$; - - if ( deep ) - window.jQuery = _jQuery; - - return jQuery; - }, - - // See test/unit/core.js for details concerning this function. - isFunction: function( fn ) { - return !!fn && typeof fn != "string" && !fn.nodeName && - fn.constructor != Array && /^[\s[]?function/.test( fn + "" ); - }, - - // check if an element is in a (or is an) XML document - isXMLDoc: function( elem ) { - return elem.documentElement && !elem.body || - elem.tagName && elem.ownerDocument && !elem.ownerDocument.body; - }, - - // Evalulates a script in a global context - globalEval: function( data ) { - data = jQuery.trim( data ); - - if ( data ) { - // Inspired by code by Andrea Giammarchi - // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html - var head = document.getElementsByTagName("head")[0] || document.documentElement, - script = document.createElement("script"); - - script.type = "text/javascript"; - if ( jQuery.browser.msie ) - script.text = data; - else - script.appendChild( document.createTextNode( data ) ); - - // Use insertBefore instead of appendChild to circumvent an IE6 bug. - // This arises when a base node is used (#2709). - head.insertBefore( script, head.firstChild ); - head.removeChild( script ); - } - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toUpperCase() == name.toUpperCase(); - }, - - cache: {}, - - data: function( elem, name, data ) { - elem = elem == window ? - windowData : - elem; - - var id = elem[ expando ]; - - // Compute a unique ID for the element - if ( !id ) - id = elem[ expando ] = ++uuid; - - // Only generate the data cache if we're - // trying to access or manipulate it - if ( name && !jQuery.cache[ id ] ) - jQuery.cache[ id ] = {}; - - // Prevent overriding the named cache with undefined values - if ( data !== undefined ) - jQuery.cache[ id ][ name ] = data; - - // Return the named cache data, or the ID for the element - return name ? - jQuery.cache[ id ][ name ] : - id; - }, - - removeData: function( elem, name ) { - elem = elem == window ? - windowData : - elem; - - var id = elem[ expando ]; - - // If we want to remove a specific section of the element's data - if ( name ) { - if ( jQuery.cache[ id ] ) { - // Remove the section of cache data - delete jQuery.cache[ id ][ name ]; - - // If we've removed all the data, remove the element's cache - name = ""; - - for ( name in jQuery.cache[ id ] ) - break; - - if ( !name ) - jQuery.removeData( elem ); - } - - // Otherwise, we want to remove all of the element's data - } else { - // Clean up the element expando - try { - delete elem[ expando ]; - } catch(e){ - // IE has trouble directly removing the expando - // but it's ok with using removeAttribute - if ( elem.removeAttribute ) - elem.removeAttribute( expando ); - } - - // Completely remove the data cache - delete jQuery.cache[ id ]; - } - }, - - // args is for internal usage only - each: function( object, callback, args ) { - var name, i = 0, length = object.length; - - if ( args ) { - if ( length == undefined ) { - for ( name in object ) - if ( callback.apply( object[ name ], args ) === false ) - break; - } else - for ( ; i < length; ) - if ( callback.apply( object[ i++ ], args ) === false ) - break; - - // A special, fast, case for the most common use of each - } else { - if ( length == undefined ) { - for ( name in object ) - if ( callback.call( object[ name ], name, object[ name ] ) === false ) - break; - } else - for ( var value = object[0]; - i < length && callback.call( value, i, value ) !== false; value = object[++i] ){} - } - - return object; - }, - - prop: function( elem, value, type, i, name ) { - // Handle executable functions - if ( jQuery.isFunction( value ) ) - value = value.call( elem, i ); - - // Handle passing in a number to a CSS property - return value && value.constructor == Number && type == "curCSS" && !exclude.test( name ) ? - value + "px" : - value; - }, - - className: { - // internal only, use addClass("class") - add: function( elem, classNames ) { - jQuery.each((classNames || "").split(/\s+/), function(i, className){ - if ( elem.nodeType == 1 && !jQuery.className.has( elem.className, className ) ) - elem.className += (elem.className ? " " : "") + className; - }); - }, - - // internal only, use removeClass("class") - remove: function( elem, classNames ) { - if (elem.nodeType == 1) - elem.className = classNames != undefined ? - jQuery.grep(elem.className.split(/\s+/), function(className){ - return !jQuery.className.has( classNames, className ); - }).join(" ") : - ""; - }, - - // internal only, use hasClass("class") - has: function( elem, className ) { - return jQuery.inArray( className, (elem.className || elem).toString().split(/\s+/) ) > -1; - } - }, - - // A method for quickly swapping in/out CSS properties to get correct calculations - swap: function( elem, options, callback ) { - var old = {}; - // Remember the old values, and insert the new ones - for ( var name in options ) { - old[ name ] = elem.style[ name ]; - elem.style[ name ] = options[ name ]; - } - - callback.call( elem ); - - // Revert the old values - for ( var name in options ) - elem.style[ name ] = old[ name ]; - }, - - css: function( elem, name, force ) { - if ( name == "width" || name == "height" ) { - var val, props = { position: "absolute", visibility: "hidden", display:"block" }, which = name == "width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ]; - - function getWH() { - val = name == "width" ? elem.offsetWidth : elem.offsetHeight; - var padding = 0, border = 0; - jQuery.each( which, function() { - padding += parseFloat(jQuery.curCSS( elem, "padding" + this, true)) || 0; - border += parseFloat(jQuery.curCSS( elem, "border" + this + "Width", true)) || 0; - }); - val -= Math.round(padding + border); - } - - if ( jQuery(elem).is(":visible") ) - getWH(); - else - jQuery.swap( elem, props, getWH ); - - return Math.max(0, val); - } - - return jQuery.curCSS( elem, name, force ); - }, - - curCSS: function( elem, name, force ) { - var ret, style = elem.style; - - // A helper method for determining if an element's values are broken - function color( elem ) { - if ( !jQuery.browser.safari ) - return false; - - // defaultView is cached - var ret = defaultView.getComputedStyle( elem, null ); - return !ret || ret.getPropertyValue("color") == ""; - } - - // We need to handle opacity special in IE - if ( name == "opacity" && jQuery.browser.msie ) { - ret = jQuery.attr( style, "opacity" ); - - return ret == "" ? - "1" : - ret; - } - // Opera sometimes will give the wrong display answer, this fixes it, see #2037 - if ( jQuery.browser.opera && name == "display" ) { - var save = style.outline; - style.outline = "0 solid black"; - style.outline = save; - } - - // Make sure we're using the right name for getting the float value - if ( name.match( /float/i ) ) - name = styleFloat; - - if ( !force && style && style[ name ] ) - ret = style[ name ]; - - else if ( defaultView.getComputedStyle ) { - - // Only "float" is needed here - if ( name.match( /float/i ) ) - name = "float"; - - name = name.replace( /([A-Z])/g, "-$1" ).toLowerCase(); - - var computedStyle = defaultView.getComputedStyle( elem, null ); - - if ( computedStyle && !color( elem ) ) - ret = computedStyle.getPropertyValue( name ); - - // If the element isn't reporting its values properly in Safari - // then some display: none elements are involved - else { - var swap = [], stack = [], a = elem, i = 0; - - // Locate all of the parent display: none elements - for ( ; a && color(a); a = a.parentNode ) - stack.unshift(a); - - // Go through and make them visible, but in reverse - // (It would be better if we knew the exact display type that they had) - for ( ; i < stack.length; i++ ) - if ( color( stack[ i ] ) ) { - swap[ i ] = stack[ i ].style.display; - stack[ i ].style.display = "block"; - } - - // Since we flip the display style, we have to handle that - // one special, otherwise get the value - ret = name == "display" && swap[ stack.length - 1 ] != null ? - "none" : - ( computedStyle && computedStyle.getPropertyValue( name ) ) || ""; - - // Finally, revert the display styles back - for ( i = 0; i < swap.length; i++ ) - if ( swap[ i ] != null ) - stack[ i ].style.display = swap[ i ]; - } - - // We should always get a number back from opacity - if ( name == "opacity" && ret == "" ) - ret = "1"; - - } else if ( elem.currentStyle ) { - var camelCase = name.replace(/\-(\w)/g, function(all, letter){ - return letter.toUpperCase(); - }); - - ret = elem.currentStyle[ name ] || elem.currentStyle[ camelCase ]; - - // From the awesome hack by Dean Edwards - // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291 - - // If we're not dealing with a regular pixel number - // but a number that has a weird ending, we need to convert it to pixels - if ( !/^\d+(px)?$/i.test( ret ) && /^\d/.test( ret ) ) { - // Remember the original values - var left = style.left, rsLeft = elem.runtimeStyle.left; - - // Put in the new values to get a computed value out - elem.runtimeStyle.left = elem.currentStyle.left; - style.left = ret || 0; - ret = style.pixelLeft + "px"; - - // Revert the changed values - style.left = left; - elem.runtimeStyle.left = rsLeft; - } - } - - return ret; - }, - - clean: function( elems, context ) { - var ret = []; - context = context || document; - // !context.createElement fails in IE with an error but returns typeof 'object' - if (typeof context.createElement == 'undefined') - context = context.ownerDocument || context[0] && context[0].ownerDocument || document; - - jQuery.each(elems, function(i, elem){ - if ( !elem ) - return; - - if ( elem.constructor == Number ) - elem += ''; - - // Convert html string into DOM nodes - if ( typeof elem == "string" ) { - // Fix "XHTML"-style tags in all browsers - elem = elem.replace(/(<(\w+)[^>]*?)\/>/g, function(all, front, tag){ - return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i) ? - all : - front + "></" + tag + ">"; - }); - - // Trim whitespace, otherwise indexOf won't work as expected - var tags = jQuery.trim( elem ).toLowerCase(), div = context.createElement("div"); - - var wrap = - // option or optgroup - !tags.indexOf("<opt") && - [ 1, "<select multiple='multiple'>", "</select>" ] || - - !tags.indexOf("<leg") && - [ 1, "<fieldset>", "</fieldset>" ] || - - tags.match(/^<(thead|tbody|tfoot|colg|cap)/) && - [ 1, "<table>", "</table>" ] || - - !tags.indexOf("<tr") && - [ 2, "<table><tbody>", "</tbody></table>" ] || - - // <thead> matched above - (!tags.indexOf("<td") || !tags.indexOf("<th")) && - [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ] || - - !tags.indexOf("<col") && - [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ] || - - // IE can't serialize <link> and <script> tags normally - jQuery.browser.msie && - [ 1, "div<div>", "</div>" ] || - - [ 0, "", "" ]; - - // Go to html and back, then peel off extra wrappers - div.innerHTML = wrap[1] + elem + wrap[2]; - - // Move to the right depth - while ( wrap[0]-- ) - div = div.lastChild; - - // Remove IE's autoinserted <tbody> from table fragments - if ( jQuery.browser.msie ) { - - // String was a <table>, *may* have spurious <tbody> - var tbody = !tags.indexOf("<table") && tags.indexOf("<tbody") < 0 ? - div.firstChild && div.firstChild.childNodes : - - // String was a bare <thead> or <tfoot> - wrap[1] == "<table>" && tags.indexOf("<tbody") < 0 ? - div.childNodes : - []; - - for ( var j = tbody.length - 1; j >= 0 ; --j ) - if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length ) - tbody[ j ].parentNode.removeChild( tbody[ j ] ); - - // IE completely kills leading whitespace when innerHTML is used - if ( /^\s/.test( elem ) ) - div.insertBefore( context.createTextNode( elem.match(/^\s*/)[0] ), div.firstChild ); - - } - - elem = jQuery.makeArray( div.childNodes ); - } - - if ( elem.length === 0 && (!jQuery.nodeName( elem, "form" ) && !jQuery.nodeName( elem, "select" )) ) - return; - - if ( elem[0] == undefined || jQuery.nodeName( elem, "form" ) || elem.options ) - ret.push( elem ); - - else - ret = jQuery.merge( ret, elem ); - - }); - - return ret; - }, - - attr: function( elem, name, value ) { - // don't set attributes on text and comment nodes - if (!elem || elem.nodeType == 3 || elem.nodeType == 8) - return undefined; - - var notxml = !jQuery.isXMLDoc( elem ), - // Whether we are setting (or getting) - set = value !== undefined, - msie = jQuery.browser.msie; - - // Try to normalize/fix the name - name = notxml && jQuery.props[ name ] || name; - - // Only do all the following if this is a node (faster for style) - // IE elem.getAttribute passes even for style - if ( elem.tagName ) { - - // These attributes require special treatment - var special = /href|src|style/.test( name ); - - // Safari mis-reports the default selected property of a hidden option - // Accessing the parent's selectedIndex property fixes it - if ( name == "selected" && jQuery.browser.safari ) - elem.parentNode.selectedIndex; - - // If applicable, access the attribute via the DOM 0 way - if ( name in elem && notxml && !special ) { - if ( set ){ - // We can't allow the type property to be changed (since it causes problems in IE) - if ( name == "type" && jQuery.nodeName( elem, "input" ) && elem.parentNode ) - throw "type property can't be changed"; - - elem[ name ] = value; - } - - // browsers index elements by id/name on forms, give priority to attributes. - if( jQuery.nodeName( elem, "form" ) && elem.getAttributeNode(name) ) - return elem.getAttributeNode( name ).nodeValue; - - return elem[ name ]; - } - - if ( msie && notxml && name == "style" ) - return jQuery.attr( elem.style, "cssText", value ); - - if ( set ) - // convert the value to a string (all browsers do this but IE) see #1070 - elem.setAttribute( name, "" + value ); - - var attr = msie && notxml && special - // Some attributes require a special call on IE - ? elem.getAttribute( name, 2 ) - : elem.getAttribute( name ); - - // Non-existent attributes return null, we normalize to undefined - return attr === null ? undefined : attr; - } - - // elem is actually elem.style ... set the style - - // IE uses filters for opacity - if ( msie && name == "opacity" ) { - if ( set ) { - // IE has trouble with opacity if it does not have layout - // Force it by setting the zoom level - elem.zoom = 1; - - // Set the alpha filter to set the opacity - elem.filter = (elem.filter || "").replace( /alpha\([^)]*\)/, "" ) + - (parseInt( value ) + '' == "NaN" ? "" : "alpha(opacity=" + value * 100 + ")"); - } - - return elem.filter && elem.filter.indexOf("opacity=") >= 0 ? - (parseFloat( elem.filter.match(/opacity=([^)]*)/)[1] ) / 100) + '': - ""; - } - - name = name.replace(/-([a-z])/ig, function(all, letter){ - return letter.toUpperCase(); - }); - - if ( set ) - elem[ name ] = value; - - return elem[ name ]; - }, - - trim: function( text ) { - return (text || "").replace( /^\s+|\s+$/g, "" ); - }, - - makeArray: function( array ) { - var ret = []; - - if( array != null ){ - var i = array.length; - //the window, strings and functions also have 'length' - if( i == null || array.split || array.setInterval || array.call ) - ret[0] = array; - else - while( i ) - ret[--i] = array[i]; - } - - return ret; - }, - - inArray: function( elem, array ) { - for ( var i = 0, length = array.length; i < length; i++ ) - // Use === because on IE, window == document - if ( array[ i ] === elem ) - return i; - - return -1; - }, - - merge: function( first, second ) { - // We have to loop this way because IE & Opera overwrite the length - // expando of getElementsByTagName - var i = 0, elem, pos = first.length; - // Also, we need to make sure that the correct elements are being returned - // (IE returns comment nodes in a '*' query) - if ( jQuery.browser.msie ) { - while ( elem = second[ i++ ] ) - if ( elem.nodeType != 8 ) - first[ pos++ ] = elem; - - } else - while ( elem = second[ i++ ] ) - first[ pos++ ] = elem; - - return first; - }, - - unique: function( array ) { - var ret = [], done = {}; - - try { - - for ( var i = 0, length = array.length; i < length; i++ ) { - var id = jQuery.data( array[ i ] ); - - if ( !done[ id ] ) { - done[ id ] = true; - ret.push( array[ i ] ); - } - } - - } catch( e ) { - ret = array; - } - - return ret; - }, - - grep: function( elems, callback, inv ) { - var ret = []; - - // Go through the array, only saving the items - // that pass the validator function - for ( var i = 0, length = elems.length; i < length; i++ ) - if ( !inv != !callback( elems[ i ], i ) ) - ret.push( elems[ i ] ); - - return ret; - }, - - map: function( elems, callback ) { - var ret = []; - - // Go through the array, translating each of the items to their - // new value (or values). - for ( var i = 0, length = elems.length; i < length; i++ ) { - var value = callback( elems[ i ], i ); - - if ( value != null ) - ret[ ret.length ] = value; - } - - return ret.concat.apply( [], ret ); - } -}); - -var userAgent = navigator.userAgent.toLowerCase(); - -// Figure out what browser is being used -jQuery.browser = { - version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [])[1], - safari: /webkit/.test( userAgent ), - opera: /opera/.test( userAgent ), - msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ), - mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ) -}; - -var styleFloat = jQuery.browser.msie ? - "styleFloat" : - "cssFloat"; - -jQuery.extend({ - // Check to see if the W3C box model is being used - boxModel: !jQuery.browser.msie || document.compatMode == "CSS1Compat", - - props: { - "for": "htmlFor", - "class": "className", - "float": styleFloat, - cssFloat: styleFloat, - styleFloat: styleFloat, - readonly: "readOnly", - maxlength: "maxLength", - cellspacing: "cellSpacing" - } -}); - -jQuery.each({ - parent: function(elem){return elem.parentNode;}, - parents: function(elem){return jQuery.dir(elem,"parentNode");}, - next: function(elem){return jQuery.nth(elem,2,"nextSibling");}, - prev: function(elem){return jQuery.nth(elem,2,"previousSibling");}, - nextAll: function(elem){return jQuery.dir(elem,"nextSibling");}, - prevAll: function(elem){return jQuery.dir(elem,"previousSibling");}, - siblings: function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);}, - children: function(elem){return jQuery.sibling(elem.firstChild);}, - contents: function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);} -}, function(name, fn){ - jQuery.fn[ name ] = function( selector ) { - var ret = jQuery.map( this, fn ); - - if ( selector && typeof selector == "string" ) - ret = jQuery.multiFilter( selector, ret ); - - return this.pushStack( jQuery.unique( ret ) ); - }; -}); - -jQuery.each({ - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after", - replaceAll: "replaceWith" -}, function(name, original){ - jQuery.fn[ name ] = function() { - var args = arguments; - - return this.each(function(){ - for ( var i = 0, length = args.length; i < length; i++ ) - jQuery( args[ i ] )[ original ]( this ); - }); - }; -}); - -jQuery.each({ - removeAttr: function( name ) { - jQuery.attr( this, name, "" ); - if (this.nodeType == 1) - this.removeAttribute( name ); - }, - - addClass: function( classNames ) { - jQuery.className.add( this, classNames ); - }, - - removeClass: function( classNames ) { - jQuery.className.remove( this, classNames ); - }, - - toggleClass: function( classNames ) { - jQuery.className[ jQuery.className.has( this, classNames ) ? "remove" : "add" ]( this, classNames ); - }, - - remove: function( selector ) { - if ( !selector || jQuery.filter( selector, [ this ] ).r.length ) { - // Prevent memory leaks - jQuery( "*", this ).add(this).each(function(){ - jQuery.event.remove(this); - jQuery.removeData(this); - }); - if (this.parentNode) - this.parentNode.removeChild( this ); - } - }, - - empty: function() { - // Remove element nodes and prevent memory leaks - jQuery( ">*", this ).remove(); - - // Remove any remaining nodes - while ( this.firstChild ) - this.removeChild( this.firstChild ); - } -}, function(name, fn){ - jQuery.fn[ name ] = function(){ - return this.each( fn, arguments ); - }; -}); - -jQuery.each([ "Height", "Width" ], function(i, name){ - var type = name.toLowerCase(); - - jQuery.fn[ type ] = function( size ) { - // Get window width or height - return this[0] == window ? - // Opera reports document.body.client[Width/Height] properly in both quirks and standards - jQuery.browser.opera && document.body[ "client" + name ] || - - // Safari reports inner[Width/Height] just fine (Mozilla and Opera include scroll bar widths) - jQuery.browser.safari && window[ "inner" + name ] || - - // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode - document.compatMode == "CSS1Compat" && document.documentElement[ "client" + name ] || document.body[ "client" + name ] : - - // Get document width or height - this[0] == document ? - // Either scroll[Width/Height] or offset[Width/Height], whichever is greater - Math.max( - Math.max(document.body["scroll" + name], document.documentElement["scroll" + name]), - Math.max(document.body["offset" + name], document.documentElement["offset" + name]) - ) : - - // Get or set width or height on the element - size == undefined ? - // Get width or height on the element - (this.length ? jQuery.css( this[0], type ) : null) : - - // Set the width or height on the element (default to pixels if value is unitless) - this.css( type, size.constructor == String ? size : size + "px" ); - }; -}); - -// Helper function used by the dimensions and offset modules -function num(elem, prop) { - return elem[0] && parseInt( jQuery.curCSS(elem[0], prop, true), 10 ) || 0; -}var chars = jQuery.browser.safari && parseInt(jQuery.browser.version) < 417 ? - "(?:[\\w*_-]|\\\\.)" : - "(?:[\\w\u0128-\uFFFF*_-]|\\\\.)", - quickChild = new RegExp("^>\\s*(" + chars + "+)"), - quickID = new RegExp("^(" + chars + "+)(#)(" + chars + "+)"), - quickClass = new RegExp("^([#.]?)(" + chars + "*)"); - -jQuery.extend({ - expr: { - "": function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);}, - "#": function(a,i,m){return a.getAttribute("id")==m[2];}, - ":": { - // Position Checks - lt: function(a,i,m){return i<m[3]-0;}, - gt: function(a,i,m){return i>m[3]-0;}, - nth: function(a,i,m){return m[3]-0==i;}, - eq: function(a,i,m){return m[3]-0==i;}, - first: function(a,i){return i==0;}, - last: function(a,i,m,r){return i==r.length-1;}, - even: function(a,i){return i%2==0;}, - odd: function(a,i){return i%2;}, - - // Child Checks - "first-child": function(a){return a.parentNode.getElementsByTagName("*")[0]==a;}, - "last-child": function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;}, - "only-child": function(a){return !jQuery.nth(a.parentNode.lastChild,2,"previousSibling");}, - - // Parent Checks - parent: function(a){return a.firstChild;}, - empty: function(a){return !a.firstChild;}, - - // Text Check - contains: function(a,i,m){return (a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;}, - - // Visibility - visible: function(a){return "hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";}, - hidden: function(a){return "hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";}, - - // Form attributes - enabled: function(a){return !a.disabled;}, - disabled: function(a){return a.disabled;}, - checked: function(a){return a.checked;}, - selected: function(a){return a.selected||jQuery.attr(a,"selected");}, - - // Form elements - text: function(a){return "text"==a.type;}, - radio: function(a){return "radio"==a.type;}, - checkbox: function(a){return "checkbox"==a.type;}, - file: function(a){return "file"==a.type;}, - password: function(a){return "password"==a.type;}, - submit: function(a){return "submit"==a.type;}, - image: function(a){return "image"==a.type;}, - reset: function(a){return "reset"==a.type;}, - button: function(a){return "button"==a.type||jQuery.nodeName(a,"button");}, - input: function(a){return /input|select|textarea|button/i.test(a.nodeName);}, - - // :has() - has: function(a,i,m){return jQuery.find(m[3],a).length;}, - - // :header - header: function(a){return /h\d/i.test(a.nodeName);}, - - // :animated - animated: function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;} - } - }, - - // The regular expressions that power the parsing engine - parse: [ - // Match: [@value='test'], [@foo] - /^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/, - - // Match: :contains('foo') - /^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/, - - // Match: :even, :last-child, #id, .class - new RegExp("^([:.#]*)(" + chars + "+)") - ], - - multiFilter: function( expr, elems, not ) { - var old, cur = []; - - while ( expr && expr != old ) { - old = expr; - var f = jQuery.filter( expr, elems, not ); - expr = f.t.replace(/^\s*,\s*/, "" ); - cur = not ? elems = f.r : jQuery.merge( cur, f.r ); - } - - return cur; - }, - - find: function( t, context ) { - // Quickly handle non-string expressions - if ( typeof t != "string" ) - return [ t ]; - - // check to make sure context is a DOM element or a document - if ( context && context.nodeType != 1 && context.nodeType != 9) - return [ ]; - - // Set the correct context (if none is provided) - context = context || document; - - // Initialize the search - var ret = [context], done = [], last, nodeName; - - // Continue while a selector expression exists, and while - // we're no longer looping upon ourselves - while ( t && last != t ) { - var r = []; - last = t; - - t = jQuery.trim(t); - - var foundToken = false, - - // An attempt at speeding up child selectors that - // point to a specific element tag - re = quickChild, - - m = re.exec(t); - - if ( m ) { - nodeName = m[1].toUpperCase(); - - // Perform our own iteration and filter - for ( var i = 0; ret[i]; i++ ) - for ( var c = ret[i].firstChild; c; c = c.nextSibling ) - if ( c.nodeType == 1 && (nodeName == "*" || c.nodeName.toUpperCase() == nodeName) ) - r.push( c ); - - ret = r; - t = t.replace( re, "" ); - if ( t.indexOf(" ") == 0 ) continue; - foundToken = true; - } else { - re = /^([>+~])\s*(\w*)/i; - - if ( (m = re.exec(t)) != null ) { - r = []; - - var merge = {}; - nodeName = m[2].toUpperCase(); - m = m[1]; - - for ( var j = 0, rl = ret.length; j < rl; j++ ) { - var n = m == "~" || m == "+" ? ret[j].nextSibling : ret[j].firstChild; - for ( ; n; n = n.nextSibling ) - if ( n.nodeType == 1 ) { - var id = jQuery.data(n); - - if ( m == "~" && merge[id] ) break; - - if (!nodeName || n.nodeName.toUpperCase() == nodeName ) { - if ( m == "~" ) merge[id] = true; - r.push( n ); - } - - if ( m == "+" ) break; - } - } - - ret = r; - - // And remove the token - t = jQuery.trim( t.replace( re, "" ) ); - foundToken = true; - } - } - - // See if there's still an expression, and that we haven't already - // matched a token - if ( t && !foundToken ) { - // Handle multiple expressions - if ( !t.indexOf(",") ) { - // Clean the result set - if ( context == ret[0] ) ret.shift(); - - // Merge the result sets - done = jQuery.merge( done, ret ); - - // Reset the context - r = ret = [context]; - - // Touch up the selector string - t = " " + t.substr(1,t.length); - - } else { - // Optimize for the case nodeName#idName - var re2 = quickID; - var m = re2.exec(t); - - // Re-organize the results, so that they're consistent - if ( m ) { - m = [ 0, m[2], m[3], m[1] ]; - - } else { - // Otherwise, do a traditional filter check for - // ID, class, and element selectors - re2 = quickClass; - m = re2.exec(t); - } - - m[2] = m[2].replace(/\\/g, ""); - - var elem = ret[ret.length-1]; - - // Try to do a global search by ID, where we can - if ( m[1] == "#" && elem && elem.getElementById && !jQuery.isXMLDoc(elem) ) { - // Optimization for HTML document case - var oid = elem.getElementById(m[2]); - - // Do a quick check for the existence of the actual ID attribute - // to avoid selecting by the name attribute in IE - // also check to insure id is a string to avoid selecting an element with the name of 'id' inside a form - if ( (jQuery.browser.msie||jQuery.browser.opera) && oid && typeof oid.id == "string" && oid.id != m[2] ) - oid = jQuery('[@id="'+m[2]+'"]', elem)[0]; - - // Do a quick check for node name (where applicable) so - // that div#foo searches will be really fast - ret = r = oid && (!m[3] || jQuery.nodeName(oid, m[3])) ? [oid] : []; - } else { - // We need to find all descendant elements - for ( var i = 0; ret[i]; i++ ) { - // Grab the tag name being searched for - var tag = m[1] == "#" && m[3] ? m[3] : m[1] != "" || m[0] == "" ? "*" : m[2]; - - // Handle IE7 being really dumb about <object>s - if ( tag == "*" && ret[i].nodeName.toLowerCase() == "object" ) - tag = "param"; - - r = jQuery.merge( r, ret[i].getElementsByTagName( tag )); - } - - // It's faster to filter by class and be done with it - if ( m[1] == "." ) - r = jQuery.classFilter( r, m[2] ); - - // Same with ID filtering - if ( m[1] == "#" ) { - var tmp = []; - - // Try to find the element with the ID - for ( var i = 0; r[i]; i++ ) - if ( r[i].getAttribute("id") == m[2] ) { - tmp = [ r[i] ]; - break; - } - - r = tmp; - } - - ret = r; - } - - t = t.replace( re2, "" ); - } - - } - - // If a selector string still exists - if ( t ) { - // Attempt to filter it - var val = jQuery.filter(t,r); - ret = r = val.r; - t = jQuery.trim(val.t); - } - } - - // An error occurred with the selector; - // just return an empty set instead - if ( t ) - ret = []; - - // Remove the root context - if ( ret && context == ret[0] ) - ret.shift(); - - // And combine the results - done = jQuery.merge( done, ret ); - - return done; - }, - - classFilter: function(r,m,not){ - m = " " + m + " "; - var tmp = []; - for ( var i = 0; r[i]; i++ ) { - var pass = (" " + r[i].className + " ").indexOf( m ) >= 0; - if ( !not && pass || not && !pass ) - tmp.push( r[i] ); - } - return tmp; - }, - - filter: function(t,r,not) { - var last; - - // Look for common filter expressions - while ( t && t != last ) { - last = t; - - var p = jQuery.parse, m; - - for ( var i = 0; p[i]; i++ ) { - m = p[i].exec( t ); - - if ( m ) { - // Remove what we just matched - t = t.substring( m[0].length ); - - m[2] = m[2].replace(/\\/g, ""); - break; - } - } - - if ( !m ) - break; - - // :not() is a special case that can be optimized by - // keeping it out of the expression list - if ( m[1] == ":" && m[2] == "not" ) - // optimize if only one selector found (most common case) - r = isSimple.test( m[3] ) ? - jQuery.filter(m[3], r, true).r : - jQuery( r ).not( m[3] ); - - // We can get a big speed boost by filtering by class here - else if ( m[1] == "." ) - r = jQuery.classFilter(r, m[2], not); - - else if ( m[1] == "[" ) { - var tmp = [], type = m[3]; - - for ( var i = 0, rl = r.length; i < rl; i++ ) { - var a = r[i], z = a[ jQuery.props[m[2]] || m[2] ]; - - if ( z == null || /href|src|selected/.test(m[2]) ) - z = jQuery.attr(a,m[2]) || ''; - - if ( (type == "" && !!z || - type == "=" && z == m[5] || - type == "!=" && z != m[5] || - type == "^=" && z && !z.indexOf(m[5]) || - type == "$=" && z.substr(z.length - m[5].length) == m[5] || - (type == "*=" || type == "~=") && z.indexOf(m[5]) >= 0) ^ not ) - tmp.push( a ); - } - - r = tmp; - - // We can get a speed boost by handling nth-child here - } else if ( m[1] == ":" && m[2] == "nth-child" ) { - var merge = {}, tmp = [], - // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6' - test = /(-?)(\d*)n((?:\+|-)?\d*)/.exec( - m[3] == "even" && "2n" || m[3] == "odd" && "2n+1" || - !/\D/.test(m[3]) && "0n+" + m[3] || m[3]), - // calculate the numbers (first)n+(last) including if they are negative - first = (test[1] + (test[2] || 1)) - 0, last = test[3] - 0; - - // loop through all the elements left in the jQuery object - for ( var i = 0, rl = r.length; i < rl; i++ ) { - var node = r[i], parentNode = node.parentNode, id = jQuery.data(parentNode); - - if ( !merge[id] ) { - var c = 1; - - for ( var n = parentNode.firstChild; n; n = n.nextSibling ) - if ( n.nodeType == 1 ) - n.nodeIndex = c++; - - merge[id] = true; - } - - var add = false; - - if ( first == 0 ) { - if ( node.nodeIndex == last ) - add = true; - } else if ( (node.nodeIndex - last) % first == 0 && (node.nodeIndex - last) / first >= 0 ) - add = true; - - if ( add ^ not ) - tmp.push( node ); - } - - r = tmp; - - // Otherwise, find the expression to execute - } else { - var fn = jQuery.expr[ m[1] ]; - if ( typeof fn == "object" ) - fn = fn[ m[2] ]; - - if ( typeof fn == "string" ) - fn = eval("false||function(a,i){return " + fn + ";}"); - - // Execute it against the current filter - r = jQuery.grep( r, function(elem, i){ - return fn(elem, i, m, r); - }, not ); - } - } - - // Return an array of filtered elements (r) - // and the modified expression string (t) - return { r: r, t: t }; - }, - - dir: function( elem, dir ){ - var matched = [], - cur = elem[dir]; - while ( cur && cur != document ) { - if ( cur.nodeType == 1 ) - matched.push( cur ); - cur = cur[dir]; - } - return matched; - }, - - nth: function(cur,result,dir,elem){ - result = result || 1; - var num = 0; - - for ( ; cur; cur = cur[dir] ) - if ( cur.nodeType == 1 && ++num == result ) - break; - - return cur; - }, - - sibling: function( n, elem ) { - var r = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType == 1 && n != elem ) - r.push( n ); - } - - return r; - } -}); -/* - * A number of helper functions used for managing events. - * Many of the ideas behind this code orignated from - * Dean Edwards' addEvent library. - */ -jQuery.event = { - - // Bind an event to an element - // Original by Dean Edwards - add: function(elem, types, handler, data) { - if ( elem.nodeType == 3 || elem.nodeType == 8 ) - return; - - // For whatever reason, IE has trouble passing the window object - // around, causing it to be cloned in the process - if ( jQuery.browser.msie && elem.setInterval ) - elem = window; - - // Make sure that the function being executed has a unique ID - if ( !handler.guid ) - handler.guid = this.guid++; - - // if data is passed, bind to handler - if( data != undefined ) { - // Create temporary function pointer to original handler - var fn = handler; - - // Create unique handler function, wrapped around original handler - handler = this.proxy( fn, function() { - // Pass arguments and context to original handler - return fn.apply(this, arguments); - }); - - // Store data in unique handler - handler.data = data; - } - - // Init the element's event structure - var events = jQuery.data(elem, "events") || jQuery.data(elem, "events", {}), - handle = jQuery.data(elem, "handle") || jQuery.data(elem, "handle", function(){ - // Handle the second event of a trigger and when - // an event is called after a page has unloaded - if ( typeof jQuery != "undefined" && !jQuery.event.triggered ) - return jQuery.event.handle.apply(arguments.callee.elem, arguments); - }); - // Add elem as a property of the handle function - // This is to prevent a memory leak with non-native - // event in IE. - handle.elem = elem; - - // Handle multiple events separated by a space - // jQuery(...).bind("mouseover mouseout", fn); - jQuery.each(types.split(/\s+/), function(index, type) { - // Namespaced event handlers - var parts = type.split("."); - type = parts[0]; - handler.type = parts[1]; - - // Get the current list of functions bound to this event - var handlers = events[type]; - - // Init the event handler queue - if (!handlers) { - handlers = events[type] = {}; - - // Check for a special event handler - // Only use addEventListener/attachEvent if the special - // events handler returns false - if ( !jQuery.event.special[type] || jQuery.event.special[type].setup.call(elem) === false ) { - // Bind the global event handler to the element - if (elem.addEventListener) - elem.addEventListener(type, handle, false); - else if (elem.attachEvent) - elem.attachEvent("on" + type, handle); - } - } - - // Add the function to the element's handler list - handlers[handler.guid] = handler; - - // Keep track of which events have been used, for global triggering - jQuery.event.global[type] = true; - }); - - // Nullify elem to prevent memory leaks in IE - elem = null; - }, - - guid: 1, - global: {}, - - // Detach an event or set of events from an element - remove: function(elem, types, handler) { - // don't do events on text and comment nodes - if ( elem.nodeType == 3 || elem.nodeType == 8 ) - return; - - var events = jQuery.data(elem, "events"), ret, index; - - if ( events ) { - // Unbind all events for the element - if ( types == undefined || (typeof types == "string" && types.charAt(0) == ".") ) - for ( var type in events ) - this.remove( elem, type + (types || "") ); - else { - // types is actually an event object here - if ( types.type ) { - handler = types.handler; - types = types.type; - } - - // Handle multiple events seperated by a space - // jQuery(...).unbind("mouseover mouseout", fn); - jQuery.each(types.split(/\s+/), function(index, type){ - // Namespaced event handlers - var parts = type.split("."); - type = parts[0]; - - if ( events[type] ) { - // remove the given handler for the given type - if ( handler ) - delete events[type][handler.guid]; - - // remove all handlers for the given type - else - for ( handler in events[type] ) - // Handle the removal of namespaced events - if ( !parts[1] || events[type][handler].type == parts[1] ) - delete events[type][handler]; - - // remove generic event handler if no more handlers exist - for ( ret in events[type] ) break; - if ( !ret ) { - if ( !jQuery.event.special[type] || jQuery.event.special[type].teardown.call(elem) === false ) { - if (elem.removeEventListener) - elem.removeEventListener(type, jQuery.data(elem, "handle"), false); - else if (elem.detachEvent) - elem.detachEvent("on" + type, jQuery.data(elem, "handle")); - } - ret = null; - delete events[type]; - } - } - }); - } - - // Remove the expando if it's no longer used - for ( ret in events ) break; - if ( !ret ) { - var handle = jQuery.data( elem, "handle" ); - if ( handle ) handle.elem = null; - jQuery.removeData( elem, "events" ); - jQuery.removeData( elem, "handle" ); - } - } - }, - - trigger: function(type, data, elem, donative, extra) { - // Clone the incoming data, if any - data = jQuery.makeArray(data); - - if ( type.indexOf("!") >= 0 ) { - type = type.slice(0, -1); - var exclusive = true; - } - - // Handle a global trigger - if ( !elem ) { - // Only trigger if we've ever bound an event for it - if ( this.global[type] ) - jQuery("*").add([window, document]).trigger(type, data); - - // Handle triggering a single element - } else { - // don't do events on text and comment nodes - if ( elem.nodeType == 3 || elem.nodeType == 8 ) - return undefined; - - var val, ret, fn = jQuery.isFunction( elem[ type ] || null ), - // Check to see if we need to provide a fake event, or not - event = !data[0] || !data[0].preventDefault; - - // Pass along a fake event - if ( event ) { - data.unshift({ - type: type, - target: elem, - preventDefault: function(){}, - stopPropagation: function(){}, - timeStamp: now() - }); - data[0][expando] = true; // no need to fix fake event - } - - // Enforce the right trigger type - data[0].type = type; - if ( exclusive ) - data[0].exclusive = true; - - // Trigger the event, it is assumed that "handle" is a function - var handle = jQuery.data(elem, "handle"); - if ( handle ) - val = handle.apply( elem, data ); - - // Handle triggering native .onfoo handlers (and on links since we don't call .click() for links) - if ( (!fn || (jQuery.nodeName(elem, 'a') && type == "click")) && elem["on"+type] && elem["on"+type].apply( elem, data ) === false ) - val = false; - - // Extra functions don't get the custom event object - if ( event ) - data.shift(); - - // Handle triggering of extra function - if ( extra && jQuery.isFunction( extra ) ) { - // call the extra function and tack the current return value on the end for possible inspection - ret = extra.apply( elem, val == null ? data : data.concat( val ) ); - // if anything is returned, give it precedence and have it overwrite the previous value - if (ret !== undefined) - val = ret; - } - - // Trigger the native events (except for clicks on links) - if ( fn && donative !== false && val !== false && !(jQuery.nodeName(elem, 'a') && type == "click") ) { - this.triggered = true; - try { - elem[ type ](); - // prevent IE from throwing an error for some hidden elements - } catch (e) {} - } - - this.triggered = false; - } - - return val; - }, - - handle: function(event) { - // returned undefined or false - var val, ret, namespace, all, handlers; - - event = arguments[0] = jQuery.event.fix( event || window.event ); - - // Namespaced event handlers - namespace = event.type.split("."); - event.type = namespace[0]; - namespace = namespace[1]; - // Cache this now, all = true means, any handler - all = !namespace && !event.exclusive; - - handlers = ( jQuery.data(this, "events") || {} )[event.type]; - - for ( var j in handlers ) { - var handler = handlers[j]; - - // Filter the functions by class - if ( all || handler.type == namespace ) { - // Pass in a reference to the handler function itself - // So that we can later remove it - event.handler = handler; - event.data = handler.data; - - ret = handler.apply( this, arguments ); - - if ( val !== false ) - val = ret; - - if ( ret === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } - - return val; - }, - - fix: function(event) { - if ( event[expando] == true ) - return event; - - // store a copy of the original event object - // and "clone" to set read-only properties - var originalEvent = event; - event = { originalEvent: originalEvent }; - var props = "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" "); - for ( var i=props.length; i; i-- ) - event[ props[i] ] = originalEvent[ props[i] ]; - - // Mark it as fixed - event[expando] = true; - - // add preventDefault and stopPropagation since - // they will not work on the clone - event.preventDefault = function() { - // if preventDefault exists run it on the original event - if (originalEvent.preventDefault) - originalEvent.preventDefault(); - // otherwise set the returnValue property of the original event to false (IE) - originalEvent.returnValue = false; - }; - event.stopPropagation = function() { - // if stopPropagation exists run it on the original event - if (originalEvent.stopPropagation) - originalEvent.stopPropagation(); - // otherwise set the cancelBubble property of the original event to true (IE) - originalEvent.cancelBubble = true; - }; - - // Fix timeStamp - event.timeStamp = event.timeStamp || now(); - - // Fix target property, if necessary - if ( !event.target ) - event.target = event.srcElement || document; // Fixes #1925 where srcElement might not be defined either - - // check if target is a textnode (safari) - if ( event.target.nodeType == 3 ) - event.target = event.target.parentNode; - - // Add relatedTarget, if necessary - if ( !event.relatedTarget && event.fromElement ) - event.relatedTarget = event.fromElement == event.target ? event.toElement : event.fromElement; - - // Calculate pageX/Y if missing and clientX/Y available - if ( event.pageX == null && event.clientX != null ) { - var doc = document.documentElement, body = document.body; - event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc.clientLeft || 0); - event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc.clientTop || 0); - } - - // Add which for key events - if ( !event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode) ) - event.which = event.charCode || event.keyCode; - - // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs) - if ( !event.metaKey && event.ctrlKey ) - event.metaKey = event.ctrlKey; - - // Add which for click: 1 == left; 2 == middle; 3 == right - // Note: button is not normalized, so don't use it - if ( !event.which && event.button ) - event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) )); - - return event; - }, - - proxy: function( fn, proxy ){ - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || proxy.guid || this.guid++; - // So proxy can be declared as an argument - return proxy; - }, - - special: { - ready: { - setup: function() { - // Make sure the ready event is setup - bindReady(); - return; - }, - - teardown: function() { return; } - }, - - mouseenter: { - setup: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).bind("mouseover", jQuery.event.special.mouseenter.handler); - return true; - }, - - teardown: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).unbind("mouseover", jQuery.event.special.mouseenter.handler); - return true; - }, - - handler: function(event) { - // If we actually just moused on to a sub-element, ignore it - if ( withinElement(event, this) ) return true; - // Execute the right handlers by setting the event type to mouseenter - event.type = "mouseenter"; - return jQuery.event.handle.apply(this, arguments); - } - }, - - mouseleave: { - setup: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).bind("mouseout", jQuery.event.special.mouseleave.handler); - return true; - }, - - teardown: function() { - if ( jQuery.browser.msie ) return false; - jQuery(this).unbind("mouseout", jQuery.event.special.mouseleave.handler); - return true; - }, - - handler: function(event) { - // If we actually just moused on to a sub-element, ignore it - if ( withinElement(event, this) ) return true; - // Execute the right handlers by setting the event type to mouseleave - event.type = "mouseleave"; - return jQuery.event.handle.apply(this, arguments); - } - } - } -}; - -jQuery.fn.extend({ - bind: function( type, data, fn ) { - return type == "unload" ? this.one(type, data, fn) : this.each(function(){ - jQuery.event.add( this, type, fn || data, fn && data ); - }); - }, - - one: function( type, data, fn ) { - var one = jQuery.event.proxy( fn || data, function(event) { - jQuery(this).unbind(event, one); - return (fn || data).apply( this, arguments ); - }); - return this.each(function(){ - jQuery.event.add( this, type, one, fn && data); - }); - }, - - unbind: function( type, fn ) { - return this.each(function(){ - jQuery.event.remove( this, type, fn ); - }); - }, - - trigger: function( type, data, fn ) { - return this.each(function(){ - jQuery.event.trigger( type, data, this, true, fn ); - }); - }, - - triggerHandler: function( type, data, fn ) { - return this[0] && jQuery.event.trigger( type, data, this[0], false, fn ); - }, - - toggle: function( fn ) { - // Save reference to arguments for access in closure - var args = arguments, i = 1; - - // link all the functions, so any of them can unbind this click handler - while( i < args.length ) - jQuery.event.proxy( fn, args[i++] ); - - return this.click( jQuery.event.proxy( fn, function(event) { - // Figure out which function to execute - this.lastToggle = ( this.lastToggle || 0 ) % i; - - // Make sure that clicks stop - event.preventDefault(); - - // and execute the function - return args[ this.lastToggle++ ].apply( this, arguments ) || false; - })); - }, - - hover: function(fnOver, fnOut) { - return this.bind('mouseenter', fnOver).bind('mouseleave', fnOut); - }, - - ready: function(fn) { - // Attach the listeners - bindReady(); - - // If the DOM is already ready - if ( jQuery.isReady ) - // Execute the function immediately - fn.call( document, jQuery ); - - // Otherwise, remember the function for later - else - // Add the function to the wait list - jQuery.readyList.push( function() { return fn.call(this, jQuery); } ); - - return this; - } -}); - -jQuery.extend({ - isReady: false, - readyList: [], - // Handle when the DOM is ready - ready: function() { - // Make sure that the DOM is not already loaded - if ( !jQuery.isReady ) { - // Remember that the DOM is ready - jQuery.isReady = true; - - // If there are functions bound, to execute - if ( jQuery.readyList ) { - // Execute all of them - jQuery.each( jQuery.readyList, function(){ - this.call( document ); - }); - - // Reset the list of functions - jQuery.readyList = null; - } - - // Trigger any bound ready events - jQuery(document).triggerHandler("ready"); - } - } -}); - -var readyBound = false; - -function bindReady(){ - if ( readyBound ) return; - readyBound = true; - - // Mozilla, Opera (see further below for it) and webkit nightlies currently support this event - if ( document.addEventListener && !jQuery.browser.opera) - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", jQuery.ready, false ); - - // If IE is used and is not in a frame - // Continually check to see if the document is ready - if ( jQuery.browser.msie && window == top ) (function(){ - if (jQuery.isReady) return; - try { - // If IE is used, use the trick by Diego Perini - // http://javascript.nwbox.com/IEContentLoaded/ - document.documentElement.doScroll("left"); - } catch( error ) { - setTimeout( arguments.callee, 0 ); - return; - } - // and execute any waiting functions - jQuery.ready(); - })(); - - if ( jQuery.browser.opera ) - document.addEventListener( "DOMContentLoaded", function () { - if (jQuery.isReady) return; - for (var i = 0; i < document.styleSheets.length; i++) - if (document.styleSheets[i].disabled) { - setTimeout( arguments.callee, 0 ); - return; - } - // and execute any waiting functions - jQuery.ready(); - }, false); - - if ( jQuery.browser.safari ) { - var numStyles; - (function(){ - if (jQuery.isReady) return; - if ( document.readyState != "loaded" && document.readyState != "complete" ) { - setTimeout( arguments.callee, 0 ); - return; - } - if ( numStyles === undefined ) - numStyles = jQuery("style, link[rel=stylesheet]").length; - if ( document.styleSheets.length != numStyles ) { - setTimeout( arguments.callee, 0 ); - return; - } - // and execute any waiting functions - jQuery.ready(); - })(); - } - - // A fallback to window.onload, that will always work - jQuery.event.add( window, "load", jQuery.ready ); -} - -jQuery.each( ("blur,focus,load,resize,scroll,unload,click,dblclick," + - "mousedown,mouseup,mousemove,mouseover,mouseout,change,select," + - "submit,keydown,keypress,keyup,error").split(","), function(i, name){ - - // Handle event binding - jQuery.fn[name] = function(fn){ - return fn ? this.bind(name, fn) : this.trigger(name); - }; -}); - -// Checks if an event happened on an element within another element -// Used in jQuery.event.special.mouseenter and mouseleave handlers -var withinElement = function(event, elem) { - // Check if mouse(over|out) are still within the same parent element - var parent = event.relatedTarget; - // Traverse up the tree - while ( parent && parent != elem ) try { parent = parent.parentNode; } catch(error) { parent = elem; } - // Return true if we actually just moused on to a sub-element - return parent == elem; -}; - -// Prevent memory leaks in IE -// And prevent errors on refresh with events like mouseover in other browsers -// Window isn't included so as not to unbind existing unload events -jQuery(window).bind("unload", function() { - jQuery("*").add(document).unbind(); -}); -jQuery.fn.extend({ - // Keep a copy of the old load - _load: jQuery.fn.load, - - load: function( url, params, callback ) { - if ( typeof url != 'string' ) - return this._load( url ); - - var off = url.indexOf(" "); - if ( off >= 0 ) { - var selector = url.slice(off, url.length); - url = url.slice(0, off); - } - - callback = callback || function(){}; - - // Default to a GET request - var type = "GET"; - - // If the second parameter was provided - if ( params ) - // If it's a function - if ( jQuery.isFunction( params ) ) { - // We assume that it's the callback - callback = params; - params = null; - - // Otherwise, build a param string - } else { - params = jQuery.param( params ); - type = "POST"; - } - - var self = this; - - // Request the remote document - jQuery.ajax({ - url: url, - type: type, - dataType: "html", - data: params, - complete: function(res, status){ - // If successful, inject the HTML into all the matched elements - if ( status == "success" || status == "notmodified" ) - // See if a selector was specified - self.html( selector ? - // Create a dummy div to hold the results - jQuery("<div/>") - // inject the contents of the document in, removing the scripts - // to avoid any 'Permission Denied' errors in IE - .append(res.responseText.replace(/<script(.|\s)*?\/script>/g, "")) - - // Locate the specified elements - .find(selector) : - - // If not, just inject the full result - res.responseText ); - - self.each( callback, [res.responseText, status, res] ); - } - }); - return this; - }, - - serialize: function() { - return jQuery.param(this.serializeArray()); - }, - serializeArray: function() { - return this.map(function(){ - return jQuery.nodeName(this, "form") ? - jQuery.makeArray(this.elements) : this; - }) - .filter(function(){ - return this.name && !this.disabled && - (this.checked || /select|textarea/i.test(this.nodeName) || - /text|hidden|password/i.test(this.type)); - }) - .map(function(i, elem){ - var val = jQuery(this).val(); - return val == null ? null : - val.constructor == Array ? - jQuery.map( val, function(val, i){ - return {name: elem.name, value: val}; - }) : - {name: elem.name, value: val}; - }).get(); - } -}); - -// Attach a bunch of functions for handling common AJAX events -jQuery.each( "ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","), function(i,o){ - jQuery.fn[o] = function(f){ - return this.bind(o, f); - }; -}); - -var jsc = now(); - -jQuery.extend({ - get: function( url, data, callback, type ) { - // shift arguments if data argument was ommited - if ( jQuery.isFunction( data ) ) { - callback = data; - data = null; - } - - return jQuery.ajax({ - type: "GET", - url: url, - data: data, - success: callback, - dataType: type - }); - }, - - getScript: function( url, callback ) { - return jQuery.get(url, null, callback, "script"); - }, - - getJSON: function( url, data, callback ) { - return jQuery.get(url, data, callback, "json"); - }, - - post: function( url, data, callback, type ) { - if ( jQuery.isFunction( data ) ) { - callback = data; - data = {}; - } - - return jQuery.ajax({ - type: "POST", - url: url, - data: data, - success: callback, - dataType: type - }); - }, - - ajaxSetup: function( settings ) { - jQuery.extend( jQuery.ajaxSettings, settings ); - }, - - ajaxSettings: { - url: location.href, - global: true, - type: "GET", - timeout: 0, - contentType: "application/x-www-form-urlencoded", - processData: true, - async: true, - data: null, - username: null, - password: null, - accepts: { - xml: "application/xml, text/xml", - html: "text/html", - script: "text/javascript, application/javascript", - json: "application/json, text/javascript", - text: "text/plain", - _default: "*/*" - } - }, - - // Last-Modified header cache for next request - lastModified: {}, - - ajax: function( s ) { - // Extend the settings, but re-extend 's' so that it can be - // checked again later (in the test suite, specifically) - s = jQuery.extend(true, s, jQuery.extend(true, {}, jQuery.ajaxSettings, s)); - - var jsonp, jsre = /=\?(&|$)/g, status, data, - type = s.type.toUpperCase(); - - // convert data if not already a string - if ( s.data && s.processData && typeof s.data != "string" ) - s.data = jQuery.param(s.data); - - // Handle JSONP Parameter Callbacks - if ( s.dataType == "jsonp" ) { - if ( type == "GET" ) { - if ( !s.url.match(jsre) ) - s.url += (s.url.match(/\?/) ? "&" : "?") + (s.jsonp || "callback") + "=?"; - } else if ( !s.data || !s.data.match(jsre) ) - s.data = (s.data ? s.data + "&" : "") + (s.jsonp || "callback") + "=?"; - s.dataType = "json"; - } - - // Build temporary JSONP function - if ( s.dataType == "json" && (s.data && s.data.match(jsre) || s.url.match(jsre)) ) { - jsonp = "jsonp" + jsc++; - - // Replace the =? sequence both in the query string and the data - if ( s.data ) - s.data = (s.data + "").replace(jsre, "=" + jsonp + "$1"); - s.url = s.url.replace(jsre, "=" + jsonp + "$1"); - - // We need to make sure - // that a JSONP style response is executed properly - s.dataType = "script"; - - // Handle JSONP-style loading - window[ jsonp ] = function(tmp){ - data = tmp; - success(); - complete(); - // Garbage collect - window[ jsonp ] = undefined; - try{ delete window[ jsonp ]; } catch(e){} - if ( head ) - head.removeChild( script ); - }; - } - - if ( s.dataType == "script" && s.cache == null ) - s.cache = false; - - if ( s.cache === false && type == "GET" ) { - var ts = now(); - // try replacing _= if it is there - var ret = s.url.replace(/(\?|&)_=.*?(&|$)/, "$1_=" + ts + "$2"); - // if nothing was replaced, add timestamp to the end - s.url = ret + ((ret == s.url) ? (s.url.match(/\?/) ? "&" : "?") + "_=" + ts : ""); - } - - // If data is available, append data to url for get requests - if ( s.data && type == "GET" ) { - s.url += (s.url.match(/\?/) ? "&" : "?") + s.data; - - // IE likes to send both get and post data, prevent this - s.data = null; - } - - // Watch for a new set of requests - if ( s.global && ! jQuery.active++ ) - jQuery.event.trigger( "ajaxStart" ); - - // Matches an absolute URL, and saves the domain - var remote = /^(?:\w+:)?\/\/([^\/?#]+)/; - - // If we're requesting a remote document - // and trying to load JSON or Script with a GET - if ( s.dataType == "script" && type == "GET" - && remote.test(s.url) && remote.exec(s.url)[1] != location.host ){ - var head = document.getElementsByTagName("head")[0]; - var script = document.createElement("script"); - script.src = s.url; - if (s.scriptCharset) - script.charset = s.scriptCharset; - - // Handle Script loading - if ( !jsonp ) { - var done = false; - - // Attach handlers for all browsers - script.onload = script.onreadystatechange = function(){ - if ( !done && (!this.readyState || - this.readyState == "loaded" || this.readyState == "complete") ) { - done = true; - success(); - complete(); - head.removeChild( script ); - } - }; - } - - head.appendChild(script); - - // We handle everything using the script element injection - return undefined; - } - - var requestDone = false; - - // Create the request object; Microsoft failed to properly - // implement the XMLHttpRequest in IE7, so we use the ActiveXObject when it is available - var xhr = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(); - - // Open the socket - // Passing null username, generates a login popup on Opera (#2865) - if( s.username ) - xhr.open(type, s.url, s.async, s.username, s.password); - else - xhr.open(type, s.url, s.async); - - // Need an extra try/catch for cross domain requests in Firefox 3 - try { - // Set the correct header, if data is being sent - if ( s.data ) - xhr.setRequestHeader("Content-Type", s.contentType); - - // Set the If-Modified-Since header, if ifModified mode. - if ( s.ifModified ) - xhr.setRequestHeader("If-Modified-Since", - jQuery.lastModified[s.url] || "Thu, 01 Jan 1970 00:00:00 GMT" ); - - // Set header so the called script knows that it's an XMLHttpRequest - xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest"); - - // Set the Accepts header for the server, depending on the dataType - xhr.setRequestHeader("Accept", s.dataType && s.accepts[ s.dataType ] ? - s.accepts[ s.dataType ] + ", */*" : - s.accepts._default ); - } catch(e){} - - // Allow custom headers/mimetypes - if ( s.beforeSend && s.beforeSend(xhr, s) === false ) { - // cleanup active request counter - s.global && jQuery.active--; - // close opended socket - xhr.abort(); - return false; - } - - if ( s.global ) - jQuery.event.trigger("ajaxSend", [xhr, s]); - - // Wait for a response to come back - var onreadystatechange = function(isTimeout){ - // The transfer is complete and the data is available, or the request timed out - if ( !requestDone && xhr && (xhr.readyState == 4 || isTimeout == "timeout") ) { - requestDone = true; - - // clear poll interval - if (ival) { - clearInterval(ival); - ival = null; - } - - status = isTimeout == "timeout" && "timeout" || - !jQuery.httpSuccess( xhr ) && "error" || - s.ifModified && jQuery.httpNotModified( xhr, s.url ) && "notmodified" || - "success"; - - if ( status == "success" ) { - // Watch for, and catch, XML document parse errors - try { - // process the data (runs the xml through httpData regardless of callback) - data = jQuery.httpData( xhr, s.dataType, s.dataFilter ); - } catch(e) { - status = "parsererror"; - } - } - - // Make sure that the request was successful or notmodified - if ( status == "success" ) { - // Cache Last-Modified header, if ifModified mode. - var modRes; - try { - modRes = xhr.getResponseHeader("Last-Modified"); - } catch(e) {} // swallow exception thrown by FF if header is not available - - if ( s.ifModified && modRes ) - jQuery.lastModified[s.url] = modRes; - - // JSONP handles its own success callback - if ( !jsonp ) - success(); - } else - jQuery.handleError(s, xhr, status); - - // Fire the complete handlers - complete(); - - // Stop memory leaks - if ( s.async ) - xhr = null; - } - }; - - if ( s.async ) { - // don't attach the handler to the request, just poll it instead - var ival = setInterval(onreadystatechange, 13); - - // Timeout checker - if ( s.timeout > 0 ) - setTimeout(function(){ - // Check to see if the request is still happening - if ( xhr ) { - // Cancel the request - xhr.abort(); - - if( !requestDone ) - onreadystatechange( "timeout" ); - } - }, s.timeout); - } - - // Send the data - try { - xhr.send(s.data); - } catch(e) { - jQuery.handleError(s, xhr, null, e); - } - - // firefox 1.5 doesn't fire statechange for sync requests - if ( !s.async ) - onreadystatechange(); - - function success(){ - // If a local callback was specified, fire it and pass it the data - if ( s.success ) - s.success( data, status ); - - // Fire the global callback - if ( s.global ) - jQuery.event.trigger( "ajaxSuccess", [xhr, s] ); - } - - function complete(){ - // Process result - if ( s.complete ) - s.complete(xhr, status); - - // The request was completed - if ( s.global ) - jQuery.event.trigger( "ajaxComplete", [xhr, s] ); - - // Handle the global AJAX counter - if ( s.global && ! --jQuery.active ) - jQuery.event.trigger( "ajaxStop" ); - } - - // return XMLHttpRequest to allow aborting the request etc. - return xhr; - }, - - handleError: function( s, xhr, status, e ) { - // If a local callback was specified, fire it - if ( s.error ) s.error( xhr, status, e ); - - // Fire the global callback - if ( s.global ) - jQuery.event.trigger( "ajaxError", [xhr, s, e] ); - }, - - // Counter for holding the number of active queries - active: 0, - - // Determines if an XMLHttpRequest was successful or not - httpSuccess: function( xhr ) { - try { - // IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450 - return !xhr.status && location.protocol == "file:" || - ( xhr.status >= 200 && xhr.status < 300 ) || xhr.status == 304 || xhr.status == 1223 || - jQuery.browser.safari && xhr.status == undefined; - } catch(e){} - return false; - }, - - // Determines if an XMLHttpRequest returns NotModified - httpNotModified: function( xhr, url ) { - try { - var xhrRes = xhr.getResponseHeader("Last-Modified"); - - // Firefox always returns 200. check Last-Modified date - return xhr.status == 304 || xhrRes == jQuery.lastModified[url] || - jQuery.browser.safari && xhr.status == undefined; - } catch(e){} - return false; - }, - - httpData: function( xhr, type, filter ) { - var ct = xhr.getResponseHeader("content-type"), - xml = type == "xml" || !type && ct && ct.indexOf("xml") >= 0, - data = xml ? xhr.responseXML : xhr.responseText; - - if ( xml && data.documentElement.tagName == "parsererror" ) - throw "parsererror"; - - // Allow a pre-filtering function to sanitize the response - if( filter ) - data = filter( data, type ); - - // If the type is "script", eval it in global context - if ( type == "script" ) - jQuery.globalEval( data ); - - // Get the JavaScript object, if JSON is used. - if ( type == "json" ) - data = eval("(" + data + ")"); - - return data; - }, - - // Serialize an array of form elements or a set of - // key/values into a query string - param: function( a ) { - var s = []; - - // If an array was passed in, assume that it is an array - // of form elements - if ( a.constructor == Array || a.jquery ) - // Serialize the form elements - jQuery.each( a, function(){ - s.push( encodeURIComponent(this.name) + "=" + encodeURIComponent( this.value ) ); - }); - - // Otherwise, assume that it's an object of key/value pairs - else - // Serialize the key/values - for ( var j in a ) - // If the value is an array then the key names need to be repeated - if ( a[j] && a[j].constructor == Array ) - jQuery.each( a[j], function(){ - s.push( encodeURIComponent(j) + "=" + encodeURIComponent( this ) ); - }); - else - s.push( encodeURIComponent(j) + "=" + encodeURIComponent( jQuery.isFunction(a[j]) ? a[j]() : a[j] ) ); - - // Return the resulting serialization - return s.join("&").replace(/%20/g, "+"); - } - -}); -jQuery.fn.extend({ - show: function(speed,callback){ - return speed ? - this.animate({ - height: "show", width: "show", opacity: "show" - }, speed, callback) : - - this.filter(":hidden").each(function(){ - this.style.display = this.oldblock || ""; - if ( jQuery.css(this,"display") == "none" ) { - var elem = jQuery("<" + this.tagName + " />").appendTo("body"); - this.style.display = elem.css("display"); - // handle an edge condition where css is - div { display:none; } or similar - if (this.style.display == "none") - this.style.display = "block"; - elem.remove(); - } - }).end(); - }, - - hide: function(speed,callback){ - return speed ? - this.animate({ - height: "hide", width: "hide", opacity: "hide" - }, speed, callback) : - - this.filter(":visible").each(function(){ - this.oldblock = this.oldblock || jQuery.css(this,"display"); - this.style.display = "none"; - }).end(); - }, - - // Save the old toggle function - _toggle: jQuery.fn.toggle, - - toggle: function( fn, fn2 ){ - return jQuery.isFunction(fn) && jQuery.isFunction(fn2) ? - this._toggle.apply( this, arguments ) : - fn ? - this.animate({ - height: "toggle", width: "toggle", opacity: "toggle" - }, fn, fn2) : - this.each(function(){ - jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ](); - }); - }, - - slideDown: function(speed,callback){ - return this.animate({height: "show"}, speed, callback); - }, - - slideUp: function(speed,callback){ - return this.animate({height: "hide"}, speed, callback); - }, - - slideToggle: function(speed, callback){ - return this.animate({height: "toggle"}, speed, callback); - }, - - fadeIn: function(speed, callback){ - return this.animate({opacity: "show"}, speed, callback); - }, - - fadeOut: function(speed, callback){ - return this.animate({opacity: "hide"}, speed, callback); - }, - - fadeTo: function(speed,to,callback){ - return this.animate({opacity: to}, speed, callback); - }, - - animate: function( prop, speed, easing, callback ) { - var optall = jQuery.speed(speed, easing, callback); - - return this[ optall.queue === false ? "each" : "queue" ](function(){ - if ( this.nodeType != 1) - return false; - - var opt = jQuery.extend({}, optall), p, - hidden = jQuery(this).is(":hidden"), self = this; - - for ( p in prop ) { - if ( prop[p] == "hide" && hidden || prop[p] == "show" && !hidden ) - return opt.complete.call(this); - - if ( p == "height" || p == "width" ) { - // Store display property - opt.display = jQuery.css(this, "display"); - - // Make sure that nothing sneaks out - opt.overflow = this.style.overflow; - } - } - - if ( opt.overflow != null ) - this.style.overflow = "hidden"; - - opt.curAnim = jQuery.extend({}, prop); - - jQuery.each( prop, function(name, val){ - var e = new jQuery.fx( self, opt, name ); - - if ( /toggle|show|hide/.test(val) ) - e[ val == "toggle" ? hidden ? "show" : "hide" : val ]( prop ); - else { - var parts = val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/), - start = e.cur(true) || 0; - - if ( parts ) { - var end = parseFloat(parts[2]), - unit = parts[3] || "px"; - - // We need to compute starting value - if ( unit != "px" ) { - self.style[ name ] = (end || 1) + unit; - start = ((end || 1) / e.cur(true)) * start; - self.style[ name ] = start + unit; - } - - // If a +=/-= token was provided, we're doing a relative animation - if ( parts[1] ) - end = ((parts[1] == "-=" ? -1 : 1) * end) + start; - - e.custom( start, end, unit ); - } else - e.custom( start, val, "" ); - } - }); - - // For JS strict compliance - return true; - }); - }, - - queue: function(type, fn){ - if ( jQuery.isFunction(type) || ( type && type.constructor == Array )) { - fn = type; - type = "fx"; - } - - if ( !type || (typeof type == "string" && !fn) ) - return queue( this[0], type ); - - return this.each(function(){ - if ( fn.constructor == Array ) - queue(this, type, fn); - else { - queue(this, type).push( fn ); - - if ( queue(this, type).length == 1 ) - fn.call(this); - } - }); - }, - - stop: function(clearQueue, gotoEnd){ - var timers = jQuery.timers; - - if (clearQueue) - this.queue([]); - - this.each(function(){ - // go in reverse order so anything added to the queue during the loop is ignored - for ( var i = timers.length - 1; i >= 0; i-- ) - if ( timers[i].elem == this ) { - if (gotoEnd) - // force the next step to be the last - timers[i](true); - timers.splice(i, 1); - } - }); - - // start the next in the queue if the last step wasn't forced - if (!gotoEnd) - this.dequeue(); - - return this; - } - -}); - -var queue = function( elem, type, array ) { - if ( elem ){ - - type = type || "fx"; - - var q = jQuery.data( elem, type + "queue" ); - - if ( !q || array ) - q = jQuery.data( elem, type + "queue", jQuery.makeArray(array) ); - - } - return q; -}; - -jQuery.fn.dequeue = function(type){ - type = type || "fx"; - - return this.each(function(){ - var q = queue(this, type); - - q.shift(); - - if ( q.length ) - q[0].call( this ); - }); -}; - -jQuery.extend({ - - speed: function(speed, easing, fn) { - var opt = speed && speed.constructor == Object ? speed : { - complete: fn || !fn && easing || - jQuery.isFunction( speed ) && speed, - duration: speed, - easing: fn && easing || easing && easing.constructor != Function && easing - }; - - opt.duration = (opt.duration && opt.duration.constructor == Number ? - opt.duration : - jQuery.fx.speeds[opt.duration]) || jQuery.fx.speeds.def; - - // Queueing - opt.old = opt.complete; - opt.complete = function(){ - if ( opt.queue !== false ) - jQuery(this).dequeue(); - if ( jQuery.isFunction( opt.old ) ) - opt.old.call( this ); - }; - - return opt; - }, - - easing: { - linear: function( p, n, firstNum, diff ) { - return firstNum + diff * p; - }, - swing: function( p, n, firstNum, diff ) { - return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum; - } - }, - - timers: [], - timerId: null, - - fx: function( elem, options, prop ){ - this.options = options; - this.elem = elem; - this.prop = prop; - - if ( !options.orig ) - options.orig = {}; - } - -}); - -jQuery.fx.prototype = { - - // Simple function for setting a style value - update: function(){ - if ( this.options.step ) - this.options.step.call( this.elem, this.now, this ); - - (jQuery.fx.step[this.prop] || jQuery.fx.step._default)( this ); - - // Set display property to block for height/width animations - if ( this.prop == "height" || this.prop == "width" ) - this.elem.style.display = "block"; - }, - - // Get the current size - cur: function(force){ - if ( this.elem[this.prop] != null && this.elem.style[this.prop] == null ) - return this.elem[ this.prop ]; - - var r = parseFloat(jQuery.css(this.elem, this.prop, force)); - return r && r > -10000 ? r : parseFloat(jQuery.curCSS(this.elem, this.prop)) || 0; - }, - - // Start an animation from one number to another - custom: function(from, to, unit){ - this.startTime = now(); - this.start = from; - this.end = to; - this.unit = unit || this.unit || "px"; - this.now = this.start; - this.pos = this.state = 0; - this.update(); - - var self = this; - function t(gotoEnd){ - return self.step(gotoEnd); - } - - t.elem = this.elem; - - jQuery.timers.push(t); - - if ( jQuery.timerId == null ) { - jQuery.timerId = setInterval(function(){ - var timers = jQuery.timers; - - for ( var i = 0; i < timers.length; i++ ) - if ( !timers[i]() ) - timers.splice(i--, 1); - - if ( !timers.length ) { - clearInterval( jQuery.timerId ); - jQuery.timerId = null; - } - }, 13); - } - }, - - // Simple 'show' function - show: function(){ - // Remember where we started, so that we can go back to it later - this.options.orig[this.prop] = jQuery.attr( this.elem.style, this.prop ); - this.options.show = true; - - // Begin the animation - this.custom(0, this.cur()); - - // Make sure that we start at a small width/height to avoid any - // flash of content - if ( this.prop == "width" || this.prop == "height" ) - this.elem.style[this.prop] = "1px"; - - // Start by showing the element - jQuery(this.elem).show(); - }, - - // Simple 'hide' function - hide: function(){ - // Remember where we started, so that we can go back to it later - this.options.orig[this.prop] = jQuery.attr( this.elem.style, this.prop ); - this.options.hide = true; - - // Begin the animation - this.custom(this.cur(), 0); - }, - - // Each step of an animation - step: function(gotoEnd){ - var t = now(); - - if ( gotoEnd || t > this.options.duration + this.startTime ) { - this.now = this.end; - this.pos = this.state = 1; - this.update(); - - this.options.curAnim[ this.prop ] = true; - - var done = true; - for ( var i in this.options.curAnim ) - if ( this.options.curAnim[i] !== true ) - done = false; - - if ( done ) { - if ( this.options.display != null ) { - // Reset the overflow - this.elem.style.overflow = this.options.overflow; - - // Reset the display - this.elem.style.display = this.options.display; - if ( jQuery.css(this.elem, "display") == "none" ) - this.elem.style.display = "block"; - } - - // Hide the element if the "hide" operation was done - if ( this.options.hide ) - this.elem.style.display = "none"; - - // Reset the properties, if the item has been hidden or shown - if ( this.options.hide || this.options.show ) - for ( var p in this.options.curAnim ) - jQuery.attr(this.elem.style, p, this.options.orig[p]); - } - - if ( done ) - // Execute the complete function - this.options.complete.call( this.elem ); - - return false; - } else { - var n = t - this.startTime; - this.state = n / this.options.duration; - - // Perform the easing function, defaults to swing - this.pos = jQuery.easing[this.options.easing || (jQuery.easing.swing ? "swing" : "linear")](this.state, n, 0, 1, this.options.duration); - this.now = this.start + ((this.end - this.start) * this.pos); - - // Perform the next step of the animation - this.update(); - } - - return true; - } - -}; - -jQuery.extend( jQuery.fx, { - speeds:{ - slow: 600, - fast: 200, - // Default speed - def: 400 - }, - step: { - scrollLeft: function(fx){ - fx.elem.scrollLeft = fx.now; - }, - - scrollTop: function(fx){ - fx.elem.scrollTop = fx.now; - }, - - opacity: function(fx){ - jQuery.attr(fx.elem.style, "opacity", fx.now); - }, - - _default: function(fx){ - fx.elem.style[ fx.prop ] = fx.now + fx.unit; - } - } -}); -// The Offset Method -// Originally By Brandon Aaron, part of the Dimension Plugin -// http://jquery.com/plugins/project/dimensions -jQuery.fn.offset = function() { - var left = 0, top = 0, elem = this[0], results; - - if ( elem ) with ( jQuery.browser ) { - var parent = elem.parentNode, - offsetChild = elem, - offsetParent = elem.offsetParent, - doc = elem.ownerDocument, - safari2 = safari && parseInt(version) < 522 && !/adobeair/i.test(userAgent), - css = jQuery.curCSS, - fixed = css(elem, "position") == "fixed"; - - // Use getBoundingClientRect if available - if ( elem.getBoundingClientRect ) { - var box = elem.getBoundingClientRect(); - - // Add the document scroll offsets - add(box.left + Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft), - box.top + Math.max(doc.documentElement.scrollTop, doc.body.scrollTop)); - - // IE adds the HTML element's border, by default it is medium which is 2px - // IE 6 and 7 quirks mode the border width is overwritable by the following css html { border: 0; } - // IE 7 standards mode, the border is always 2px - // This border/offset is typically represented by the clientLeft and clientTop properties - // However, in IE6 and 7 quirks mode the clientLeft and clientTop properties are not updated when overwriting it via CSS - // Therefore this method will be off by 2px in IE while in quirksmode - add( -doc.documentElement.clientLeft, -doc.documentElement.clientTop ); - - // Otherwise loop through the offsetParents and parentNodes - } else { - - // Initial element offsets - add( elem.offsetLeft, elem.offsetTop ); - - // Get parent offsets - while ( offsetParent ) { - // Add offsetParent offsets - add( offsetParent.offsetLeft, offsetParent.offsetTop ); - - // Mozilla and Safari > 2 does not include the border on offset parents - // However Mozilla adds the border for table or table cells - if ( mozilla && !/^t(able|d|h)$/i.test(offsetParent.tagName) || safari && !safari2 ) - border( offsetParent ); - - // Add the document scroll offsets if position is fixed on any offsetParent - if ( !fixed && css(offsetParent, "position") == "fixed" ) - fixed = true; - - // Set offsetChild to previous offsetParent unless it is the body element - offsetChild = /^body$/i.test(offsetParent.tagName) ? offsetChild : offsetParent; - // Get next offsetParent - offsetParent = offsetParent.offsetParent; - } - - // Get parent scroll offsets - while ( parent && parent.tagName && !/^body|html$/i.test(parent.tagName) ) { - // Remove parent scroll UNLESS that parent is inline or a table to work around Opera inline/table scrollLeft/Top bug - if ( !/^inline|table.*$/i.test(css(parent, "display")) ) - // Subtract parent scroll offsets - add( -parent.scrollLeft, -parent.scrollTop ); - - // Mozilla does not add the border for a parent that has overflow != visible - if ( mozilla && css(parent, "overflow") != "visible" ) - border( parent ); - - // Get next parent - parent = parent.parentNode; - } - - // Safari <= 2 doubles body offsets with a fixed position element/offsetParent or absolutely positioned offsetChild - // Mozilla doubles body offsets with a non-absolutely positioned offsetChild - if ( (safari2 && (fixed || css(offsetChild, "position") == "absolute")) || - (mozilla && css(offsetChild, "position") != "absolute") ) - add( -doc.body.offsetLeft, -doc.body.offsetTop ); - - // Add the document scroll offsets if position is fixed - if ( fixed ) - add(Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft), - Math.max(doc.documentElement.scrollTop, doc.body.scrollTop)); - } - - // Return an object with top and left properties - results = { top: top, left: left }; - } - - function border(elem) { - add( jQuery.curCSS(elem, "borderLeftWidth", true), jQuery.curCSS(elem, "borderTopWidth", true) ); - } - - function add(l, t) { - left += parseInt(l, 10) || 0; - top += parseInt(t, 10) || 0; - } - - return results; -}; - - -jQuery.fn.extend({ - position: function() { - var left = 0, top = 0, results; - - if ( this[0] ) { - // Get *real* offsetParent - var offsetParent = this.offsetParent(), - - // Get correct offsets - offset = this.offset(), - parentOffset = /^body|html$/i.test(offsetParent[0].tagName) ? { top: 0, left: 0 } : offsetParent.offset(); - - // Subtract element margins - // note: when an element has margin: auto the offsetLeft and marginLeft - // are the same in Safari causing offset.left to incorrectly be 0 - offset.top -= num( this, 'marginTop' ); - offset.left -= num( this, 'marginLeft' ); - - // Add offsetParent borders - parentOffset.top += num( offsetParent, 'borderTopWidth' ); - parentOffset.left += num( offsetParent, 'borderLeftWidth' ); - - // Subtract the two offsets - results = { - top: offset.top - parentOffset.top, - left: offset.left - parentOffset.left - }; - } - - return results; - }, - - offsetParent: function() { - var offsetParent = this[0].offsetParent; - while ( offsetParent && (!/^body|html$/i.test(offsetParent.tagName) && jQuery.css(offsetParent, 'position') == 'static') ) - offsetParent = offsetParent.offsetParent; - return jQuery(offsetParent); - } -}); - - -// Create scrollLeft and scrollTop methods -jQuery.each( ['Left', 'Top'], function(i, name) { - var method = 'scroll' + name; - - jQuery.fn[ method ] = function(val) { - if (!this[0]) return; - - return val != undefined ? - - // Set the scroll offset - this.each(function() { - this == window || this == document ? - window.scrollTo( - !i ? val : jQuery(window).scrollLeft(), - i ? val : jQuery(window).scrollTop() - ) : - this[ method ] = val; - }) : - - // Return the scroll offset - this[0] == window || this[0] == document ? - self[ i ? 'pageYOffset' : 'pageXOffset' ] || - jQuery.boxModel && document.documentElement[ method ] || - document.body[ method ] : - this[0][ method ]; - }; -}); -// Create innerHeight, innerWidth, outerHeight and outerWidth methods -jQuery.each([ "Height", "Width" ], function(i, name){ - - var tl = i ? "Left" : "Top", // top or left - br = i ? "Right" : "Bottom"; // bottom or right - - // innerHeight and innerWidth - jQuery.fn["inner" + name] = function(){ - return this[ name.toLowerCase() ]() + - num(this, "padding" + tl) + - num(this, "padding" + br); - }; - - // outerHeight and outerWidth - jQuery.fn["outer" + name] = function(margin) { - return this["inner" + name]() + - num(this, "border" + tl + "Width") + - num(this, "border" + br + "Width") + - (margin ? - num(this, "margin" + tl) + num(this, "margin" + br) : 0); - }; - -});})(); diff --git a/forum/skins/light/media/js/.svn/text-base/jquery-1.2.6.min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery-1.2.6.min.js.svn-base deleted file mode 100755 index 82b98e1d76664db1090d5622d804553c5ac66297..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery-1.2.6.min.js.svn-base +++ /dev/null @@ -1,32 +0,0 @@ -/* - * jQuery 1.2.6 - New Wave Javascript - * - * Copyright (c) 2008 John Resig (jquery.com) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * $Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008) $ - * $Rev: 5685 $ - */ -(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3])return jQuery().find(selector);return jQuery(elem);}selector=[];}}else -return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else -return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else -selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery.browser.msie&&!option.attributes.value.specified?option.text:option.value;if(one)return value;values.push(value);}}return values;}else -return(this[0].value||"").replace(/\r/g,"");}return undefined;}if(value.constructor==Number)value+='';return this.each(function(){if(this.nodeType!=1)return;if(value.constructor==Array&&/radio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else -this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else -return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script"))scripts=scripts.add(elem);else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else -jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==i){target=this;--i;}for(;i<length;i++)if((options=arguments[i])!=null)for(var name in options){var src=target[name],copy=options[name];if(target===copy)continue;if(deep&©&&typeof copy=="object"&&!copy.nodeType)target[name]=jQuery.extend(deep,src||(copy.length!=null?[]:{}),copy);else if(copy!==undefined)target[name]=copy;}return target;};var expando="jQuery"+now(),uuid=0,windowData={},exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,defaultView=document.defaultView||{};jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window.jQuery=_jQuery;return jQuery;},isFunction:function(fn){return!!fn&&typeof fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/^[\s[]?function/.test(fn+"");},isXMLDoc:function(elem){return elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&&!elem.ownerDocument.body;},globalEval:function(data){data=jQuery.trim(data);if(data){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.browser.msie)script.text=data;else -script.appendChild(document.createTextNode(data));head.insertBefore(script,head.firstChild);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])jQuery.cache[id]={};if(data!==undefined)jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando);}delete jQuery.cache[id];}},each:function(object,callback,args){var name,i=0,length=object.length;if(args){if(length==undefined){for(name in object)if(callback.apply(object[name],args)===false)break;}else -for(;i<length;)if(callback.apply(object[i++],args)===false)break;}else{if(length==undefined){for(name in object)if(callback.call(object[name],name,object[name])===false)break;}else -for(var value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}return object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=value.call(elem,i);return value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?value+"px":value;},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className))elem.className+=(elem.className?" ":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)elem.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return!jQuery.className.has(classNames,className);}).join(" "):"";},has:function(elem,className){return jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else -jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari)return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem))ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode)stack.unshift(a);for(;i<stack.length;i++)if(color(stack[i])){swap[i]=stack[i].style.display;stack[i].style.display="block";}ret=name=="display"&&swap[stack.length-1]!=null?"none":(computedStyle&&computedStyle.getPropertyValue(name))||"";for(i=0;i<swap.length;i++)if(swap[i]!=null)stack[i].style.display=swap[i];}if(name=="opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}}return ret;},clean:function(elems,context){var ret=[];context=context||document;if(typeof context.createElement=='undefined')context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;jQuery.each(elems,function(i,elem){if(!elem)return;if(elem.constructor==Number)elem+='';if(typeof elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else -ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;return elem[name];}if(msie&¬xml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call)ret[0]=array;else -while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i<length;i++)if(array[i]===elem)return i;return-1;},merge:function(first,second){var i=0,elem,pos=first.length;if(jQuery.browser.msie){while(elem=second[i++])if(elem.nodeType!=8)first[pos++]=elem;}else -while(elem=second[i++])first[pos++]=elem;return first;},unique:function(array){var ret=[],done={};try{for(var i=0,length=array.length;i<length;i++){var id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e){ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++)if(!inv!=!callback(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var ret=[];for(var i=0,length=elems.length;i<length;i++){var value=callback(elems[i],i);if(value!=null)ret[ret.length]=value;}return ret.concat.apply([],ret);}});var userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)};var styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat";jQuery.extend({boxModel:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing"}});jQuery.each({parent:function(elem){return elem.parentNode;},parents:function(elem){return jQuery.dir(elem,"parentNode");},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof selector=="string")ret=jQuery.multiFilter(selector,ret);return this.pushStack(jQuery.unique(ret));};});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(){var args=arguments;return this.each(function(){for(var i=0,length=args.length;i<length;i++)jQuery(args[i])[original](this);});};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames){jQuery.className[jQuery.className.has(this,classNames)?"remove":"add"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).add(this).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery(">*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return i<m[3]-0;},gt:function(a,i,m){return i>m[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j<rl;j++){var n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild;for(;n;n=n.nextSibling)if(n.nodeType==1){var id=jQuery.data(n);if(m=="~"&&merge[id])break;if(!nodeName||n.nodeName.toUpperCase()==nodeName){if(m=="~")merge[id]=true;r.push(n);}if(m=="+")break;}}ret=r;t=jQuery.trim(t.replace(re,""));foundToken=true;}}if(t&&!foundToken){if(!t.indexOf(",")){if(context==ret[0])ret.shift();done=jQuery.merge(done,ret);r=ret=[context];t=" "+t.substr(1,t.length);}else{var re2=quickID;var m=re2.exec(t);if(m){m=[0,m[2],m[3],m[1]];}else{re2=quickClass;m=re2.exec(t);}m[2]=m[2].replace(/\\/g,"");var elem=ret[ret.length-1];if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){var oid=elem.getElementById(m[2]);if((jQuery.browser.msie||jQuery.browser.opera)&&oid&&typeof oid.id=="string"&&oid.id!=m[2])oid=jQuery('[@id="'+m[2]+'"]',elem)[0];ret=r=oid&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[];}else{for(var i=0;ret[i];i++){var tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];if(tag=="*"&&ret[i].nodeName.toLowerCase()=="object")tag="param";r=jQuery.merge(r,ret[i].getElementsByTagName(tag));}if(m[1]==".")r=jQuery.classFilter(r,m[2]);if(m[1]=="#"){var tmp=[];for(var i=0;r[i];i++)if(r[i].getAttribute("id")==m[2]){tmp=[r[i]];break;}r=tmp;}ret=r;}t=t.replace(re2,"");}}if(t){var val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}if(t)ret=[];if(ret&&context==ret[0])ret.shift();done=jQuery.merge(done,ret);return done;},classFilter:function(r,m,not){m=" "+m+" ";var tmp=[];for(var i=0;r[i];i++){var pass=(" "+r[i].className+" ").indexOf(m)>=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i<rl;i++){var a=r[i],z=a[jQuery.props[m[2]]||m[2]];if(z==null||/href|src|selected/.test(m[2]))z=jQuery.attr(a,m[2])||'';if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i<rl;i++){var node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode);if(!merge[id]){var c=1;for(var n=parentNode.firstChild;n;n=n.nextSibling)if(n.nodeType==1)n.nodeIndex=c++;merge[id]=true;}var add=false;if(first==0){if(node.nodeIndex==last)add=true;}else if((node.nodeIndex-last)%first==0&&(node.nodeIndex-last)/first>=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered)return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else -for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;}data[0].type=type;if(exclusive)data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle)val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}return val;},fix:function(event){if(event[expando]==true)return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--)event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i<args.length)jQuery.event.proxy(fn,args[i++]);return this.click(jQuery.event.proxy(fn,function(event){this.lastToggle=(this.lastToggle||0)%i;event.preventDefault();return args[this.lastToggle++].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else -jQuery.readyList.push(function(){return fn.call(this,jQuery);});return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.call(document);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",jQuery.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)return;for(var i=0;i<document.styleSheets.length;i++)if(document.styleSheets[i].disabled){setTimeout(arguments.callee,0);return;}jQuery.ready();},false);if(jQuery.browser.safari){var numStyles;(function(){if(jQuery.isReady)return;if(document.readyState!="loaded"&&document.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(numStyles===undefined)numStyles=jQuery("style, link[rel=stylesheet]").length;if(document.styleSheets.length!=numStyles){setTimeout(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"load",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,select,"+"submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};});var withinElement=function(event,elem){var parent=event.relatedTarget;while(parent&&parent!=elem)try{parent=parent.parentNode;}catch(error){parent=elem;}return parent==elem;};jQuery(window).bind("unload",function(){jQuery("*").add(document).unbind();});jQuery.fn.extend({_load:jQuery.fn.load,load:function(url,params,callback){if(typeof url!='string')return this._load(url);var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else -xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else -jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(filter)data=filter(data,type);if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else -for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else -s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else -e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));}return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--,1);if(!timers.length){clearInterval(jQuery.timerId);jQuery.timerId=null;}},13);}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.show=true;this.custom(0,this.cur());if(this.prop=="width"||this.prop=="height")this.elem.style[this.prop]="1px";jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now();if(gotoEnd||t>this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done)this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;}return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})(); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.ajaxfileupload.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.ajaxfileupload.js.svn-base deleted file mode 100755 index 752927768ffff32d2c40ca5d6478953e732d13d7..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.ajaxfileupload.js.svn-base +++ /dev/null @@ -1,195 +0,0 @@ -jQuery.extend({ - createUploadIframe: function(id, uri){ - //create frame - var frameId = 'jUploadFrame' + id; - if(window.ActiveXObject) { - var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />'); - if(typeof uri== 'boolean'){ - io.src = 'javascript:false'; - } - else if(typeof uri== 'string'){ - io.src = uri; - } - } - else { - var io = document.createElement('iframe'); - io.id = frameId; - io.name = frameId; - } - io.style.position = 'absolute'; - io.style.top = '-1000px'; - io.style.left = '-1000px'; - - document.body.appendChild(io); - return io; - }, - createUploadForm: function(id, fileElementId) - { - //create form - var formId = 'jUploadForm' + id; - var fileId = 'jUploadFile' + id; - var form = $('<form action="" method="POST" name="' + formId + '" id="' + formId - + '" enctype="multipart/form-data"></form>'); - var oldElement = $('#' + fileElementId); - var newElement = $(oldElement).clone(); - $(oldElement).attr('id', fileId); - $(oldElement).before(newElement); - $(oldElement).appendTo(form); - //set attributes - $(form).css('position', 'absolute'); - $(form).css('top', '-1200px'); - $(form).css('left', '-1200px'); - $(form).appendTo('body'); - return form; - }, - - ajaxFileUpload: function(s) { - // TODO introduce global settings, allowing the client to modify them for all requests, not only timeout - s = jQuery.extend({}, jQuery.ajaxSettings, s); - var id = new Date().getTime() - var form = jQuery.createUploadForm(id, s.fileElementId); - var io = jQuery.createUploadIframe(id, s.secureuri); - var frameId = 'jUploadFrame' + id; - var formId = 'jUploadForm' + id; - // Watch for a new set of requests - if ( s.global && ! jQuery.active++ ) - { - jQuery.event.trigger( "ajaxStart" ); - } - var requestDone = false; - // Create the request object - var xml = {} - if ( s.global ) - jQuery.event.trigger("ajaxSend", [xml, s]); - // Wait for a response to come back - var uploadCallback = function(isTimeout) - { - var io = document.getElementById(frameId); - try { - if(io.contentWindow){ - xml.responseText = io.contentWindow.document.body ? - io.contentWindow.document.body.innerText : null; - xml.responseXML = io.contentWindow.document.XMLDocument ? - io.contentWindow.document.XMLDocument : io.contentWindow.document; - - } - else if(io.contentDocument) - { - xml.responseText = io.contentDocument.document.body ? - io.contentDocument.document.body.textContent || document.body.innerText : null; - xml.responseXML = io.contentDocument.document.XMLDocument ? - io.contentDocument.document.XMLDocument : io.contentDocument.document; - } - } - catch(e) - { - jQuery.handleError(s, xml, null, e); - } - if ( xml || isTimeout == "timeout") - { - requestDone = true; - var status; - try { - status = isTimeout != "timeout" ? "success" : "error"; - // Make sure that the request was successful or notmodified - if ( status != "error" ) - { - // process the data (runs the xml through httpData regardless of callback) - var data = jQuery.uploadHttpData( xml, s.dataType ); - // If a local callback was specified, fire it and pass it the data - if ( s.success ) - s.success( data, status ); - - // Fire the global callback - if( s.global ) - jQuery.event.trigger( "ajaxSuccess", [xml, s] ); - } else - jQuery.handleError(s, xml, status); - } catch(e) - { - status = "error"; - jQuery.handleError(s, xml, status, e); - } - - // The request was completed - if( s.global ) - jQuery.event.trigger( "ajaxComplete", [xml, s] ); - - // Handle the global AJAX counter - if ( s.global && ! --jQuery.active ) - jQuery.event.trigger( "ajaxStop" ); - - // Process result - if ( s.complete ) - s.complete(xml, status); - - jQuery(io).unbind(); - - setTimeout(function() - { try - { - $(io).remove(); - $(form).remove(); - - } catch(e) { - jQuery.handleError(s, xml, null, e); - } - }, 100) - xml = null; - } - } - // Timeout checker - if ( s.timeout > 0 ) { - setTimeout(function(){ - // Check to see if the request is still happening - if( !requestDone ) uploadCallback( "timeout" ); - }, s.timeout); - } - try - { - // var io = $('#' + frameId); - var form = $('#' + formId); - $(form).attr('action', s.url); - $(form).attr('method', 'POST'); - $(form).attr('target', frameId); - if(form.encoding) - { - form.encoding = 'multipart/form-data'; - } - else - { - form.enctype = 'multipart/form-data'; - } - $(form).submit(); - - } catch(e) - { - jQuery.handleError(s, xml, null, e); - } - if(window.attachEvent){ - document.getElementById(frameId).attachEvent('onload', uploadCallback); - } - else{ - document.getElementById(frameId).addEventListener('load', uploadCallback, false); - } - return {abort: function () {}}; - - }, - - uploadHttpData: function( r, type ) { - var data = !type; - data = type == "xml" || data ? r.responseXML : r.responseText; - // If the type is "script", eval it in global context - if ( type == "script" ) - jQuery.globalEval( data ); - // Get the JavaScript object, if JSON is used. - if ( type == "json" ) - eval( "data = " + data ); - // evaluate scripts within html - if ( type == "html" ) - jQuery("<div>").html(data).evalScripts(); - //alert($('param', data).each(function(){alert($(this).attr('value'));})); - return data; - } -}) - diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.caret.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.caret.js.svn-base deleted file mode 100755 index d22d511ba6a3c1091c083b5ba98330e214af43f0..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.caret.js.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -/* - * - * Copyright (c) 2010 C. F., Wong (<a href="http://cloudgen.w0ng.hk">Cloudgen Examplet Store</a>) - * Licensed under the MIT License: - * http://www.opensource.org/licenses/mit-license.php - * - */ -(function(k,e,i,j){k.fn.caret=function(b,l){var a,c,f=this[0],d=k.browser.msie;if(typeof b==="object"&&typeof b.start==="number"&&typeof b.end==="number"){a=b.start;c=b.end}else if(typeof b==="number"&&typeof l==="number"){a=b;c=l}else if(typeof b==="string")if((a=f.value.indexOf(b))>-1)c=a+b[e];else a=null;else if(Object.prototype.toString.call(b)==="[object RegExp]"){b=b.exec(f.value);if(b!=null){a=b.index;c=a+b[0][e]}}if(typeof a!="undefined"){if(d){d=this[0].createTextRange();d.collapse(true); -d.moveStart("character",a);d.moveEnd("character",c-a);d.select()}else{this[0].selectionStart=a;this[0].selectionEnd=c}this[0].focus();return this}else{if(d){c=document.selection;if(this[0].tagName.toLowerCase()!="textarea"){d=this.val();a=c[i]()[j]();a.moveEnd("character",d[e]);var g=a.text==""?d[e]:d.lastIndexOf(a.text);a=c[i]()[j]();a.moveStart("character",-d[e]);var h=a.text[e]}else{a=c[i]();c=a[j]();c.moveToElementText(this[0]);c.setEndPoint("EndToEnd",a);g=c.text[e]-a.text[e];h=g+a.text[e]}}else{g= -f.selectionStart;h=f.selectionEnd}a=f.value.substring(g,h);return{start:g,end:h,text:a,replace:function(m){return f.value.substring(0,g)+m+f.value.substring(h,f.value[e])}}}}})(jQuery,"length","createRange","duplicate"); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.flot.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.flot.js.svn-base deleted file mode 100755 index 83b619290bf43a37774e1b912b73946bebfd10a5..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.flot.js.svn-base +++ /dev/null @@ -1,2421 +0,0 @@ -/* Javascript plotting library for jQuery, v. 0.5. - * - * Released under the MIT license by IOLA, December 2007. - * - */ - -(function($) { - function Plot(target_, data_, options_) { - // data is on the form: - // [ series1, series2 ... ] - // where series is either just the data as [ [x1, y1], [x2, y2], ... ] - // or { data: [ [x1, y1], [x2, y2], ... ], label: "some label" } - - var series = [], - options = { - // the color theme used for graphs - colors: ["#edc240", "#afd8f8", "#cb4b4b", "#4da74d", "#9440ed"], - legend: { - show: true, - noColumns: 1, // number of colums in legend table - labelFormatter: null, // fn: string -> string - labelBoxBorderColor: "#ccc", // border color for the little label boxes - container: null, // container (as jQuery object) to put legend in, null means default on top of graph - position: "ne", // position of default legend container within plot - margin: 5, // distance from grid edge to default legend container within plot - backgroundColor: null, // null means auto-detect - backgroundOpacity: 0.85 // set to 0 to avoid background - }, - xaxis: { - mode: null, // null or "time" - min: null, // min. value to show, null means set automatically - max: null, // max. value to show, null means set automatically - autoscaleMargin: null, // margin in % to add if auto-setting min/max - ticks: null, // either [1, 3] or [[1, "a"], 3] or (fn: axis info -> ticks) or app. number of ticks for auto-ticks - tickFormatter: null, // fn: number -> string - labelWidth: null, // size of tick labels in pixels - labelHeight: null, - - // mode specific options - tickDecimals: null, // no. of decimals, null means auto - tickSize: null, // number or [number, "unit"] - minTickSize: null, // number or [number, "unit"] - monthNames: null, // list of names of months - timeformat: null // format string to use - }, - yaxis: { - autoscaleMargin: 0.02 - }, - x2axis: { - autoscaleMargin: null - }, - y2axis: { - autoscaleMargin: 0.02 - }, - points: { - show: false, - radius: 3, - lineWidth: 2, // in pixels - fill: true, - fillColor: "#ffffff" - }, - lines: { - // we don't put in show: false so we can see - // whether lines were actively disabled - lineWidth: 2, // in pixels - fill: false, - fillColor: null, - steps: false - }, - bars: { - show: false, - lineWidth: 2, // in pixels - barWidth: 1, // in units of the x axis - fill: true, - fillColor: null, - align: "left", // or "center" - horizontal: false // when horizontal, left is now top - }, - threshold: null, // or { below: number, color: color spec} - grid: { - color: "#545454", // primary color used for outline and labels - backgroundColor: null, // null for transparent, else color - tickColor: "#dddddd", // color used for the ticks - labelMargin: 5, // in pixels - borderWidth: 2, // in pixels - borderColor: null, // set if different from the grid color - markings: null, // array of ranges or fn: axes -> array of ranges - markingsColor: "#f4f4f4", - markingsLineWidth: 2, - // interactive stuff - clickable: false, - hoverable: false, - autoHighlight: true, // highlight in case mouse is near - mouseActiveRadius: 10 // how far the mouse can be away to activate an item - }, - selection: { - mode: null, // one of null, "x", "y" or "xy" - color: "#e8cfac" - }, - crosshair: { - mode: null, // one of null, "x", "y" or "xy", - color: "#aa0000" - }, - shadowSize: 3 - }, - canvas = null, // the canvas for the plot itself - overlay = null, // canvas for interactive stuff on top of plot - eventHolder = null, // jQuery object that events should be bound to - ctx = null, octx = null, - target = $(target_), - axes = { xaxis: {}, yaxis: {}, x2axis: {}, y2axis: {} }, - plotOffset = { left: 0, right: 0, top: 0, bottom: 0}, - canvasWidth = 0, canvasHeight = 0, - plotWidth = 0, plotHeight = 0, - // dedicated to storing data for buggy standard compliance cases - workarounds = {}; - - this.setData = setData; - this.setupGrid = setupGrid; - this.draw = draw; - this.clearSelection = clearSelection; - this.setSelection = setSelection; - this.getCanvas = function() { return canvas; }; - this.getPlotOffset = function() { return plotOffset; }; - this.getData = function() { return series; }; - this.getAxes = function() { return axes; }; - this.setCrosshair = setCrosshair; - this.clearCrosshair = function () { setCrosshair(null); }; - this.highlight = highlight; - this.unhighlight = unhighlight; - - // initialize - parseOptions(options_); - setData(data_); - constructCanvas(); - setupGrid(); - draw(); - - - function setData(d) { - series = parseData(d); - - fillInSeriesOptions(); - processData(); - } - - function parseData(d) { - var res = []; - for (var i = 0; i < d.length; ++i) { - var s; - if (d[i].data) { - s = {}; - for (var v in d[i]) - s[v] = d[i][v]; - } - else { - s = { data: d[i] }; - } - res.push(s); - } - - return res; - } - - function parseOptions(o) { - $.extend(true, options, o); - if (options.grid.borderColor == null) - options.grid.borderColor = options.grid.color - // backwards compatibility, to be removed in future - if (options.xaxis.noTicks && options.xaxis.ticks == null) - options.xaxis.ticks = options.xaxis.noTicks; - if (options.yaxis.noTicks && options.yaxis.ticks == null) - options.yaxis.ticks = options.yaxis.noTicks; - if (options.grid.coloredAreas) - options.grid.markings = options.grid.coloredAreas; - if (options.grid.coloredAreasColor) - options.grid.markingsColor = options.grid.coloredAreasColor; - } - - function fillInSeriesOptions() { - var i; - - // collect what we already got of colors - var neededColors = series.length, - usedColors = [], - assignedColors = []; - for (i = 0; i < series.length; ++i) { - var sc = series[i].color; - if (sc != null) { - --neededColors; - if (typeof sc == "number") - assignedColors.push(sc); - else - usedColors.push(parseColor(series[i].color)); - } - } - - // we might need to generate more colors if higher indices - // are assigned - for (i = 0; i < assignedColors.length; ++i) { - neededColors = Math.max(neededColors, assignedColors[i] + 1); - } - - // produce colors as needed - var colors = [], variation = 0; - i = 0; - while (colors.length < neededColors) { - var c; - if (options.colors.length == i) // check degenerate case - c = new Color(100, 100, 100); - else - c = parseColor(options.colors[i]); - - // vary color if needed - var sign = variation % 2 == 1 ? -1 : 1; - var factor = 1 + sign * Math.ceil(variation / 2) * 0.2; - c.scale(factor, factor, factor); - - // FIXME: if we're getting to close to something else, - // we should probably skip this one - colors.push(c); - - ++i; - if (i >= options.colors.length) { - i = 0; - ++variation; - } - } - - // fill in the options - var colori = 0, s; - for (i = 0; i < series.length; ++i) { - s = series[i]; - - // assign colors - if (s.color == null) { - s.color = colors[colori].toString(); - ++colori; - } - else if (typeof s.color == "number") - s.color = colors[s.color].toString(); - - // copy the rest - s.lines = $.extend(true, {}, options.lines, s.lines); - s.points = $.extend(true, {}, options.points, s.points); - s.bars = $.extend(true, {}, options.bars, s.bars); - - // turn on lines automatically in case nothing is set - if (s.lines.show == null && !s.bars.show && !s.points.show) - s.lines.show = true; - if (s.shadowSize == null) - s.shadowSize = options.shadowSize; - - if (!s.xaxis) - s.xaxis = axes.xaxis; - - if (s.xaxis == 1) - s.xaxis = axes.xaxis; - else if (s.xaxis == 2) - s.xaxis = axes.x2axis; - - if (!s.yaxis) - s.yaxis = axes.yaxis; - - if (s.yaxis == 1) - s.yaxis = axes.yaxis; - else if (s.yaxis == 2) - s.yaxis = axes.y2axis; - - if (!s.threshold) - s.threshold = options.threshold; - s.subseries = null; - } - } - - function processData() { - var topSentry = Number.POSITIVE_INFINITY, - bottomSentry = Number.NEGATIVE_INFINITY, - axis, i, j, k, m, s; - - for (axis in axes) { - axes[axis].datamin = topSentry; - axes[axis].datamax = bottomSentry; - axes[axis].min = options[axis].min; - axes[axis].max = options[axis].max; - axes[axis].used = false; - } - - for (i = 0; i < series.length; ++i) { - s = series[i]; - s.datapoints = { points: [], incr: 2 }; - - var data = s.data, - points = s.datapoints.points, - axisx = s.xaxis, axisy = s.yaxis, - xmin = topSentry, xmax = bottomSentry, - ymin = topSentry, ymax = bottomSentry, - x, y, p, incr, format = []; - - // determine the increment - if (s.bars.show) { - s.datapoints.incr = 3; - format.push({ d: 0 }); - } - - /* - // examine data to find out how to copy - for (j = 0; j < data.length; ++j) { - }*/ - - - axisx.used = axisy.used = true; - incr = s.datapoints.incr; - - for (j = k = 0; j < data.length; ++j, k += incr) { - p = data[j]; - x = null; - y = null; - - if (data[j] != null) { - x = p[0]; - y = p[1]; - } - - // convert to number - if (x != null && !isNaN(x = +x)) { - if (x < xmin) - xmin = x; - if (x > xmax) - xmax = x - } - else - x = null; - - if (y != null && !isNaN(y = +y)) { - if (y < ymin) - ymin = y; - if (y > ymax) - ymax = y; - } - else - y = null; - - if (x == null || y == null) - x = y = null; // make sure everything is cleared - - for (m = 2; m < incr; ++m) - points[k + m] = p[m] == null ? format[m-2].d : p[m]; - - points[k + 1] = y; - points[k] = x; - } - - if (s.bars.show) { - // make sure we got room for the bar on the dancing floor - var delta = s.bars.align == "left" ? 0 : -s.bars.barWidth/2; - if(s.bars.horizontal) { - ymin += delta; - ymax += delta + s.bars.barWidth; - } - else { - xmin += delta; - xmax += delta + s.bars.barWidth; - } - } - - axisx.datamin = Math.min(axisx.datamin, xmin); - axisx.datamax = Math.max(axisx.datamax, xmax); - axisy.datamin = Math.min(axisy.datamin, ymin); - axisy.datamax = Math.max(axisy.datamax, ymax); - - - // step charts - if (s.lines.show && s.lines.steps) { - p = []; - // copy, inserting extra points to make steps - for (j = k = 0; j < points.length; j += incr, k += incr) { - x = points[j]; - y = points[j + 1]; - if (j > 0 - && points[j - incr] != null - && x != null - && points[j - incr + 1] != y) { - p[k] = x; - p[k + 1] = points[j - incr + 1]; - k += incr; - } - - p[k] = x; - p[k + 1] = y; - } - s.datapoints.linespoints = p; - } - - // possibly split data points because of threshold - if (s.threshold) { - var orig = $.extend({}, s), thresholded = $.extend({}, s); - orig.datapoints = { points: [], incr: incr }; - thresholded.datapoints = { points: [], incr: incr }; - - thresholded.color = s.threshold.color; - - var below = s.threshold.below, - origpoints = orig.datapoints.points, - threspoints = thresholded.datapoints.points; - - // ordinary points - for (j = 0; j < points.length; j += incr) { - x = points[j]; - y = points[j + 1]; - - if (y < below) - p = threspoints; - else - p = origpoints; - - p.push(x); - p.push(y); - } - - // possibly split lines - if (s.lines.show) { - var lp = s.datapoints.linespoints || points; - - origpoints = []; - threspoints = []; - p = origpoints; - - for (j = 0; j < lp.length; j += incr) { - x = lp[j]; - y = lp[j + 1]; - - var prevp = p; - if (y != null) { - if (y < below) - p = threspoints; - else - p = origpoints; - } - - if (p != prevp && x != null && j > 0 && lp[j - incr] != null) { - // find intersection and add it to both - k = (x - lp[j - incr]) / (y - lp[j - incr + 1]) * (below - y) + x; - prevp.push(k); - prevp.push(below); - p.push(null); // start new segment - p.push(null); - p.push(k); - p.push(below); - } - - p.push(x); - p.push(y); - } - - orig.datapoints.linespoints = origpoints - thresholded.datapoints.linespoints = threspoints; - } - - s.subseries = [orig, thresholded]; - } - } - } - - function constructCanvas() { - function makeCanvas(width, height) { - var c = document.createElement('canvas'); - c.width = width; - c.height = height; - if ($.browser.msie) // excanvas hack - c = window.G_vmlCanvasManager.initElement(c); - return c; - } - - canvasWidth = target.width(); - canvasHeight = target.height(); - target.html(""); // clear target - if (target.css("position") == 'static') - target.css("position", "relative"); // for positioning labels and overlay - - if (canvasWidth <= 0 || canvasHeight <= 0) - throw "Invalid dimensions for plot, width = " + canvasWidth + ", height = " + canvasHeight; - - // the canvas - canvas = $(makeCanvas(canvasWidth, canvasHeight)).appendTo(target).get(0); - ctx = canvas.getContext("2d"); - - // overlay canvas for interactive features - overlay = $(makeCanvas(canvasWidth, canvasHeight)).css({ position: 'absolute', left: 0, top: 0 }).appendTo(target).get(0); - octx = overlay.getContext("2d"); - - // we include the canvas in the event holder too, because IE 7 - // sometimes has trouble with the stacking order - eventHolder = $([overlay, canvas]); - - // bind events - if (options.selection.mode != null || options.crosshair.mode != null - || options.grid.hoverable) { - // FIXME: temp. work-around until jQuery bug 4398 is fixed - eventHolder.each(function () { - this.onmousemove = onMouseMove; - }); - - if (options.selection.mode != null) - eventHolder.mousedown(onMouseDown); - } - - if (options.crosshair.mode != null) - eventHolder.mouseout(onMouseOut); - - if (options.grid.clickable) - eventHolder.click(onClick); - } - - function setupGrid() { - function setupAxis(axis, options) { - setRange(axis, options); - prepareTickGeneration(axis, options); - setTicks(axis, options); - // add transformation helpers - if (axis == axes.xaxis || axis == axes.x2axis) { - // data point to canvas coordinate - axis.p2c = function (p) { return (p - axis.min) * axis.scale; }; - // canvas coordinate to data point - axis.c2p = function (c) { return axis.min + c / axis.scale; }; - } - else { - axis.p2c = function (p) { return (axis.max - p) * axis.scale; }; - axis.c2p = function (p) { return axis.max - p / axis.scale; }; - } - } - - for (var axis in axes) - setupAxis(axes[axis], options[axis]); - - setSpacing(); - insertLabels(); - insertLegend(); - } - - function setRange(axis, axisOptions) { - var min = axisOptions.min != null ? +axisOptions.min : axis.datamin, - max = axisOptions.max != null ? +axisOptions.max : axis.datamax; - - // degenerate case - if (min == Number.POSITIVE_INFINITY) - min = 0; - if (max == Number.NEGATIVE_INFINITY) - max = 1; - - if (max - min == 0.0) { - // degenerate case - var widen = max == 0 ? 1 : 0.01; - - if (axisOptions.min == null) - min -= widen; - // alway widen max if we couldn't widen min to ensure we - // don't fall into min == max which doesn't work - if (axisOptions.max == null || axisOptions.min != null) - max += widen; - } - else { - // consider autoscaling - var margin = axisOptions.autoscaleMargin; - if (margin != null) { - if (axisOptions.min == null) { - min -= (max - min) * margin; - // make sure we don't go below zero if all values - // are positive - if (min < 0 && axis.datamin >= 0) - min = 0; - } - if (axisOptions.max == null) { - max += (max - min) * margin; - if (max > 0 && axis.datamax <= 0) - max = 0; - } - } - } - axis.min = min; - axis.max = max; - } - - function prepareTickGeneration(axis, axisOptions) { - // estimate number of ticks - var noTicks; - if (typeof axisOptions.ticks == "number" && axisOptions.ticks > 0) - noTicks = axisOptions.ticks; - else if (axis == axes.xaxis || axis == axes.x2axis) - noTicks = canvasWidth / 100; - else - noTicks = canvasHeight / 60; - - var delta = (axis.max - axis.min) / noTicks; - var size, generator, unit, formatter, i, magn, norm; - - if (axisOptions.mode == "time") { - // pretty handling of time - - // map of app. size of time units in milliseconds - var timeUnitSize = { - "second": 1000, - "minute": 60 * 1000, - "hour": 60 * 60 * 1000, - "day": 24 * 60 * 60 * 1000, - "month": 30 * 24 * 60 * 60 * 1000, - "year": 365.2425 * 24 * 60 * 60 * 1000 - }; - - - // the allowed tick sizes, after 1 year we use - // an integer algorithm - var spec = [ - [1, "second"], [2, "second"], [5, "second"], [10, "second"], - [30, "second"], - [1, "minute"], [2, "minute"], [5, "minute"], [10, "minute"], - [30, "minute"], - [1, "hour"], [2, "hour"], [4, "hour"], - [8, "hour"], [12, "hour"], - [1, "day"], [2, "day"], [3, "day"], - [0.25, "month"], [0.5, "month"], [1, "month"], - [2, "month"], [3, "month"], [6, "month"], - [1, "year"] - ]; - - var minSize = 0; - if (axisOptions.minTickSize != null) { - if (typeof axisOptions.tickSize == "number") - minSize = axisOptions.tickSize; - else - minSize = axisOptions.minTickSize[0] * timeUnitSize[axisOptions.minTickSize[1]]; - } - - for (i = 0; i < spec.length - 1; ++i) - if (delta < (spec[i][0] * timeUnitSize[spec[i][1]] - + spec[i + 1][0] * timeUnitSize[spec[i + 1][1]]) / 2 - && spec[i][0] * timeUnitSize[spec[i][1]] >= minSize) - break; - size = spec[i][0]; - unit = spec[i][1]; - - // special-case the possibility of several years - if (unit == "year") { - magn = Math.pow(10, Math.floor(Math.log(delta / timeUnitSize.year) / Math.LN10)); - norm = (delta / timeUnitSize.year) / magn; - if (norm < 1.5) - size = 1; - else if (norm < 3) - size = 2; - else if (norm < 7.5) - size = 5; - else - size = 10; - - size *= magn; - } - - if (axisOptions.tickSize) { - size = axisOptions.tickSize[0]; - unit = axisOptions.tickSize[1]; - } - - generator = function(axis) { - var ticks = [], - tickSize = axis.tickSize[0], unit = axis.tickSize[1], - d = new Date(axis.min); - - var step = tickSize * timeUnitSize[unit]; - - if (unit == "second") - d.setUTCSeconds(floorInBase(d.getUTCSeconds(), tickSize)); - if (unit == "minute") - d.setUTCMinutes(floorInBase(d.getUTCMinutes(), tickSize)); - if (unit == "hour") - d.setUTCHours(floorInBase(d.getUTCHours(), tickSize)); - if (unit == "month") - d.setUTCMonth(floorInBase(d.getUTCMonth(), tickSize)); - if (unit == "year") - d.setUTCFullYear(floorInBase(d.getUTCFullYear(), tickSize)); - - // reset smaller components - d.setUTCMilliseconds(0); - if (step >= timeUnitSize.minute) - d.setUTCSeconds(0); - if (step >= timeUnitSize.hour) - d.setUTCMinutes(0); - if (step >= timeUnitSize.day) - d.setUTCHours(0); - if (step >= timeUnitSize.day * 4) - d.setUTCDate(1); - if (step >= timeUnitSize.year) - d.setUTCMonth(0); - - - var carry = 0, v = Number.NaN, prev; - do { - prev = v; - v = d.getTime(); - ticks.push({ v: v, label: axis.tickFormatter(v, axis) }); - if (unit == "month") { - if (tickSize < 1) { - // a bit complicated - we'll divide the month - // up but we need to take care of fractions - // so we don't end up in the middle of a day - d.setUTCDate(1); - var start = d.getTime(); - d.setUTCMonth(d.getUTCMonth() + 1); - var end = d.getTime(); - d.setTime(v + carry * timeUnitSize.hour + (end - start) * tickSize); - carry = d.getUTCHours(); - d.setUTCHours(0); - } - else - d.setUTCMonth(d.getUTCMonth() + tickSize); - } - else if (unit == "year") { - d.setUTCFullYear(d.getUTCFullYear() + tickSize); - } - else - d.setTime(v + step); - } while (v < axis.max && v != prev); - - return ticks; - }; - - formatter = function (v, axis) { - var d = new Date(v); - - // first check global format - if (axisOptions.timeformat != null) - return $.plot.formatDate(d, axisOptions.timeformat, axisOptions.monthNames); - - var t = axis.tickSize[0] * timeUnitSize[axis.tickSize[1]]; - var span = axis.max - axis.min; - - if (t < timeUnitSize.minute) - fmt = "%h:%M:%S"; - else if (t < timeUnitSize.day) { - if (span < 2 * timeUnitSize.day) - fmt = "%h:%M"; - else - fmt = "%b %d %h:%M"; - } - else if (t < timeUnitSize.month) - fmt = "%b %d"; - else if (t < timeUnitSize.year) { - if (span < timeUnitSize.year) - fmt = "%b"; - else - fmt = "%b %y"; - } - else - fmt = "%y"; - - return $.plot.formatDate(d, fmt, axisOptions.monthNames); - }; - } - else { - // pretty rounding of base-10 numbers - var maxDec = axisOptions.tickDecimals; - var dec = -Math.floor(Math.log(delta) / Math.LN10); - if (maxDec != null && dec > maxDec) - dec = maxDec; - - magn = Math.pow(10, -dec); - norm = delta / magn; // norm is between 1.0 and 10.0 - - if (norm < 1.5) - size = 1; - else if (norm < 3) { - size = 2; - // special case for 2.5, requires an extra decimal - if (norm > 2.25 && (maxDec == null || dec + 1 <= maxDec)) { - size = 2.5; - ++dec; - } - } - else if (norm < 7.5) - size = 5; - else - size = 10; - - size *= magn; - - if (axisOptions.minTickSize != null && size < axisOptions.minTickSize) - size = axisOptions.minTickSize; - - if (axisOptions.tickSize != null) - size = axisOptions.tickSize; - - axis.tickDecimals = Math.max(0, (maxDec != null) ? maxDec : dec); - - generator = function (axis) { - var ticks = []; - - // spew out all possible ticks - var start = floorInBase(axis.min, axis.tickSize), - i = 0, v = Number.NaN, prev; - do { - prev = v; - v = start + i * axis.tickSize; - ticks.push({ v: v, label: axis.tickFormatter(v, axis) }); - ++i; - } while (v < axis.max && v != prev); - return ticks; - }; - - formatter = function (v, axis) { - return v.toFixed(axis.tickDecimals); - }; - } - - axis.tickSize = unit ? [size, unit] : size; - axis.tickGenerator = generator; - if ($.isFunction(axisOptions.tickFormatter)) - axis.tickFormatter = function (v, axis) { return "" + axisOptions.tickFormatter(v, axis); }; - else - axis.tickFormatter = formatter; - if (axisOptions.labelWidth != null) - axis.labelWidth = axisOptions.labelWidth; - if (axisOptions.labelHeight != null) - axis.labelHeight = axisOptions.labelHeight; - } - - function setTicks(axis, axisOptions) { - axis.ticks = []; - - if (!axis.used) - return; - - if (axisOptions.ticks == null) - axis.ticks = axis.tickGenerator(axis); - else if (typeof axisOptions.ticks == "number") { - if (axisOptions.ticks > 0) - axis.ticks = axis.tickGenerator(axis); - } - else if (axisOptions.ticks) { - var ticks = axisOptions.ticks; - - if ($.isFunction(ticks)) - // generate the ticks - ticks = ticks({ min: axis.min, max: axis.max }); - - // clean up the user-supplied ticks, copy them over - var i, v; - for (i = 0; i < ticks.length; ++i) { - var label = null; - var t = ticks[i]; - if (typeof t == "object") { - v = t[0]; - if (t.length > 1) - label = t[1]; - } - else - v = t; - if (label == null) - label = axis.tickFormatter(v, axis); - axis.ticks[i] = { v: v, label: label }; - } - } - - if (axisOptions.autoscaleMargin != null && axis.ticks.length > 0) { - // snap to ticks - if (axisOptions.min == null) - axis.min = Math.min(axis.min, axis.ticks[0].v); - if (axisOptions.max == null && axis.ticks.length > 1) - axis.max = Math.min(axis.max, axis.ticks[axis.ticks.length - 1].v); - } - } - - function setSpacing() { - function measureXLabels(axis) { - // to avoid measuring the widths of the labels, we - // construct fixed-size boxes and put the labels inside - // them, we don't need the exact figures and the - // fixed-size box content is easy to center - if (axis.labelWidth == null) - axis.labelWidth = canvasWidth / 6; - - // measure x label heights - if (axis.labelHeight == null) { - labels = []; - for (i = 0; i < axis.ticks.length; ++i) { - l = axis.ticks[i].label; - if (l) - labels.push('<div class="tickLabel" style="float:left;width:' + axis.labelWidth + 'px">' + l + '</div>'); - } - - axis.labelHeight = 0; - if (labels.length > 0) { - var dummyDiv = $('<div style="position:absolute;top:-10000px;width:10000px;font-size:smaller">' - + labels.join("") + '<div style="clear:left"></div></div>').appendTo(target); - axis.labelHeight = dummyDiv.height(); - dummyDiv.remove(); - } - } - } - - function measureYLabels(axis) { - if (axis.labelWidth == null || axis.labelHeight == null) { - var i, labels = [], l; - // calculate y label dimensions - for (i = 0; i < axis.ticks.length; ++i) { - l = axis.ticks[i].label; - if (l) - labels.push('<div class="tickLabel">' + l + '</div>'); - } - - if (labels.length > 0) { - var dummyDiv = $('<div style="position:absolute;top:-10000px;font-size:smaller">' - + labels.join("") + '</div>').appendTo(target); - if (axis.labelWidth == null) - axis.labelWidth = dummyDiv.width(); - if (axis.labelHeight == null) - axis.labelHeight = dummyDiv.find("div").height(); - dummyDiv.remove(); - } - - if (axis.labelWidth == null) - axis.labelWidth = 0; - if (axis.labelHeight == null) - axis.labelHeight = 0; - } - } - - measureXLabels(axes.xaxis); - measureYLabels(axes.yaxis); - measureXLabels(axes.x2axis); - measureYLabels(axes.y2axis); - - // get the most space needed around the grid for things - // that may stick out - var maxOutset = options.grid.borderWidth; - for (i = 0; i < series.length; ++i) - maxOutset = Math.max(maxOutset, 2 * (series[i].points.radius + series[i].points.lineWidth/2)); - - plotOffset.left = plotOffset.right = plotOffset.top = plotOffset.bottom = maxOutset; - - var margin = options.grid.labelMargin + options.grid.borderWidth; - - if (axes.xaxis.labelHeight > 0) - plotOffset.bottom = Math.max(maxOutset, axes.xaxis.labelHeight + margin); - if (axes.yaxis.labelWidth > 0) - plotOffset.left = Math.max(maxOutset, axes.yaxis.labelWidth + margin); - - if (axes.x2axis.labelHeight > 0) - plotOffset.top = Math.max(maxOutset, axes.x2axis.labelHeight + margin); - - if (axes.y2axis.labelWidth > 0) - plotOffset.right = Math.max(maxOutset, axes.y2axis.labelWidth + margin); - - plotWidth = canvasWidth - plotOffset.left - plotOffset.right; - plotHeight = canvasHeight - plotOffset.bottom - plotOffset.top; - - // precompute how much the axis is scaling a point in canvas space - axes.xaxis.scale = plotWidth / (axes.xaxis.max - axes.xaxis.min); - axes.yaxis.scale = plotHeight / (axes.yaxis.max - axes.yaxis.min); - axes.x2axis.scale = plotWidth / (axes.x2axis.max - axes.x2axis.min); - axes.y2axis.scale = plotHeight / (axes.y2axis.max - axes.y2axis.min); - } - - function draw() { - drawGrid(); - for (var i = 0; i < series.length; ++i) { - var s = series[i]; - if (s.subseries) - for (var j = 0; j < s.subseries.length; ++j) - drawSeries(s.subseries[j]); - else - drawSeries(s); - } - } - - function extractRange(ranges, coord) { - var firstAxis = coord + "axis", - secondaryAxis = coord + "2axis", - axis, from, to, reverse; - - if (ranges[firstAxis]) { - axis = axes[firstAxis]; - from = ranges[firstAxis].from; - to = ranges[firstAxis].to; - } - else if (ranges[secondaryAxis]) { - axis = axes[secondaryAxis]; - from = ranges[secondaryAxis].from; - to = ranges[secondaryAxis].to; - } - else { - // backwards-compat stuff - to be removed in future - axis = axes[firstAxis]; - from = ranges[coord + "1"]; - to = ranges[coord + "2"]; - } - - // auto-reverse as an added bonus - if (from != null && to != null && from > to) - return { from: to, to: from, axis: axis }; - - return { from: from, to: to, axis: axis }; - } - - function drawGrid() { - var i; - - ctx.save(); - ctx.clearRect(0, 0, canvasWidth, canvasHeight); - ctx.translate(plotOffset.left, plotOffset.top); - - // draw background, if any - if (options.grid.backgroundColor) { - ctx.fillStyle = getColorOrGradient(options.grid.backgroundColor, plotHeight, 0, "rgba(255, 255, 255, 0)"); - ctx.fillRect(0, 0, plotWidth, plotHeight); - } - - // draw markings - var markings = options.grid.markings; - if (markings) { - if ($.isFunction(markings)) - // xmin etc. are backwards-compatible, to be removed in future - markings = markings({ xmin: axes.xaxis.min, xmax: axes.xaxis.max, ymin: axes.yaxis.min, ymax: axes.yaxis.max, xaxis: axes.xaxis, yaxis: axes.yaxis, x2axis: axes.x2axis, y2axis: axes.y2axis }); - - for (i = 0; i < markings.length; ++i) { - var m = markings[i], - xrange = extractRange(m, "x"), - yrange = extractRange(m, "y"); - - // fill in missing - if (xrange.from == null) - xrange.from = xrange.axis.min; - if (xrange.to == null) - xrange.to = xrange.axis.max; - if (yrange.from == null) - yrange.from = yrange.axis.min; - if (yrange.to == null) - yrange.to = yrange.axis.max; - - // clip - if (xrange.to < xrange.axis.min || xrange.from > xrange.axis.max || - yrange.to < yrange.axis.min || yrange.from > yrange.axis.max) - continue; - - xrange.from = Math.max(xrange.from, xrange.axis.min); - xrange.to = Math.min(xrange.to, xrange.axis.max); - yrange.from = Math.max(yrange.from, yrange.axis.min); - yrange.to = Math.min(yrange.to, yrange.axis.max); - - if (xrange.from == xrange.to && yrange.from == yrange.to) - continue; - - // then draw - xrange.from = xrange.axis.p2c(xrange.from); - xrange.to = xrange.axis.p2c(xrange.to); - yrange.from = yrange.axis.p2c(yrange.from); - yrange.to = yrange.axis.p2c(yrange.to); - - if (xrange.from == xrange.to || yrange.from == yrange.to) { - // draw line - ctx.strokeStyle = m.color || options.grid.markingsColor; - ctx.beginPath(); - ctx.lineWidth = m.lineWidth || options.grid.markingsLineWidth; - //ctx.moveTo(Math.floor(xrange.from), yrange.from); - //ctx.lineTo(Math.floor(xrange.to), yrange.to); - ctx.moveTo(xrange.from, yrange.from); - ctx.lineTo(xrange.to, yrange.to); - ctx.stroke(); - } - else { - // fill area - ctx.fillStyle = m.color || options.grid.markingsColor; - ctx.fillRect(xrange.from, yrange.to, - xrange.to - xrange.from, - yrange.from - yrange.to); - } - } - } - - // draw the inner grid - ctx.lineWidth = 1; - ctx.strokeStyle = options.grid.tickColor; - ctx.beginPath(); - var v, axis = axes.xaxis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axes.xaxis.max) - continue; // skip those lying on the axes - - ctx.moveTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, 0); - ctx.lineTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, plotHeight); - } - - axis = axes.yaxis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axis.max) - continue; - - ctx.moveTo(0, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - ctx.lineTo(plotWidth, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - } - - axis = axes.x2axis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axis.max) - continue; - - ctx.moveTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, -5); - ctx.lineTo(Math.floor(axis.p2c(v)) + ctx.lineWidth/2, 5); - } - - axis = axes.y2axis; - for (i = 0; i < axis.ticks.length; ++i) { - v = axis.ticks[i].v; - if (v <= axis.min || v >= axis.max) - continue; - - ctx.moveTo(plotWidth-5, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - ctx.lineTo(plotWidth+5, Math.floor(axis.p2c(v)) + ctx.lineWidth/2); - } - - ctx.stroke(); - - if (options.grid.borderWidth) { - // draw border - var bw = options.grid.borderWidth; - ctx.lineWidth = bw; - ctx.strokeStyle = options.grid.borderColor; - ctx.strokeRect(-bw/2, -bw/2, plotWidth + bw, plotHeight + bw); - } - - ctx.restore(); - } - - function insertLabels() { - target.find(".tickLabels").remove(); - - var html = ['<div class="tickLabels" style="font-size:smaller;color:' + options.grid.color + '">']; - - function addLabels(axis, labelGenerator) { - for (var i = 0; i < axis.ticks.length; ++i) { - var tick = axis.ticks[i]; - if (!tick.label || tick.v < axis.min || tick.v > axis.max) - continue; - html.push(labelGenerator(tick, axis)); - } - } - - var margin = options.grid.labelMargin + options.grid.borderWidth; - - addLabels(axes.xaxis, function (tick, axis) { - return '<div style="position:absolute;top:' + (plotOffset.top + plotHeight + margin) + 'px;left:' + Math.round(plotOffset.left + axis.p2c(tick.v) - axis.labelWidth/2) + 'px;width:' + axis.labelWidth + 'px;text-align:center" class="tickLabel">' + tick.label + "</div>"; - }); - - - addLabels(axes.yaxis, function (tick, axis) { - return '<div style="position:absolute;top:' + Math.round(plotOffset.top + axis.p2c(tick.v) - axis.labelHeight/2) + 'px;right:' + (plotOffset.right + plotWidth + margin) + 'px;width:' + axis.labelWidth + 'px;text-align:right" class="tickLabel">' + tick.label + "</div>"; - }); - - addLabels(axes.x2axis, function (tick, axis) { - return '<div style="position:absolute;bottom:' + (plotOffset.bottom + plotHeight + margin) + 'px;left:' + Math.round(plotOffset.left + axis.p2c(tick.v) - axis.labelWidth/2) + 'px;width:' + axis.labelWidth + 'px;text-align:center" class="tickLabel">' + tick.label + "</div>"; - }); - - addLabels(axes.y2axis, function (tick, axis) { - return '<div style="position:absolute;top:' + Math.round(plotOffset.top + axis.p2c(tick.v) - axis.labelHeight/2) + 'px;left:' + (plotOffset.left + plotWidth + margin) +'px;width:' + axis.labelWidth + 'px;text-align:left" class="tickLabel">' + tick.label + "</div>"; - }); - - html.push('</div>'); - - target.append(html.join("")); - } - - function drawSeries(series) { - if (series.lines.show) - drawSeriesLines(series); - if (series.bars.show) - drawSeriesBars(series); - if (series.points.show) - drawSeriesPoints(series); - } - - function drawSeriesLines(series) { - function plotLine(datapoints, xoffset, yoffset, axisx, axisy) { - var points = datapoints.linespoints || datapoints.points, - incr = datapoints.incr, - prevx = null, prevy = null; - - ctx.beginPath(); - for (var i = incr; i < points.length; i += incr) { - var x1 = points[i - incr], y1 = points[i - incr + 1], - x2 = points[i], y2 = points[i + 1]; - - if (x1 == null || x2 == null) - continue; - - // clip with ymin - if (y1 <= y2 && y1 < axisy.min) { - if (y2 < axisy.min) - continue; // line segment is outside - // compute new intersection point - x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.min; - } - else if (y2 <= y1 && y2 < axisy.min) { - if (y1 < axisy.min) - continue; - x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.min; - } - - // clip with ymax - if (y1 >= y2 && y1 > axisy.max) { - if (y2 > axisy.max) - continue; - x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.max; - } - else if (y2 >= y1 && y2 > axisy.max) { - if (y1 > axisy.max) - continue; - x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.max; - } - - // clip with xmin - if (x1 <= x2 && x1 < axisx.min) { - if (x2 < axisx.min) - continue; - y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.min; - } - else if (x2 <= x1 && x2 < axisx.min) { - if (x1 < axisx.min) - continue; - y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.min; - } - - // clip with xmax - if (x1 >= x2 && x1 > axisx.max) { - if (x2 > axisx.max) - continue; - y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.max; - } - else if (x2 >= x1 && x2 > axisx.max) { - if (x1 > axisx.max) - continue; - y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.max; - } - - if (x1 != prevx || y1 != prevy) - ctx.moveTo(axisx.p2c(x1) + xoffset, axisy.p2c(y1) + yoffset); - - prevx = x2; - prevy = y2; - ctx.lineTo(axisx.p2c(x2) + xoffset, axisy.p2c(y2) + yoffset); - } - ctx.stroke(); - } - - function plotLineArea(datapoints, axisx, axisy) { - var points = datapoints.linespoints || datapoints.points, - incr = datapoints.incr, - bottom = Math.min(Math.max(0, axisy.min), axisy.max), - top, lastX = 0, areaOpen = false; - - for (var i = incr; i < points.length; i += incr) { - var x1 = points[i - incr], y1 = points[i - incr + 1], - x2 = points[i], y2 = points[i + 1]; - - if (areaOpen && x1 != null && x2 == null) { - // close area - ctx.lineTo(axisx.p2c(lastX), axisy.p2c(bottom)); - ctx.fill(); - areaOpen = false; - continue; - } - - if (x1 == null || x2 == null) - continue; - - // clip x values - - // clip with xmin - if (x1 <= x2 && x1 < axisx.min) { - if (x2 < axisx.min) - continue; - y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.min; - } - else if (x2 <= x1 && x2 < axisx.min) { - if (x1 < axisx.min) - continue; - y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.min; - } - - // clip with xmax - if (x1 >= x2 && x1 > axisx.max) { - if (x2 > axisx.max) - continue; - y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x1 = axisx.max; - } - else if (x2 >= x1 && x2 > axisx.max) { - if (x1 > axisx.max) - continue; - y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; - x2 = axisx.max; - } - - if (!areaOpen) { - // open area - ctx.beginPath(); - ctx.moveTo(axisx.p2c(x1), axisy.p2c(bottom)); - areaOpen = true; - } - - // now first check the case where both is outside - if (y1 >= axisy.max && y2 >= axisy.max) { - ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.max)); - ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.max)); - lastX = x2; - continue; - } - else if (y1 <= axisy.min && y2 <= axisy.min) { - ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.min)); - ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.min)); - lastX = x2; - continue; - } - - // else it's a bit more complicated, there might - // be two rectangles and two triangles we need to fill - // in; to find these keep track of the current x values - var x1old = x1, x2old = x2; - - // and clip the y values, without shortcutting - - // clip with ymin - if (y1 <= y2 && y1 < axisy.min && y2 >= axisy.min) { - x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.min; - } - else if (y2 <= y1 && y2 < axisy.min && y1 >= axisy.min) { - x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.min; - } - - // clip with ymax - if (y1 >= y2 && y1 > axisy.max && y2 <= axisy.max) { - x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y1 = axisy.max; - } - else if (y2 >= y1 && y2 > axisy.max && y1 <= axisy.max) { - x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; - y2 = axisy.max; - } - - - // if the x value was changed we got a rectangle - // to fill - if (x1 != x1old) { - if (y1 <= axisy.min) - top = axisy.min; - else - top = axisy.max; - - ctx.lineTo(axisx.p2c(x1old), axisy.p2c(top)); - ctx.lineTo(axisx.p2c(x1), axisy.p2c(top)); - } - - // fill the triangles - ctx.lineTo(axisx.p2c(x1), axisy.p2c(y1)); - ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2)); - - // fill the other rectangle if it's there - if (x2 != x2old) { - if (y2 <= axisy.min) - top = axisy.min; - else - top = axisy.max; - - ctx.lineTo(axisx.p2c(x2), axisy.p2c(top)); - ctx.lineTo(axisx.p2c(x2old), axisy.p2c(top)); - } - - lastX = Math.max(x2, x2old); - } - - if (areaOpen) { - ctx.lineTo(axisx.p2c(lastX), axisy.p2c(bottom)); - ctx.fill(); - } - } - - ctx.save(); - ctx.translate(plotOffset.left, plotOffset.top); - ctx.lineJoin = "round"; - - var lw = series.lines.lineWidth, - sw = series.shadowSize; - // FIXME: consider another form of shadow when filling is turned on - if (lw > 0 && sw > 0) { - // draw shadow as a thick and thin line with transparency - ctx.lineWidth = sw; - ctx.strokeStyle = "rgba(0,0,0,0.1)"; - var xoffset = 1; - plotLine(series.datapoints, xoffset, Math.sqrt((lw/2 + sw/2)*(lw/2 + sw/2) - xoffset*xoffset), series.xaxis, series.yaxis); - ctx.lineWidth = sw/2; - plotLine(series.datapoints, xoffset, Math.sqrt((lw/2 + sw/4)*(lw/2 + sw/4) - xoffset*xoffset), series.xaxis, series.yaxis); - } - - ctx.lineWidth = lw; - ctx.strokeStyle = series.color; - var fillStyle = getFillStyle(series.lines, series.color, 0, plotHeight); - if (fillStyle) { - ctx.fillStyle = fillStyle; - plotLineArea(series.datapoints, series.xaxis, series.yaxis); - } - - if (lw > 0) - plotLine(series.datapoints, 0, 0, series.xaxis, series.yaxis); - ctx.restore(); - } - - function drawSeriesPoints(series) { - function plotPoints(datapoints, radius, fillStyle, offset, circumference, axisx, axisy) { - var points = datapoints.points, incr = datapoints.incr; - - for (var i = 0; i < points.length; i += incr) { - var x = points[i], y = points[i + 1]; - if (x == null || x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) - continue; - - ctx.beginPath(); - ctx.arc(axisx.p2c(x), axisy.p2c(y) + offset, radius, 0, circumference, true); - if (fillStyle) { - ctx.fillStyle = fillStyle; - ctx.fill(); - } - ctx.stroke(); - } - } - - ctx.save(); - ctx.translate(plotOffset.left, plotOffset.top); - - var lw = series.lines.lineWidth, - sw = series.shadowSize, - radius = series.points.radius; - if (lw > 0 && sw > 0) { - // draw shadow in two steps - var w = sw / 2; - ctx.lineWidth = w; - ctx.strokeStyle = "rgba(0,0,0,0.1)"; - plotPoints(series.datapoints, radius, null, w + w/2, 2 * Math.PI, - series.xaxis, series.yaxis); - - ctx.strokeStyle = "rgba(0,0,0,0.2)"; - plotPoints(series.datapoints, radius, null, w/2, 2 * Math.PI, - series.xaxis, series.yaxis); - } - - ctx.lineWidth = lw; - ctx.strokeStyle = series.color; - plotPoints(series.datapoints, radius, - getFillStyle(series.points, series.color), 0, 2 * Math.PI, - series.xaxis, series.yaxis); - ctx.restore(); - } - - function drawBar(x, y, b, barLeft, barRight, offset, fillStyleCallback, axisx, axisy, c, horizontal) { - var left, right, bottom, top, - drawLeft, drawRight, drawTop, drawBottom, - tmp; - - if (horizontal) { - drawBottom = drawRight = drawTop = true; - drawLeft = false; - left = b; - right = x; - top = y + barLeft; - bottom = y + barRight; - - // account for negative bars - if (right < left) { - tmp = right; - right = left; - left = tmp; - drawLeft = true; - drawRight = false; - } - } - else { - drawLeft = drawRight = drawTop = true; - drawBottom = false; - left = x + barLeft; - right = x + barRight; - bottom = b; - top = y; - - // account for negative bars - if (top < bottom) { - tmp = top; - top = bottom; - bottom = tmp; - drawBottom = true; - drawTop = false; - } - } - - // clip - if (right < axisx.min || left > axisx.max || - top < axisy.min || bottom > axisy.max) - return; - - if (left < axisx.min) { - left = axisx.min; - drawLeft = false; - } - - if (right > axisx.max) { - right = axisx.max; - drawRight = false; - } - - if (bottom < axisy.min) { - bottom = axisy.min; - drawBottom = false; - } - - if (top > axisy.max) { - top = axisy.max; - drawTop = false; - } - - left = axisx.p2c(left); - bottom = axisy.p2c(bottom); - right = axisx.p2c(right); - top = axisy.p2c(top); - - // fill the bar - if (fillStyleCallback) { - c.beginPath(); - c.moveTo(left, bottom); - c.lineTo(left, top); - c.lineTo(right, top); - c.lineTo(right, bottom); - c.fillStyle = fillStyleCallback(bottom, top); - c.fill(); - } - - // draw outline - if (drawLeft || drawRight || drawTop || drawBottom) { - c.beginPath(); - - // FIXME: inline moveTo is buggy with excanvas - c.moveTo(left, bottom + offset); - if (drawLeft) - c.lineTo(left, top + offset); - else - c.moveTo(left, top + offset); - if (drawTop) - c.lineTo(right, top + offset); - else - c.moveTo(right, top + offset); - if (drawRight) - c.lineTo(right, bottom + offset); - else - c.moveTo(right, bottom + offset); - if (drawBottom) - c.lineTo(left, bottom + offset); - else - c.moveTo(left, bottom + offset); - c.stroke(); - } - } - - function drawSeriesBars(series) { - function plotBars(datapoints, barLeft, barRight, offset, fillStyleCallback, axisx, axisy) { - var points = datapoints.points, incr = datapoints.incr; - - for (var i = 0; i < points.length; i += incr) { - if (points[i] == null) - continue; - drawBar(points[i], points[i + 1], points[i + 2], barLeft, barRight, offset, fillStyleCallback, axisx, axisy, ctx, series.bars.horizontal); - } - } - - ctx.save(); - ctx.translate(plotOffset.left, plotOffset.top); - - // FIXME: figure out a way to add shadows (for instance along the right edge) - ctx.lineWidth = series.bars.lineWidth; - ctx.strokeStyle = series.color; - var barLeft = series.bars.align == "left" ? 0 : -series.bars.barWidth/2; - var fillStyleCallback = series.bars.fill ? function (bottom, top) { return getFillStyle(series.bars, series.color, bottom, top); } : null; - plotBars(series.datapoints, barLeft, barLeft + series.bars.barWidth, 0, fillStyleCallback, series.xaxis, series.yaxis); - ctx.restore(); - } - - function getFillStyle(filloptions, seriesColor, bottom, top) { - var fill = filloptions.fill; - if (!fill) - return null; - - if (filloptions.fillColor) - return getColorOrGradient(filloptions.fillColor, bottom, top, seriesColor); - - var c = parseColor(seriesColor); - c.a = typeof fill == "number" ? fill : 0.4; - c.normalize(); - return c.toString(); - } - - function insertLegend() { - target.find(".legend").remove(); - - if (!options.legend.show) - return; - - var fragments = [], rowStarted = false, - lf = options.legend.labelFormatter, s, label; - for (i = 0; i < series.length; ++i) { - s = series[i]; - label = s.label; - if (!label) - continue; - - if (i % options.legend.noColumns == 0) { - if (rowStarted) - fragments.push('</tr>'); - fragments.push('<tr>'); - rowStarted = true; - } - - if (lf) - label = lf(label, s); - - fragments.push( - '<td class="legendColorBox"><div style="border:1px solid ' + options.legend.labelBoxBorderColor + ';padding:1px"><div style="width:4px;height:0;border:5px solid ' + s.color + ';overflow:hidden"></div></div></td>' + - '<td class="legendLabel">' + label + '</td>'); - } - if (rowStarted) - fragments.push('</tr>'); - - if (fragments.length == 0) - return; - - var table = '<table style="font-size:smaller;color:' + options.grid.color + '">' + fragments.join("") + '</table>'; - if (options.legend.container != null) - $(options.legend.container).html(table); - else { - var pos = "", - p = options.legend.position, - m = options.legend.margin; - if (m[0] == null) - m = [m, m]; - if (p.charAt(0) == "n") - pos += 'top:' + (m[1] + plotOffset.top) + 'px;'; - else if (p.charAt(0) == "s") - pos += 'bottom:' + (m[1] + plotOffset.bottom) + 'px;'; - if (p.charAt(1) == "e") - pos += 'right:' + (m[0] + plotOffset.right) + 'px;'; - else if (p.charAt(1) == "w") - pos += 'left:' + (m[0] + plotOffset.left) + 'px;'; - var legend = $('<div class="legend">' + table.replace('style="', 'style="position:absolute;' + pos +';') + '</div>').appendTo(target); - if (options.legend.backgroundOpacity != 0.0) { - // put in the transparent background - // separately to avoid blended labels and - // label boxes - var c = options.legend.backgroundColor; - if (c == null) { - var tmp; - if (options.grid.backgroundColor && typeof options.grid.backgroundColor == "string") - tmp = options.grid.backgroundColor; - else - tmp = extractColor(legend); - c = parseColor(tmp).adjust(null, null, null, 1).toString(); - } - var div = legend.children(); - $('<div style="position:absolute;width:' + div.width() + 'px;height:' + div.height() + 'px;' + pos +'background-color:' + c + ';"> </div>').prependTo(legend).css('opacity', options.legend.backgroundOpacity); - } - } - } - - - // interactive features - - var lastMousePos = { pageX: null, pageY: null }, - selection = { - first: { x: -1, y: -1}, second: { x: -1, y: -1}, - show: false, active: false }, - crosshair = { pos: { x: -1, y: -1 } }, - highlights = [], - clickIsMouseUp = false, - redrawTimeout = null, - hoverTimeout = null; - - // Returns the data item the mouse is over, or null if none is found - function findNearbyItem(mouseX, mouseY, seriesFilter) { - var maxDistance = options.grid.mouseActiveRadius, - lowestDistance = maxDistance * maxDistance + 1, - item = null, foundPoint = false, i, j; - - for (var i = 0; i < series.length; ++i) { - if (!seriesFilter(series[i])) - continue; - - var s = series[i], - axisx = s.xaxis, - axisy = s.yaxis, - points = s.datapoints.points, - incr = s.datapoints.incr, - mx = axisx.c2p(mouseX), // precompute some stuff to make the loop faster - my = axisy.c2p(mouseY), - maxx = maxDistance / axisx.scale, - maxy = maxDistance / axisy.scale; - - if (s.lines.show || s.points.show) { - for (j = 0; j < points.length; j += incr) { - var x = points[j], y = points[j + 1]; - if (x == null) - continue; - - // For points and lines, the cursor must be within a - // certain distance to the data point - if (x - mx > maxx || x - mx < -maxx || - y - my > maxy || y - my < -maxy) - continue; - - // We have to calculate distances in pixels, not in - // data units, because the scales of the axes may be different - var dx = Math.abs(axisx.p2c(x) - mouseX), - dy = Math.abs(axisy.p2c(y) - mouseY), - dist = dx * dx + dy * dy; // no idea in taking sqrt - if (dist < lowestDistance) { - lowestDistance = dist; - item = [i, j / incr]; - } - } - } - - if (s.bars.show && !item) { // no other point can be nearby - var barLeft = s.bars.align == "left" ? 0 : -s.bars.barWidth/2, - barRight = barLeft + s.bars.barWidth; - - for (j = 0; j < points.length; j += incr) { - var x = points[j], y = points[j + 1], b = points[j + 2]; - if (x == null) - continue; - - // for a bar graph, the cursor must be inside the bar - if (series[i].bars.horizontal ? - (mx <= Math.max(b, x) && mx >= Math.min(b, x) && - my >= y + barLeft && my <= y + barRight) : - (mx >= x + barLeft && mx <= x + barRight && - my >= Math.min(b, y) && my <= Math.max(b, y))) - item = [i, j / incr]; - } - } - } - - if (item) { - i = item[0]; - j = item[1]; - - return { datapoint: series[i].data[j], - dataIndex: j, - series: series[i], - seriesIndex: i } - } - - return null; - } - - function onMouseMove(ev) { - // FIXME: temp. work-around until jQuery bug 4398 is fixed - var e = ev || window.event; - if (e.pageX == null && e.clientX != null) { - var de = document.documentElement, b = document.body; - lastMousePos.pageX = e.clientX + (de && de.scrollLeft || b.scrollLeft || 0) - (de.clientLeft || 0); - lastMousePos.pageY = e.clientY + (de && de.scrollTop || b.scrollTop || 0) - (de.clientTop || 0); - } - else { - lastMousePos.pageX = e.pageX; - lastMousePos.pageY = e.pageY; - } - - if (options.grid.hoverable) - triggerClickHoverEvent("plothover", lastMousePos, - function (s) { return s["hoverable"] != false; }); - - if (options.crosshair.mode != null) { - if (!selection.active) { - setPositionFromEvent(crosshair.pos, lastMousePos); - triggerRedrawOverlay(); - } - else - crosshair.pos.x = -1; // hide the crosshair while selecting - } - - if (selection.active) { - target.trigger("plotselecting", [ selectionIsSane() ? getSelectionForEvent() : null ]); - - updateSelection(lastMousePos); - } - } - - function onMouseDown(e) { - if (e.which != 1) // only accept left-click - return; - - // cancel out any text selections - document.body.focus(); - - // prevent text selection and drag in old-school browsers - if (document.onselectstart !== undefined && workarounds.onselectstart == null) { - workarounds.onselectstart = document.onselectstart; - document.onselectstart = function () { return false; }; - } - if (document.ondrag !== undefined && workarounds.ondrag == null) { - workarounds.ondrag = document.ondrag; - document.ondrag = function () { return false; }; - } - - setSelectionPos(selection.first, e); - - lastMousePos.pageX = null; - selection.active = true; - $(document).one("mouseup", onSelectionMouseUp); - } - - function onMouseOut(ev) { - if (options.crosshair.mode != null && crosshair.pos.x != -1) { - crosshair.pos.x = -1; - triggerRedrawOverlay(); - } - } - - function onClick(e) { - if (clickIsMouseUp) { - clickIsMouseUp = false; - return; - } - - triggerClickHoverEvent("plotclick", e, - function (s) { return s["clickable"] != false; }); - } - - /* - function userPositionInCanvasSpace(pos) { - return { x: parseInt(pos.x != null ? axes.xaxis.p2c(pos.x) : axes.x2axis.p2c(pos.x2)), - y: parseInt(pos.y != null ? axes.yaxis.p2c(pos.y) : axes.y2axis.p2c(pos.y2)) }; - } - - function positionInDivSpace(pos) { - var cpos = userPositionInCanvasSpace(pos); - return { x: cpos.x + plotOffset.left, - y: cpos.y + plotOffset.top }; - }*/ - - // trigger click or hover event (they send the same parameters - // so we share their code) - function triggerClickHoverEvent(eventname, event, seriesFilter) { - var offset = eventHolder.offset(), - pos = { pageX: event.pageX, pageY: event.pageY }, - canvasX = event.pageX - offset.left - plotOffset.left, - canvasY = event.pageY - offset.top - plotOffset.top; - - if (axes.xaxis.used) - pos.x = axes.xaxis.c2p(canvasX); - if (axes.yaxis.used) - pos.y = axes.yaxis.c2p(canvasY); - if (axes.x2axis.used) - pos.x2 = axes.x2axis.c2p(canvasX); - if (axes.y2axis.used) - pos.y2 = axes.y2axis.c2p(canvasY); - - var item = findNearbyItem(canvasX, canvasY, seriesFilter); - - if (item) { - // fill in mouse pos for any listeners out there - item.pageX = parseInt(item.series.xaxis.p2c(item.datapoint[0]) + offset.left + plotOffset.left); - item.pageY = parseInt(item.series.yaxis.p2c(item.datapoint[1]) + offset.top + plotOffset.top); - } - - if (options.grid.autoHighlight) { - // clear auto-highlights - for (var i = 0; i < highlights.length; ++i) { - var h = highlights[i]; - if (h.auto == eventname && - !(item && h.series == item.series && h.point == item.datapoint)) - unhighlight(h.series, h.point); - } - - if (item) - highlight(item.series, item.datapoint, eventname); - } - - target.trigger(eventname, [ pos, item ]); - } - - function triggerRedrawOverlay() { - if (!redrawTimeout) - redrawTimeout = setTimeout(redrawOverlay, 30); - } - - function redrawOverlay() { - redrawTimeout = null; - - // redraw highlights - octx.save(); - octx.clearRect(0, 0, canvasWidth, canvasHeight); - octx.translate(plotOffset.left, plotOffset.top); - - var i, hi; - for (i = 0; i < highlights.length; ++i) { - hi = highlights[i]; - - if (hi.series.bars.show) - drawBarHighlight(hi.series, hi.point); - else - drawPointHighlight(hi.series, hi.point); - } - - // redraw selection - if (selection.show && selectionIsSane()) { - octx.strokeStyle = parseColor(options.selection.color).scale(null, null, null, 0.8).toString(); - octx.lineWidth = 1; - ctx.lineJoin = "round"; - octx.fillStyle = parseColor(options.selection.color).scale(null, null, null, 0.4).toString(); - - var x = Math.min(selection.first.x, selection.second.x), - y = Math.min(selection.first.y, selection.second.y), - w = Math.abs(selection.second.x - selection.first.x), - h = Math.abs(selection.second.y - selection.first.y); - - octx.fillRect(x, y, w, h); - octx.strokeRect(x, y, w, h); - } - - // redraw crosshair - var pos = crosshair.pos, mode = options.crosshair.mode; - if (mode != null && pos.x != -1) { - octx.strokeStyle = parseColor(options.crosshair.color).scale(null, null, null, 0.8).toString(); - octx.lineWidth = 1; - ctx.lineJoin = "round"; - - octx.beginPath(); - if (mode.indexOf("x") != -1) { - octx.moveTo(pos.x, 0); - octx.lineTo(pos.x, plotHeight); - } - if (mode.indexOf("y") != -1) { - octx.moveTo(0, pos.y); - octx.lineTo(plotWidth, pos.y); - } - octx.stroke(); - - } - octx.restore(); - } - - function highlight(s, point, auto) { - if (typeof s == "number") - s = series[s]; - - if (typeof point == "number") - point = s.data[point]; - - var i = indexOfHighlight(s, point); - if (i == -1) { - highlights.push({ series: s, point: point, auto: auto }); - - triggerRedrawOverlay(); - } - else if (!auto) - highlights[i].auto = false; - } - - function unhighlight(s, point) { - if (typeof s == "number") - s = series[s]; - - if (typeof point == "number") - point = s.data[point]; - - var i = indexOfHighlight(s, point); - if (i != -1) { - highlights.splice(i, 1); - - triggerRedrawOverlay(); - } - } - - function indexOfHighlight(s, p) { - for (var i = 0; i < highlights.length; ++i) { - var h = highlights[i]; - if (h.series == s && h.point[0] == p[0] - && h.point[1] == p[1]) - return i; - } - return -1; - } - - function drawPointHighlight(series, point) { - var x = point[0], y = point[1], - axisx = series.xaxis, axisy = series.yaxis; - - if (x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) - return; - - var pointRadius = series.points.radius + series.points.lineWidth / 2; - octx.lineWidth = pointRadius; - octx.strokeStyle = parseColor(series.color).scale(1, 1, 1, 0.5).toString(); - var radius = 1.5 * pointRadius; - octx.beginPath(); - octx.arc(axisx.p2c(x), axisy.p2c(y), radius, 0, 2 * Math.PI, true); - octx.stroke(); - } - - function drawBarHighlight(series, point) { - octx.lineWidth = series.bars.lineWidth; - octx.strokeStyle = parseColor(series.color).scale(1, 1, 1, 0.5).toString(); - var fillStyle = parseColor(series.color).scale(1, 1, 1, 0.5).toString(); - var barLeft = series.bars.align == "left" ? 0 : -series.bars.barWidth/2; - drawBar(point[0], point[1], point[2] || 0, barLeft, barLeft + series.bars.barWidth, - 0, function () { return fillStyle; }, series.xaxis, series.yaxis, octx, series.bars.horizontal); - } - - function setPositionFromEvent(pos, e) { - var offset = eventHolder.offset(); - pos.x = clamp(0, e.pageX - offset.left - plotOffset.left, plotWidth); - pos.y = clamp(0, e.pageY - offset.top - plotOffset.top, plotHeight); - } - - function setCrosshair(pos) { - if (pos == null) - crosshair.pos.x = -1; - else { - crosshair.pos.x = clamp(0, pos.x != null ? axes.xaxis.p2c(pos.x) : axes.x2axis.p2c(pos.x2), plotWidth); - crosshair.pos.y = clamp(0, pos.y != null ? axes.yaxis.p2c(pos.y) : axes.y2axis.p2c(pos.y2), plotHeight); - } - triggerRedrawOverlay(); - } - - function getSelectionForEvent() { - var x1 = Math.min(selection.first.x, selection.second.x), - x2 = Math.max(selection.first.x, selection.second.x), - y1 = Math.max(selection.first.y, selection.second.y), - y2 = Math.min(selection.first.y, selection.second.y); - - var r = {}; - if (axes.xaxis.used) - r.xaxis = { from: axes.xaxis.c2p(x1), to: axes.xaxis.c2p(x2) }; - if (axes.x2axis.used) - r.x2axis = { from: axes.x2axis.c2p(x1), to: axes.x2axis.c2p(x2) }; - if (axes.yaxis.used) - r.yaxis = { from: axes.yaxis.c2p(y1), to: axes.yaxis.c2p(y2) }; - if (axes.y2axis.used) - r.y2axis = { from: axes.y2axis.c2p(y1), to: axes.y2axis.c2p(y2) }; - return r; - } - - function triggerSelectedEvent() { - var r = getSelectionForEvent(); - - target.trigger("plotselected", [ r ]); - - // backwards-compat stuff, to be removed in future - if (axes.xaxis.used && axes.yaxis.used) - target.trigger("selected", [ { x1: r.xaxis.from, y1: r.yaxis.from, x2: r.xaxis.to, y2: r.yaxis.to } ]); - } - - function onSelectionMouseUp(e) { - // revert drag stuff for old-school browsers - if (document.onselectstart !== undefined) - document.onselectstart = workarounds.onselectstart; - if (document.ondrag !== undefined) - document.ondrag = workarounds.ondrag; - - // no more draggy-dee-drag - selection.active = false; - updateSelection(e); - - if (selectionIsSane()) { - triggerSelectedEvent(); - clickIsMouseUp = true; - } - else { - // this counts as a clear - target.trigger("plotunselected", [ ]); - target.trigger("plotselecting", [ null ]); - } - - return false; - } - - function setSelectionPos(pos, e) { - setPositionFromEvent(pos, e); - - if (options.selection.mode == "y") { - if (pos == selection.first) - pos.x = 0; - else - pos.x = plotWidth; - } - - if (options.selection.mode == "x") { - if (pos == selection.first) - pos.y = 0; - else - pos.y = plotHeight; - } - } - - function updateSelection(pos) { - if (pos.pageX == null) - return; - - setSelectionPos(selection.second, pos); - if (selectionIsSane()) { - selection.show = true; - triggerRedrawOverlay(); - } - else - clearSelection(true); - } - - function clearSelection(preventEvent) { - if (selection.show) { - selection.show = false; - triggerRedrawOverlay(); - if (!preventEvent) - target.trigger("plotunselected", [ ]); - } - } - - function setSelection(ranges, preventEvent) { - var range; - - if (options.selection.mode == "y") { - selection.first.x = 0; - selection.second.x = plotWidth; - } - else { - range = extractRange(ranges, "x"); - - selection.first.x = range.axis.p2c(range.from); - selection.second.x = range.axis.p2c(range.to); - } - - if (options.selection.mode == "x") { - selection.first.y = 0; - selection.second.y = plotHeight; - } - else { - range = extractRange(ranges, "y"); - - selection.first.y = range.axis.p2c(range.from); - selection.second.y = range.axis.p2c(range.to); - } - - selection.show = true; - triggerRedrawOverlay(); - if (!preventEvent) - triggerSelectedEvent(); - } - - function selectionIsSane() { - var minSize = 5; - return Math.abs(selection.second.x - selection.first.x) >= minSize && - Math.abs(selection.second.y - selection.first.y) >= minSize; - } - - function getColorOrGradient(spec, bottom, top, defaultColor) { - if (typeof spec == "string") - return spec; - else { - // assume this is a gradient spec; IE currently only - // supports a simple vertical gradient properly, so that's - // what we support too - var gradient = ctx.createLinearGradient(0, top, 0, bottom); - - for (var i = 0, l = spec.colors.length; i < l; ++i) { - var c = spec.colors[i]; - gradient.addColorStop(i / (l - 1), typeof c == "string" ? c : parseColor(defaultColor).scale(c.brightness, c.brightness, c.brightness, c.opacity)); - } - - return gradient; - } - } - } - - $.plot = function(target, data, options) { - var plot = new Plot(target, data, options); - /*var t0 = new Date(); - var t1 = new Date(); - var tstr = "time used (msecs): " + (t1.getTime() - t0.getTime()) - if (window.console) - console.log(tstr); - else - alert(tstr);*/ - return plot; - }; - - // returns a string with the date d formatted according to fmt - $.plot.formatDate = function(d, fmt, monthNames) { - var leftPad = function(n) { - n = "" + n; - return n.length == 1 ? "0" + n : n; - }; - - var r = []; - var escape = false; - if (monthNames == null) - monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; - for (var i = 0; i < fmt.length; ++i) { - var c = fmt.charAt(i); - - if (escape) { - switch (c) { - case 'h': c = "" + d.getUTCHours(); break; - case 'H': c = leftPad(d.getUTCHours()); break; - case 'M': c = leftPad(d.getUTCMinutes()); break; - case 'S': c = leftPad(d.getUTCSeconds()); break; - case 'd': c = "" + d.getUTCDate(); break; - case 'm': c = "" + (d.getUTCMonth() + 1); break; - case 'y': c = "" + d.getUTCFullYear(); break; - case 'b': c = "" + monthNames[d.getUTCMonth()]; break; - } - r.push(c); - escape = false; - } - else { - if (c == "%") - escape = true; - else - r.push(c); - } - } - return r.join(""); - }; - - // round to nearby lower multiple of base - function floorInBase(n, base) { - return base * Math.floor(n / base); - } - - function clamp(min, value, max) { - if (value < min) - return min; - else if (value > max) - return max; - else - return value; - } - - // color helpers, inspiration from the jquery color animation - // plugin by John Resig - function Color (r, g, b, a) { - - var rgba = ['r','g','b','a']; - var x = 4; //rgba.length - - while (-1<--x) { - this[rgba[x]] = arguments[x] || ((x==3) ? 1.0 : 0); - } - - this.toString = function() { - if (this.a >= 1.0) { - return "rgb("+[this.r,this.g,this.b].join(",")+")"; - } else { - return "rgba("+[this.r,this.g,this.b,this.a].join(",")+")"; - } - }; - - this.scale = function(rf, gf, bf, af) { - x = 4; //rgba.length - while (-1<--x) { - if (arguments[x] != null) - this[rgba[x]] *= arguments[x]; - } - return this.normalize(); - }; - - this.adjust = function(rd, gd, bd, ad) { - x = 4; //rgba.length - while (-1<--x) { - if (arguments[x] != null) - this[rgba[x]] += arguments[x]; - } - return this.normalize(); - }; - - this.clone = function() { - return new Color(this.r, this.b, this.g, this.a); - }; - - var limit = function(val,minVal,maxVal) { - return Math.max(Math.min(val, maxVal), minVal); - }; - - this.normalize = function() { - this.r = clamp(0, parseInt(this.r), 255); - this.g = clamp(0, parseInt(this.g), 255); - this.b = clamp(0, parseInt(this.b), 255); - this.a = clamp(0, this.a, 1); - return this; - }; - - this.normalize(); - } - - var lookupColors = { - aqua:[0,255,255], - azure:[240,255,255], - beige:[245,245,220], - black:[0,0,0], - blue:[0,0,255], - brown:[165,42,42], - cyan:[0,255,255], - darkblue:[0,0,139], - darkcyan:[0,139,139], - darkgrey:[169,169,169], - darkgreen:[0,100,0], - darkkhaki:[189,183,107], - darkmagenta:[139,0,139], - darkolivegreen:[85,107,47], - darkorange:[255,140,0], - darkorchid:[153,50,204], - darkred:[139,0,0], - darksalmon:[233,150,122], - darkviolet:[148,0,211], - fuchsia:[255,0,255], - gold:[255,215,0], - green:[0,128,0], - indigo:[75,0,130], - khaki:[240,230,140], - lightblue:[173,216,230], - lightcyan:[224,255,255], - lightgreen:[144,238,144], - lightgrey:[211,211,211], - lightpink:[255,182,193], - lightyellow:[255,255,224], - lime:[0,255,0], - magenta:[255,0,255], - maroon:[128,0,0], - navy:[0,0,128], - olive:[128,128,0], - orange:[255,165,0], - pink:[255,192,203], - purple:[128,0,128], - violet:[128,0,128], - red:[255,0,0], - silver:[192,192,192], - white:[255,255,255], - yellow:[255,255,0] - }; - - function extractColor(element) { - var color, elem = element; - do { - color = elem.css("background-color").toLowerCase(); - // keep going until we find an element that has color, or - // we hit the body - if (color != '' && color != 'transparent') - break; - elem = elem.parent(); - } while (!$.nodeName(elem.get(0), "body")); - - // catch Safari's way of signalling transparent - if (color == "rgba(0, 0, 0, 0)") - return "transparent"; - - return color; - } - - // parse string, returns Color - function parseColor(str) { - var result; - - // Look for rgb(num,num,num) - if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(str)) - return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10)); - - // Look for rgba(num,num,num,num) - if (result = /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str)) - return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10), parseFloat(result[4])); - - // Look for rgb(num%,num%,num%) - if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(str)) - return new Color(parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55); - - // Look for rgba(num%,num%,num%,num) - if (result = /rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str)) - return new Color(parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55, parseFloat(result[4])); - - // Look for #a0b1c2 - if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(str)) - return new Color(parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)); - - // Look for #fff - if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(str)) - return new Color(parseInt(result[1]+result[1], 16), parseInt(result[2]+result[2], 16), parseInt(result[3]+result[3], 16)); - - // Otherwise, we're most likely dealing with a named color - var name = $.trim(str).toLowerCase(); - if (name == "transparent") - return new Color(255, 255, 255, 0); - else { - result = lookupColors[name]; - return new Color(result[0], result[1], result[2]); - } - } - -})(jQuery); diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.flot.min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.flot.min.js.svn-base deleted file mode 100755 index 31f465b830995a8db2e41f057f0ad9b1ab911ac9..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.flot.min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -(function(){jQuery.color={};jQuery.color.make=function(G,H,J,I){var A={};A.r=G||0;A.g=H||0;A.b=J||0;A.a=I!=null?I:1;A.add=function(C,D){for(var E=0;E<C.length;++E){A[C.charAt(E)]+=D}return A.normalize()};A.scale=function(C,D){for(var E=0;E<C.length;++E){A[C.charAt(E)]*=D}return A.normalize()};A.toString=function(){if(A.a>=1){return"rgb("+[A.r,A.g,A.b].join(",")+")"}else{return"rgba("+[A.r,A.g,A.b,A.a].join(",")+")"}};A.normalize=function(){function C(E,D,F){return D<E?E:(D>F?F:D)}A.r=C(0,parseInt(A.r),255);A.g=C(0,parseInt(A.g),255);A.b=C(0,parseInt(A.b),255);A.a=C(0,A.a,1);return A};A.clone=function(){return jQuery.color.make(A.r,A.b,A.g,A.a)};return A.normalize()};jQuery.color.extract=function(E,F){var A;do{A=E.css(F).toLowerCase();if(A!=""&&A!="transparent"){break}E=E.parent()}while(!jQuery.nodeName(E.get(0),"body"));if(A=="rgba(0, 0, 0, 0)"){A="transparent"}return jQuery.color.parse(A)};jQuery.color.parse=function(A){var F,H=jQuery.color.make;if(F=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(A)){return H(parseInt(F[1],10),parseInt(F[2],10),parseInt(F[3],10))}if(F=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(A)){return H(parseInt(F[1],10),parseInt(F[2],10),parseInt(F[3],10),parseFloat(F[4]))}if(F=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(A)){return H(parseFloat(F[1])*2.55,parseFloat(F[2])*2.55,parseFloat(F[3])*2.55)}if(F=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(A)){return H(parseFloat(F[1])*2.55,parseFloat(F[2])*2.55,parseFloat(F[3])*2.55,parseFloat(F[4]))}if(F=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(A)){return H(parseInt(F[1],16),parseInt(F[2],16),parseInt(F[3],16))}if(F=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(A)){return H(parseInt(F[1]+F[1],16),parseInt(F[2]+F[2],16),parseInt(F[3]+F[3],16))}var G=jQuery.trim(A).toLowerCase();if(G=="transparent"){return H(255,255,255,0)}else{F=B[G];return H(F[0],F[1],F[2])}};var B={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})();(function(C){function B(l,W,X,E){var O=[],g={colors:["#edc240","#afd8f8","#cb4b4b","#4da74d","#9440ed"],legend:{show:true,noColumns:1,labelFormatter:null,labelBoxBorderColor:"#ccc",container:null,position:"ne",margin:5,backgroundColor:null,backgroundOpacity:0.85},xaxis:{mode:null,transform:null,inverseTransform:null,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,tickDecimals:null,tickSize:null,minTickSize:null,monthNames:null,timeformat:null,twelveHourClock:false},yaxis:{autoscaleMargin:0.02},x2axis:{autoscaleMargin:null},y2axis:{autoscaleMargin:0.02},series:{points:{show:false,radius:3,lineWidth:2,fill:true,fillColor:"#ffffff"},lines:{lineWidth:2,fill:false,fillColor:null,steps:false},bars:{show:false,lineWidth:2,barWidth:1,fill:true,fillColor:null,align:"left",horizontal:false},shadowSize:3},grid:{show:true,aboveData:false,color:"#545454",backgroundColor:null,tickColor:"rgba(0,0,0,0.15)",labelMargin:5,borderWidth:2,borderColor:null,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:false,hoverable:false,autoHighlight:true,mouseActiveRadius:10},hooks:{}},P=null,AC=null,AD=null,Y=null,AJ=null,s={xaxis:{},yaxis:{},x2axis:{},y2axis:{}},e={left:0,right:0,top:0,bottom:0},y=0,Q=0,I=0,t=0,L={processOptions:[],processRawData:[],processDatapoints:[],draw:[],bindEvents:[],drawOverlay:[]},G=this;G.setData=f;G.setupGrid=k;G.draw=AH;G.getPlaceholder=function(){return l};G.getCanvas=function(){return P};G.getPlotOffset=function(){return e};G.width=function(){return I};G.height=function(){return t};G.offset=function(){var AK=AD.offset();AK.left+=e.left;AK.top+=e.top;return AK};G.getData=function(){return O};G.getAxes=function(){return s};G.getOptions=function(){return g};G.highlight=AE;G.unhighlight=x;G.triggerRedrawOverlay=q;G.pointOffset=function(AK){return{left:parseInt(T(AK,"xaxis").p2c(+AK.x)+e.left),top:parseInt(T(AK,"yaxis").p2c(+AK.y)+e.top)}};G.hooks=L;b(G);r(X);c();f(W);k();AH();AG();function Z(AM,AK){AK=[G].concat(AK);for(var AL=0;AL<AM.length;++AL){AM[AL].apply(this,AK)}}function b(){for(var AK=0;AK<E.length;++AK){var AL=E[AK];AL.init(G);if(AL.options){C.extend(true,g,AL.options)}}}function r(AK){C.extend(true,g,AK);if(g.grid.borderColor==null){g.grid.borderColor=g.grid.color}if(g.xaxis.noTicks&&g.xaxis.ticks==null){g.xaxis.ticks=g.xaxis.noTicks}if(g.yaxis.noTicks&&g.yaxis.ticks==null){g.yaxis.ticks=g.yaxis.noTicks}if(g.grid.coloredAreas){g.grid.markings=g.grid.coloredAreas}if(g.grid.coloredAreasColor){g.grid.markingsColor=g.grid.coloredAreasColor}if(g.lines){C.extend(true,g.series.lines,g.lines)}if(g.points){C.extend(true,g.series.points,g.points)}if(g.bars){C.extend(true,g.series.bars,g.bars)}if(g.shadowSize){g.series.shadowSize=g.shadowSize}for(var AL in L){if(g.hooks[AL]&&g.hooks[AL].length){L[AL]=L[AL].concat(g.hooks[AL])}}Z(L.processOptions,[g])}function f(AK){O=M(AK);U();m()}function M(AN){var AL=[];for(var AK=0;AK<AN.length;++AK){var AM=C.extend(true,{},g.series);if(AN[AK].data){AM.data=AN[AK].data;delete AN[AK].data;C.extend(true,AM,AN[AK]);AN[AK].data=AM.data}else{AM.data=AN[AK]}AL.push(AM)}return AL}function T(AM,AK){var AL=AM[AK];if(!AL||AL==1){return s[AK]}if(typeof AL=="number"){return s[AK.charAt(0)+AL+AK.slice(1)]}return AL}function U(){var AP;var AV=O.length,AK=[],AN=[];for(AP=0;AP<O.length;++AP){var AS=O[AP].color;if(AS!=null){--AV;if(typeof AS=="number"){AN.push(AS)}else{AK.push(C.color.parse(O[AP].color))}}}for(AP=0;AP<AN.length;++AP){AV=Math.max(AV,AN[AP]+1)}var AL=[],AO=0;AP=0;while(AL.length<AV){var AR;if(g.colors.length==AP){AR=C.color.make(100,100,100)}else{AR=C.color.parse(g.colors[AP])}var AM=AO%2==1?-1:1;AR.scale("rgb",1+AM*Math.ceil(AO/2)*0.2);AL.push(AR);++AP;if(AP>=g.colors.length){AP=0;++AO}}var AQ=0,AW;for(AP=0;AP<O.length;++AP){AW=O[AP];if(AW.color==null){AW.color=AL[AQ].toString();++AQ}else{if(typeof AW.color=="number"){AW.color=AL[AW.color].toString()}}if(AW.lines.show==null){var AU,AT=true;for(AU in AW){if(AW[AU].show){AT=false;break}}if(AT){AW.lines.show=true}}AW.xaxis=T(AW,"xaxis");AW.yaxis=T(AW,"yaxis")}}function m(){var AW=Number.POSITIVE_INFINITY,AQ=Number.NEGATIVE_INFINITY,Ac,Aa,AZ,AV,AL,AR,Ab,AX,AP,AO,AK,Ai,Af,AT;for(AK in s){s[AK].datamin=AW;s[AK].datamax=AQ;s[AK].used=false}function AN(Al,Ak,Aj){if(Ak<Al.datamin){Al.datamin=Ak}if(Aj>Al.datamax){Al.datamax=Aj}}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];AR.datapoints={points:[]};Z(L.processRawData,[AR,AR.data,AR.datapoints])}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];var Ah=AR.data,Ae=AR.datapoints.format;if(!Ae){Ae=[];Ae.push({x:true,number:true,required:true});Ae.push({y:true,number:true,required:true});if(AR.bars.show){Ae.push({y:true,number:true,required:false,defaultValue:0})}AR.datapoints.format=Ae}if(AR.datapoints.pointsize!=null){continue}if(AR.datapoints.pointsize==null){AR.datapoints.pointsize=Ae.length}AX=AR.datapoints.pointsize;Ab=AR.datapoints.points;insertSteps=AR.lines.show&&AR.lines.steps;AR.xaxis.used=AR.yaxis.used=true;for(Aa=AZ=0;Aa<Ah.length;++Aa,AZ+=AX){AT=Ah[Aa];var AM=AT==null;if(!AM){for(AV=0;AV<AX;++AV){Ai=AT[AV];Af=Ae[AV];if(Af){if(Af.number&&Ai!=null){Ai=+Ai;if(isNaN(Ai)){Ai=null}}if(Ai==null){if(Af.required){AM=true}if(Af.defaultValue!=null){Ai=Af.defaultValue}}}Ab[AZ+AV]=Ai}}if(AM){for(AV=0;AV<AX;++AV){Ai=Ab[AZ+AV];if(Ai!=null){Af=Ae[AV];if(Af.x){AN(AR.xaxis,Ai,Ai)}if(Af.y){AN(AR.yaxis,Ai,Ai)}}Ab[AZ+AV]=null}}else{if(insertSteps&&AZ>0&&Ab[AZ-AX]!=null&&Ab[AZ-AX]!=Ab[AZ]&&Ab[AZ-AX+1]!=Ab[AZ+1]){for(AV=0;AV<AX;++AV){Ab[AZ+AX+AV]=Ab[AZ+AV]}Ab[AZ+1]=Ab[AZ-AX+1];AZ+=AX}}}}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];Z(L.processDatapoints,[AR,AR.datapoints])}for(Ac=0;Ac<O.length;++Ac){AR=O[Ac];Ab=AR.datapoints.points,AX=AR.datapoints.pointsize;var AS=AW,AY=AW,AU=AQ,Ad=AQ;for(Aa=0;Aa<Ab.length;Aa+=AX){if(Ab[Aa]==null){continue}for(AV=0;AV<AX;++AV){Ai=Ab[Aa+AV];Af=Ae[AV];if(!Af){continue}if(Af.x){if(Ai<AS){AS=Ai}if(Ai>AU){AU=Ai}}if(Af.y){if(Ai<AY){AY=Ai}if(Ai>Ad){Ad=Ai}}}}if(AR.bars.show){var Ag=AR.bars.align=="left"?0:-AR.bars.barWidth/2;if(AR.bars.horizontal){AY+=Ag;Ad+=Ag+AR.bars.barWidth}else{AS+=Ag;AU+=Ag+AR.bars.barWidth}}AN(AR.xaxis,AS,AU);AN(AR.yaxis,AY,Ad)}for(AK in s){if(s[AK].datamin==AW){s[AK].datamin=null}if(s[AK].datamax==AQ){s[AK].datamax=null}}}function c(){function AK(AM,AL){var AN=document.createElement("canvas");AN.width=AM;AN.height=AL;if(C.browser.msie){AN=window.G_vmlCanvasManager.initElement(AN)}return AN}y=l.width();Q=l.height();l.html("");if(l.css("position")=="static"){l.css("position","relative")}if(y<=0||Q<=0){throw"Invalid dimensions for plot, width = "+y+", height = "+Q}if(C.browser.msie){window.G_vmlCanvasManager.init_(document)}P=C(AK(y,Q)).appendTo(l).get(0);Y=P.getContext("2d");AC=C(AK(y,Q)).css({position:"absolute",left:0,top:0}).appendTo(l).get(0);AJ=AC.getContext("2d");AJ.stroke()}function AG(){AD=C([AC,P]);if(g.grid.hoverable){AD.mousemove(D)}if(g.grid.clickable){AD.click(d)}Z(L.bindEvents,[AD])}function k(){function AL(AT,AU){function AP(AV){return AV}var AS,AO,AQ=AU.transform||AP,AR=AU.inverseTransform;if(AT==s.xaxis||AT==s.x2axis){AS=AT.scale=I/(AQ(AT.max)-AQ(AT.min));AO=AQ(AT.min);if(AQ==AP){AT.p2c=function(AV){return(AV-AO)*AS}}else{AT.p2c=function(AV){return(AQ(AV)-AO)*AS}}if(!AR){AT.c2p=function(AV){return AO+AV/AS}}else{AT.c2p=function(AV){return AR(AO+AV/AS)}}}else{AS=AT.scale=t/(AQ(AT.max)-AQ(AT.min));AO=AQ(AT.max);if(AQ==AP){AT.p2c=function(AV){return(AO-AV)*AS}}else{AT.p2c=function(AV){return(AO-AQ(AV))*AS}}if(!AR){AT.c2p=function(AV){return AO-AV/AS}}else{AT.c2p=function(AV){return AR(AO-AV/AS)}}}}function AN(AR,AT){var AQ,AS=[],AP;AR.labelWidth=AT.labelWidth;AR.labelHeight=AT.labelHeight;if(AR==s.xaxis||AR==s.x2axis){if(AR.labelWidth==null){AR.labelWidth=y/(AR.ticks.length>0?AR.ticks.length:1)}if(AR.labelHeight==null){AS=[];for(AQ=0;AQ<AR.ticks.length;++AQ){AP=AR.ticks[AQ].label;if(AP){AS.push('<div class="tickLabel" style="float:left;width:'+AR.labelWidth+'px">'+AP+"</div>")}}if(AS.length>0){var AO=C('<div style="position:absolute;top:-10000px;width:10000px;font-size:smaller">'+AS.join("")+'<div style="clear:left"></div></div>').appendTo(l);AR.labelHeight=AO.height();AO.remove()}}}else{if(AR.labelWidth==null||AR.labelHeight==null){for(AQ=0;AQ<AR.ticks.length;++AQ){AP=AR.ticks[AQ].label;if(AP){AS.push('<div class="tickLabel">'+AP+"</div>")}}if(AS.length>0){var AO=C('<div style="position:absolute;top:-10000px;font-size:smaller">'+AS.join("")+"</div>").appendTo(l);if(AR.labelWidth==null){AR.labelWidth=AO.width()}if(AR.labelHeight==null){AR.labelHeight=AO.find("div").height()}AO.remove()}}}if(AR.labelWidth==null){AR.labelWidth=0}if(AR.labelHeight==null){AR.labelHeight=0}}function AM(){var AP=g.grid.borderWidth;for(i=0;i<O.length;++i){AP=Math.max(AP,2*(O[i].points.radius+O[i].points.lineWidth/2))}e.left=e.right=e.top=e.bottom=AP;var AO=g.grid.labelMargin+g.grid.borderWidth;if(s.xaxis.labelHeight>0){e.bottom=Math.max(AP,s.xaxis.labelHeight+AO)}if(s.yaxis.labelWidth>0){e.left=Math.max(AP,s.yaxis.labelWidth+AO)}if(s.x2axis.labelHeight>0){e.top=Math.max(AP,s.x2axis.labelHeight+AO)}if(s.y2axis.labelWidth>0){e.right=Math.max(AP,s.y2axis.labelWidth+AO)}I=y-e.left-e.right;t=Q-e.bottom-e.top}var AK;for(AK in s){K(s[AK],g[AK])}if(g.grid.show){for(AK in s){F(s[AK],g[AK]);p(s[AK],g[AK]);AN(s[AK],g[AK])}AM()}else{e.left=e.right=e.top=e.bottom=0;I=y;t=Q}for(AK in s){AL(s[AK],g[AK])}if(g.grid.show){h()}AI()}function K(AN,AQ){var AM=+(AQ.min!=null?AQ.min:AN.datamin),AK=+(AQ.max!=null?AQ.max:AN.datamax),AP=AK-AM;if(AP==0){var AL=AK==0?1:0.01;if(AQ.min==null){AM-=AL}if(AQ.max==null||AQ.min!=null){AK+=AL}}else{var AO=AQ.autoscaleMargin;if(AO!=null){if(AQ.min==null){AM-=AP*AO;if(AM<0&&AN.datamin!=null&&AN.datamin>=0){AM=0}}if(AQ.max==null){AK+=AP*AO;if(AK>0&&AN.datamax!=null&&AN.datamax<=0){AK=0}}}}AN.min=AM;AN.max=AK}function F(AP,AS){var AO;if(typeof AS.ticks=="number"&&AS.ticks>0){AO=AS.ticks}else{if(AP==s.xaxis||AP==s.x2axis){AO=0.3*Math.sqrt(y)}else{AO=0.3*Math.sqrt(Q)}}var AX=(AP.max-AP.min)/AO,AZ,AT,AV,AW,AR,AM,AL;if(AS.mode=="time"){var AU={second:1000,minute:60*1000,hour:60*60*1000,day:24*60*60*1000,month:30*24*60*60*1000,year:365.2425*24*60*60*1000};var AY=[[1,"second"],[2,"second"],[5,"second"],[10,"second"],[30,"second"],[1,"minute"],[2,"minute"],[5,"minute"],[10,"minute"],[30,"minute"],[1,"hour"],[2,"hour"],[4,"hour"],[8,"hour"],[12,"hour"],[1,"day"],[2,"day"],[3,"day"],[0.25,"month"],[0.5,"month"],[1,"month"],[2,"month"],[3,"month"],[6,"month"],[1,"year"]];var AN=0;if(AS.minTickSize!=null){if(typeof AS.tickSize=="number"){AN=AS.tickSize}else{AN=AS.minTickSize[0]*AU[AS.minTickSize[1]]}}for(AR=0;AR<AY.length-1;++AR){if(AX<(AY[AR][0]*AU[AY[AR][1]]+AY[AR+1][0]*AU[AY[AR+1][1]])/2&&AY[AR][0]*AU[AY[AR][1]]>=AN){break}}AZ=AY[AR][0];AV=AY[AR][1];if(AV=="year"){AM=Math.pow(10,Math.floor(Math.log(AX/AU.year)/Math.LN10));AL=(AX/AU.year)/AM;if(AL<1.5){AZ=1}else{if(AL<3){AZ=2}else{if(AL<7.5){AZ=5}else{AZ=10}}}AZ*=AM}if(AS.tickSize){AZ=AS.tickSize[0];AV=AS.tickSize[1]}AT=function(Ac){var Ah=[],Af=Ac.tickSize[0],Ai=Ac.tickSize[1],Ag=new Date(Ac.min);var Ab=Af*AU[Ai];if(Ai=="second"){Ag.setUTCSeconds(A(Ag.getUTCSeconds(),Af))}if(Ai=="minute"){Ag.setUTCMinutes(A(Ag.getUTCMinutes(),Af))}if(Ai=="hour"){Ag.setUTCHours(A(Ag.getUTCHours(),Af))}if(Ai=="month"){Ag.setUTCMonth(A(Ag.getUTCMonth(),Af))}if(Ai=="year"){Ag.setUTCFullYear(A(Ag.getUTCFullYear(),Af))}Ag.setUTCMilliseconds(0);if(Ab>=AU.minute){Ag.setUTCSeconds(0)}if(Ab>=AU.hour){Ag.setUTCMinutes(0)}if(Ab>=AU.day){Ag.setUTCHours(0)}if(Ab>=AU.day*4){Ag.setUTCDate(1)}if(Ab>=AU.year){Ag.setUTCMonth(0)}var Ak=0,Aj=Number.NaN,Ad;do{Ad=Aj;Aj=Ag.getTime();Ah.push({v:Aj,label:Ac.tickFormatter(Aj,Ac)});if(Ai=="month"){if(Af<1){Ag.setUTCDate(1);var Aa=Ag.getTime();Ag.setUTCMonth(Ag.getUTCMonth()+1);var Ae=Ag.getTime();Ag.setTime(Aj+Ak*AU.hour+(Ae-Aa)*Af);Ak=Ag.getUTCHours();Ag.setUTCHours(0)}else{Ag.setUTCMonth(Ag.getUTCMonth()+Af)}}else{if(Ai=="year"){Ag.setUTCFullYear(Ag.getUTCFullYear()+Af)}else{Ag.setTime(Aj+Ab)}}}while(Aj<Ac.max&&Aj!=Ad);return Ah};AW=function(Aa,Ad){var Af=new Date(Aa);if(AS.timeformat!=null){return C.plot.formatDate(Af,AS.timeformat,AS.monthNames)}var Ab=Ad.tickSize[0]*AU[Ad.tickSize[1]];var Ac=Ad.max-Ad.min;var Ae=(AS.twelveHourClock)?" %p":"";if(Ab<AU.minute){fmt="%h:%M:%S"+Ae}else{if(Ab<AU.day){if(Ac<2*AU.day){fmt="%h:%M"+Ae}else{fmt="%b %d %h:%M"+Ae}}else{if(Ab<AU.month){fmt="%b %d"}else{if(Ab<AU.year){if(Ac<AU.year){fmt="%b"}else{fmt="%b %y"}}else{fmt="%y"}}}}return C.plot.formatDate(Af,fmt,AS.monthNames)}}else{var AK=AS.tickDecimals;var AQ=-Math.floor(Math.log(AX)/Math.LN10);if(AK!=null&&AQ>AK){AQ=AK}AM=Math.pow(10,-AQ);AL=AX/AM;if(AL<1.5){AZ=1}else{if(AL<3){AZ=2;if(AL>2.25&&(AK==null||AQ+1<=AK)){AZ=2.5;++AQ}}else{if(AL<7.5){AZ=5}else{AZ=10}}}AZ*=AM;if(AS.minTickSize!=null&&AZ<AS.minTickSize){AZ=AS.minTickSize}if(AS.tickSize!=null){AZ=AS.tickSize}AP.tickDecimals=Math.max(0,(AK!=null)?AK:AQ);AT=function(Ac){var Ae=[];var Af=A(Ac.min,Ac.tickSize),Ab=0,Aa=Number.NaN,Ad;do{Ad=Aa;Aa=Af+Ab*Ac.tickSize;Ae.push({v:Aa,label:Ac.tickFormatter(Aa,Ac)});++Ab}while(Aa<Ac.max&&Aa!=Ad);return Ae};AW=function(Aa,Ab){return Aa.toFixed(Ab.tickDecimals)}}AP.tickSize=AV?[AZ,AV]:AZ;AP.tickGenerator=AT;if(C.isFunction(AS.tickFormatter)){AP.tickFormatter=function(Aa,Ab){return""+AS.tickFormatter(Aa,Ab)}}else{AP.tickFormatter=AW}}function p(AO,AQ){AO.ticks=[];if(!AO.used){return }if(AQ.ticks==null){AO.ticks=AO.tickGenerator(AO)}else{if(typeof AQ.ticks=="number"){if(AQ.ticks>0){AO.ticks=AO.tickGenerator(AO)}}else{if(AQ.ticks){var AP=AQ.ticks;if(C.isFunction(AP)){AP=AP({min:AO.min,max:AO.max})}var AN,AK;for(AN=0;AN<AP.length;++AN){var AL=null;var AM=AP[AN];if(typeof AM=="object"){AK=AM[0];if(AM.length>1){AL=AM[1]}}else{AK=AM}if(AL==null){AL=AO.tickFormatter(AK,AO)}AO.ticks[AN]={v:AK,label:AL}}}}}if(AQ.autoscaleMargin!=null&&AO.ticks.length>0){if(AQ.min==null){AO.min=Math.min(AO.min,AO.ticks[0].v)}if(AQ.max==null&&AO.ticks.length>1){AO.max=Math.max(AO.max,AO.ticks[AO.ticks.length-1].v)}}}function AH(){Y.clearRect(0,0,y,Q);var AL=g.grid;if(AL.show&&!AL.aboveData){S()}for(var AK=0;AK<O.length;++AK){AA(O[AK])}Z(L.draw,[Y]);if(AL.show&&AL.aboveData){S()}}function N(AL,AR){var AO=AR+"axis",AK=AR+"2axis",AN,AQ,AP,AM;if(AL[AO]){AN=s[AO];AQ=AL[AO].from;AP=AL[AO].to}else{if(AL[AK]){AN=s[AK];AQ=AL[AK].from;AP=AL[AK].to}else{AN=s[AO];AQ=AL[AR+"1"];AP=AL[AR+"2"]}}if(AQ!=null&&AP!=null&&AQ>AP){return{from:AP,to:AQ,axis:AN}}return{from:AQ,to:AP,axis:AN}}function S(){var AO;Y.save();Y.translate(e.left,e.top);if(g.grid.backgroundColor){Y.fillStyle=R(g.grid.backgroundColor,t,0,"rgba(255, 255, 255, 0)");Y.fillRect(0,0,I,t)}var AL=g.grid.markings;if(AL){if(C.isFunction(AL)){AL=AL({xmin:s.xaxis.min,xmax:s.xaxis.max,ymin:s.yaxis.min,ymax:s.yaxis.max,xaxis:s.xaxis,yaxis:s.yaxis,x2axis:s.x2axis,y2axis:s.y2axis})}for(AO=0;AO<AL.length;++AO){var AK=AL[AO],AQ=N(AK,"x"),AN=N(AK,"y");if(AQ.from==null){AQ.from=AQ.axis.min}if(AQ.to==null){AQ.to=AQ.axis.max}if(AN.from==null){AN.from=AN.axis.min}if(AN.to==null){AN.to=AN.axis.max}if(AQ.to<AQ.axis.min||AQ.from>AQ.axis.max||AN.to<AN.axis.min||AN.from>AN.axis.max){continue}AQ.from=Math.max(AQ.from,AQ.axis.min);AQ.to=Math.min(AQ.to,AQ.axis.max);AN.from=Math.max(AN.from,AN.axis.min);AN.to=Math.min(AN.to,AN.axis.max);if(AQ.from==AQ.to&&AN.from==AN.to){continue}AQ.from=AQ.axis.p2c(AQ.from);AQ.to=AQ.axis.p2c(AQ.to);AN.from=AN.axis.p2c(AN.from);AN.to=AN.axis.p2c(AN.to);if(AQ.from==AQ.to||AN.from==AN.to){Y.beginPath();Y.strokeStyle=AK.color||g.grid.markingsColor;Y.lineWidth=AK.lineWidth||g.grid.markingsLineWidth;Y.moveTo(AQ.from,AN.from);Y.lineTo(AQ.to,AN.to);Y.stroke()}else{Y.fillStyle=AK.color||g.grid.markingsColor;Y.fillRect(AQ.from,AN.to,AQ.to-AQ.from,AN.from-AN.to)}}}Y.lineWidth=1;Y.strokeStyle=g.grid.tickColor;Y.beginPath();var AM,AP=s.xaxis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=s.xaxis.max){continue}Y.moveTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,0);Y.lineTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,t)}AP=s.yaxis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=AP.max){continue}Y.moveTo(0,Math.floor(AP.p2c(AM))+Y.lineWidth/2);Y.lineTo(I,Math.floor(AP.p2c(AM))+Y.lineWidth/2)}AP=s.x2axis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=AP.max){continue}Y.moveTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,-5);Y.lineTo(Math.floor(AP.p2c(AM))+Y.lineWidth/2,5)}AP=s.y2axis;for(AO=0;AO<AP.ticks.length;++AO){AM=AP.ticks[AO].v;if(AM<=AP.min||AM>=AP.max){continue}Y.moveTo(I-5,Math.floor(AP.p2c(AM))+Y.lineWidth/2);Y.lineTo(I+5,Math.floor(AP.p2c(AM))+Y.lineWidth/2)}Y.stroke();if(g.grid.borderWidth){var AR=g.grid.borderWidth;Y.lineWidth=AR;Y.strokeStyle=g.grid.borderColor;Y.strokeRect(-AR/2,-AR/2,I+AR,t+AR)}Y.restore()}function h(){l.find(".tickLabels").remove();var AK=['<div class="tickLabels" style="font-size:smaller;color:'+g.grid.color+'">'];function AM(AP,AQ){for(var AO=0;AO<AP.ticks.length;++AO){var AN=AP.ticks[AO];if(!AN.label||AN.v<AP.min||AN.v>AP.max){continue}AK.push(AQ(AN,AP))}}var AL=g.grid.labelMargin+g.grid.borderWidth;AM(s.xaxis,function(AN,AO){return'<div style="position:absolute;top:'+(e.top+t+AL)+"px;left:"+Math.round(e.left+AO.p2c(AN.v)-AO.labelWidth/2)+"px;width:"+AO.labelWidth+'px;text-align:center" class="tickLabel">'+AN.label+"</div>"});AM(s.yaxis,function(AN,AO){return'<div style="position:absolute;top:'+Math.round(e.top+AO.p2c(AN.v)-AO.labelHeight/2)+"px;right:"+(e.right+I+AL)+"px;width:"+AO.labelWidth+'px;text-align:right" class="tickLabel">'+AN.label+"</div>"});AM(s.x2axis,function(AN,AO){return'<div style="position:absolute;bottom:'+(e.bottom+t+AL)+"px;left:"+Math.round(e.left+AO.p2c(AN.v)-AO.labelWidth/2)+"px;width:"+AO.labelWidth+'px;text-align:center" class="tickLabel">'+AN.label+"</div>"});AM(s.y2axis,function(AN,AO){return'<div style="position:absolute;top:'+Math.round(e.top+AO.p2c(AN.v)-AO.labelHeight/2)+"px;left:"+(e.left+I+AL)+"px;width:"+AO.labelWidth+'px;text-align:left" class="tickLabel">'+AN.label+"</div>"});AK.push("</div>");l.append(AK.join(""))}function AA(AK){if(AK.lines.show){a(AK)}if(AK.bars.show){n(AK)}if(AK.points.show){o(AK)}}function a(AN){function AM(AY,AZ,AR,Ad,Ac){var Ae=AY.points,AS=AY.pointsize,AW=null,AV=null;Y.beginPath();for(var AX=AS;AX<Ae.length;AX+=AS){var AU=Ae[AX-AS],Ab=Ae[AX-AS+1],AT=Ae[AX],Aa=Ae[AX+1];if(AU==null||AT==null){continue}if(Ab<=Aa&&Ab<Ac.min){if(Aa<Ac.min){continue}AU=(Ac.min-Ab)/(Aa-Ab)*(AT-AU)+AU;Ab=Ac.min}else{if(Aa<=Ab&&Aa<Ac.min){if(Ab<Ac.min){continue}AT=(Ac.min-Ab)/(Aa-Ab)*(AT-AU)+AU;Aa=Ac.min}}if(Ab>=Aa&&Ab>Ac.max){if(Aa>Ac.max){continue}AU=(Ac.max-Ab)/(Aa-Ab)*(AT-AU)+AU;Ab=Ac.max}else{if(Aa>=Ab&&Aa>Ac.max){if(Ab>Ac.max){continue}AT=(Ac.max-Ab)/(Aa-Ab)*(AT-AU)+AU;Aa=Ac.max}}if(AU<=AT&&AU<Ad.min){if(AT<Ad.min){continue}Ab=(Ad.min-AU)/(AT-AU)*(Aa-Ab)+Ab;AU=Ad.min}else{if(AT<=AU&&AT<Ad.min){if(AU<Ad.min){continue}Aa=(Ad.min-AU)/(AT-AU)*(Aa-Ab)+Ab;AT=Ad.min}}if(AU>=AT&&AU>Ad.max){if(AT>Ad.max){continue}Ab=(Ad.max-AU)/(AT-AU)*(Aa-Ab)+Ab;AU=Ad.max}else{if(AT>=AU&&AT>Ad.max){if(AU>Ad.max){continue}Aa=(Ad.max-AU)/(AT-AU)*(Aa-Ab)+Ab;AT=Ad.max}}if(AU!=AW||Ab!=AV){Y.moveTo(Ad.p2c(AU)+AZ,Ac.p2c(Ab)+AR)}AW=AT;AV=Aa;Y.lineTo(Ad.p2c(AT)+AZ,Ac.p2c(Aa)+AR)}Y.stroke()}function AO(AX,Ae,Ac){var Af=AX.points,AR=AX.pointsize,AS=Math.min(Math.max(0,Ac.min),Ac.max),Aa,AV=0,Ad=false;for(var AW=AR;AW<Af.length;AW+=AR){var AU=Af[AW-AR],Ab=Af[AW-AR+1],AT=Af[AW],AZ=Af[AW+1];if(Ad&&AU!=null&&AT==null){Y.lineTo(Ae.p2c(AV),Ac.p2c(AS));Y.fill();Ad=false;continue}if(AU==null||AT==null){continue}if(AU<=AT&&AU<Ae.min){if(AT<Ae.min){continue}Ab=(Ae.min-AU)/(AT-AU)*(AZ-Ab)+Ab;AU=Ae.min}else{if(AT<=AU&&AT<Ae.min){if(AU<Ae.min){continue}AZ=(Ae.min-AU)/(AT-AU)*(AZ-Ab)+Ab;AT=Ae.min}}if(AU>=AT&&AU>Ae.max){if(AT>Ae.max){continue}Ab=(Ae.max-AU)/(AT-AU)*(AZ-Ab)+Ab;AU=Ae.max}else{if(AT>=AU&&AT>Ae.max){if(AU>Ae.max){continue}AZ=(Ae.max-AU)/(AT-AU)*(AZ-Ab)+Ab;AT=Ae.max}}if(!Ad){Y.beginPath();Y.moveTo(Ae.p2c(AU),Ac.p2c(AS));Ad=true}if(Ab>=Ac.max&&AZ>=Ac.max){Y.lineTo(Ae.p2c(AU),Ac.p2c(Ac.max));Y.lineTo(Ae.p2c(AT),Ac.p2c(Ac.max));AV=AT;continue}else{if(Ab<=Ac.min&&AZ<=Ac.min){Y.lineTo(Ae.p2c(AU),Ac.p2c(Ac.min));Y.lineTo(Ae.p2c(AT),Ac.p2c(Ac.min));AV=AT;continue}}var Ag=AU,AY=AT;if(Ab<=AZ&&Ab<Ac.min&&AZ>=Ac.min){AU=(Ac.min-Ab)/(AZ-Ab)*(AT-AU)+AU;Ab=Ac.min}else{if(AZ<=Ab&&AZ<Ac.min&&Ab>=Ac.min){AT=(Ac.min-Ab)/(AZ-Ab)*(AT-AU)+AU;AZ=Ac.min}}if(Ab>=AZ&&Ab>Ac.max&&AZ<=Ac.max){AU=(Ac.max-Ab)/(AZ-Ab)*(AT-AU)+AU;Ab=Ac.max}else{if(AZ>=Ab&&AZ>Ac.max&&Ab<=Ac.max){AT=(Ac.max-Ab)/(AZ-Ab)*(AT-AU)+AU;AZ=Ac.max}}if(AU!=Ag){if(Ab<=Ac.min){Aa=Ac.min}else{Aa=Ac.max}Y.lineTo(Ae.p2c(Ag),Ac.p2c(Aa));Y.lineTo(Ae.p2c(AU),Ac.p2c(Aa))}Y.lineTo(Ae.p2c(AU),Ac.p2c(Ab));Y.lineTo(Ae.p2c(AT),Ac.p2c(AZ));if(AT!=AY){if(AZ<=Ac.min){Aa=Ac.min}else{Aa=Ac.max}Y.lineTo(Ae.p2c(AT),Ac.p2c(Aa));Y.lineTo(Ae.p2c(AY),Ac.p2c(Aa))}AV=Math.max(AT,AY)}if(Ad){Y.lineTo(Ae.p2c(AV),Ac.p2c(AS));Y.fill()}}Y.save();Y.translate(e.left,e.top);Y.lineJoin="round";var AP=AN.lines.lineWidth,AK=AN.shadowSize;if(AP>0&&AK>0){Y.lineWidth=AK;Y.strokeStyle="rgba(0,0,0,0.1)";var AQ=Math.PI/18;AM(AN.datapoints,Math.sin(AQ)*(AP/2+AK/2),Math.cos(AQ)*(AP/2+AK/2),AN.xaxis,AN.yaxis);Y.lineWidth=AK/2;AM(AN.datapoints,Math.sin(AQ)*(AP/2+AK/4),Math.cos(AQ)*(AP/2+AK/4),AN.xaxis,AN.yaxis)}Y.lineWidth=AP;Y.strokeStyle=AN.color;var AL=V(AN.lines,AN.color,0,t);if(AL){Y.fillStyle=AL;AO(AN.datapoints,AN.xaxis,AN.yaxis)}if(AP>0){AM(AN.datapoints,0,0,AN.xaxis,AN.yaxis)}Y.restore()}function o(AN){function AP(AU,AT,Ab,AR,AV,AZ,AY){var Aa=AU.points,AQ=AU.pointsize;for(var AS=0;AS<Aa.length;AS+=AQ){var AX=Aa[AS],AW=Aa[AS+1];if(AX==null||AX<AZ.min||AX>AZ.max||AW<AY.min||AW>AY.max){continue}Y.beginPath();Y.arc(AZ.p2c(AX),AY.p2c(AW)+AR,AT,0,AV,false);if(Ab){Y.fillStyle=Ab;Y.fill()}Y.stroke()}}Y.save();Y.translate(e.left,e.top);var AO=AN.lines.lineWidth,AL=AN.shadowSize,AK=AN.points.radius;if(AO>0&&AL>0){var AM=AL/2;Y.lineWidth=AM;Y.strokeStyle="rgba(0,0,0,0.1)";AP(AN.datapoints,AK,null,AM+AM/2,Math.PI,AN.xaxis,AN.yaxis);Y.strokeStyle="rgba(0,0,0,0.2)";AP(AN.datapoints,AK,null,AM/2,Math.PI,AN.xaxis,AN.yaxis)}Y.lineWidth=AO;Y.strokeStyle=AN.color;AP(AN.datapoints,AK,V(AN.points,AN.color),0,2*Math.PI,AN.xaxis,AN.yaxis);Y.restore()}function AB(AV,AU,Ad,AQ,AY,AN,AL,AT,AS,Ac,AZ){var AM,Ab,AR,AX,AO,AK,AW,AP,Aa;if(AZ){AP=AK=AW=true;AO=false;AM=Ad;Ab=AV;AX=AU+AQ;AR=AU+AY;if(Ab<AM){Aa=Ab;Ab=AM;AM=Aa;AO=true;AK=false}}else{AO=AK=AW=true;AP=false;AM=AV+AQ;Ab=AV+AY;AR=Ad;AX=AU;if(AX<AR){Aa=AX;AX=AR;AR=Aa;AP=true;AW=false}}if(Ab<AT.min||AM>AT.max||AX<AS.min||AR>AS.max){return }if(AM<AT.min){AM=AT.min;AO=false}if(Ab>AT.max){Ab=AT.max;AK=false}if(AR<AS.min){AR=AS.min;AP=false}if(AX>AS.max){AX=AS.max;AW=false}AM=AT.p2c(AM);AR=AS.p2c(AR);Ab=AT.p2c(Ab);AX=AS.p2c(AX);if(AL){Ac.beginPath();Ac.moveTo(AM,AR);Ac.lineTo(AM,AX);Ac.lineTo(Ab,AX);Ac.lineTo(Ab,AR);Ac.fillStyle=AL(AR,AX);Ac.fill()}if(AO||AK||AW||AP){Ac.beginPath();Ac.moveTo(AM,AR+AN);if(AO){Ac.lineTo(AM,AX+AN)}else{Ac.moveTo(AM,AX+AN)}if(AW){Ac.lineTo(Ab,AX+AN)}else{Ac.moveTo(Ab,AX+AN)}if(AK){Ac.lineTo(Ab,AR+AN)}else{Ac.moveTo(Ab,AR+AN)}if(AP){Ac.lineTo(AM,AR+AN)}else{Ac.moveTo(AM,AR+AN)}Ac.stroke()}}function n(AM){function AL(AS,AR,AU,AP,AT,AW,AV){var AX=AS.points,AO=AS.pointsize;for(var AQ=0;AQ<AX.length;AQ+=AO){if(AX[AQ]==null){continue}AB(AX[AQ],AX[AQ+1],AX[AQ+2],AR,AU,AP,AT,AW,AV,Y,AM.bars.horizontal)}}Y.save();Y.translate(e.left,e.top);Y.lineWidth=AM.bars.lineWidth;Y.strokeStyle=AM.color;var AK=AM.bars.align=="left"?0:-AM.bars.barWidth/2;var AN=AM.bars.fill?function(AO,AP){return V(AM.bars,AM.color,AO,AP)}:null;AL(AM.datapoints,AK,AK+AM.bars.barWidth,0,AN,AM.xaxis,AM.yaxis);Y.restore()}function V(AM,AK,AL,AO){var AN=AM.fill;if(!AN){return null}if(AM.fillColor){return R(AM.fillColor,AL,AO,AK)}var AP=C.color.parse(AK);AP.a=typeof AN=="number"?AN:0.4;AP.normalize();return AP.toString()}function AI(){l.find(".legend").remove();if(!g.legend.show){return }var AP=[],AN=false,AV=g.legend.labelFormatter,AU,AR;for(i=0;i<O.length;++i){AU=O[i];AR=AU.label;if(!AR){continue}if(i%g.legend.noColumns==0){if(AN){AP.push("</tr>")}AP.push("<tr>");AN=true}if(AV){AR=AV(AR,AU)}AP.push('<td class="legendColorBox"><div style="border:1px solid '+g.legend.labelBoxBorderColor+';padding:1px"><div style="width:4px;height:0;border:5px solid '+AU.color+';overflow:hidden"></div></div></td><td class="legendLabel">'+AR+"</td>")}if(AN){AP.push("</tr>")}if(AP.length==0){return }var AT='<table style="font-size:smaller;color:'+g.grid.color+'">'+AP.join("")+"</table>";if(g.legend.container!=null){C(g.legend.container).html(AT)}else{var AQ="",AL=g.legend.position,AM=g.legend.margin;if(AM[0]==null){AM=[AM,AM]}if(AL.charAt(0)=="n"){AQ+="top:"+(AM[1]+e.top)+"px;"}else{if(AL.charAt(0)=="s"){AQ+="bottom:"+(AM[1]+e.bottom)+"px;"}}if(AL.charAt(1)=="e"){AQ+="right:"+(AM[0]+e.right)+"px;"}else{if(AL.charAt(1)=="w"){AQ+="left:"+(AM[0]+e.left)+"px;"}}var AS=C('<div class="legend">'+AT.replace('style="','style="position:absolute;'+AQ+";")+"</div>").appendTo(l);if(g.legend.backgroundOpacity!=0){var AO=g.legend.backgroundColor;if(AO==null){AO=g.grid.backgroundColor;if(AO&&typeof AO=="string"){AO=C.color.parse(AO)}else{AO=C.color.extract(AS,"background-color")}AO.a=1;AO=AO.toString()}var AK=AS.children();C('<div style="position:absolute;width:'+AK.width()+"px;height:"+AK.height()+"px;"+AQ+"background-color:"+AO+';"> </div>').prependTo(AS).css("opacity",g.legend.backgroundOpacity)}}}var w=[],J=null;function AF(AR,AP,AM){var AX=g.grid.mouseActiveRadius,Aj=AX*AX+1,Ah=null,Aa=false,Af,Ad;for(Af=0;Af<O.length;++Af){if(!AM(O[Af])){continue}var AY=O[Af],AQ=AY.xaxis,AO=AY.yaxis,Ae=AY.datapoints.points,Ac=AY.datapoints.pointsize,AZ=AQ.c2p(AR),AW=AO.c2p(AP),AL=AX/AQ.scale,AK=AX/AO.scale;if(AY.lines.show||AY.points.show){for(Ad=0;Ad<Ae.length;Ad+=Ac){var AT=Ae[Ad],AS=Ae[Ad+1];if(AT==null){continue}if(AT-AZ>AL||AT-AZ<-AL||AS-AW>AK||AS-AW<-AK){continue}var AV=Math.abs(AQ.p2c(AT)-AR),AU=Math.abs(AO.p2c(AS)-AP),Ab=AV*AV+AU*AU;if(Ab<=Aj){Aj=Ab;Ah=[Af,Ad/Ac]}}}if(AY.bars.show&&!Ah){var AN=AY.bars.align=="left"?0:-AY.bars.barWidth/2,Ag=AN+AY.bars.barWidth;for(Ad=0;Ad<Ae.length;Ad+=Ac){var AT=Ae[Ad],AS=Ae[Ad+1],Ai=Ae[Ad+2];if(AT==null){continue}if(O[Af].bars.horizontal?(AZ<=Math.max(Ai,AT)&&AZ>=Math.min(Ai,AT)&&AW>=AS+AN&&AW<=AS+Ag):(AZ>=AT+AN&&AZ<=AT+Ag&&AW>=Math.min(Ai,AS)&&AW<=Math.max(Ai,AS))){Ah=[Af,Ad/Ac]}}}}if(Ah){Af=Ah[0];Ad=Ah[1];Ac=O[Af].datapoints.pointsize;return{datapoint:O[Af].datapoints.points.slice(Ad*Ac,(Ad+1)*Ac),dataIndex:Ad,series:O[Af],seriesIndex:Af}}return null}function D(AK){if(g.grid.hoverable){H("plothover",AK,function(AL){return AL.hoverable!=false})}}function d(AK){H("plotclick",AK,function(AL){return AL.clickable!=false})}function H(AL,AK,AM){var AN=AD.offset(),AS={pageX:AK.pageX,pageY:AK.pageY},AQ=AK.pageX-AN.left-e.left,AO=AK.pageY-AN.top-e.top;if(s.xaxis.used){AS.x=s.xaxis.c2p(AQ)}if(s.yaxis.used){AS.y=s.yaxis.c2p(AO)}if(s.x2axis.used){AS.x2=s.x2axis.c2p(AQ)}if(s.y2axis.used){AS.y2=s.y2axis.c2p(AO)}var AT=AF(AQ,AO,AM);if(AT){AT.pageX=parseInt(AT.series.xaxis.p2c(AT.datapoint[0])+AN.left+e.left);AT.pageY=parseInt(AT.series.yaxis.p2c(AT.datapoint[1])+AN.top+e.top)}if(g.grid.autoHighlight){for(var AP=0;AP<w.length;++AP){var AR=w[AP];if(AR.auto==AL&&!(AT&&AR.series==AT.series&&AR.point==AT.datapoint)){x(AR.series,AR.point)}}if(AT){AE(AT.series,AT.datapoint,AL)}}l.trigger(AL,[AS,AT])}function q(){if(!J){J=setTimeout(v,30)}}function v(){J=null;AJ.save();AJ.clearRect(0,0,y,Q);AJ.translate(e.left,e.top);var AL,AK;for(AL=0;AL<w.length;++AL){AK=w[AL];if(AK.series.bars.show){z(AK.series,AK.point)}else{u(AK.series,AK.point)}}AJ.restore();Z(L.drawOverlay,[AJ])}function AE(AM,AK,AN){if(typeof AM=="number"){AM=O[AM]}if(typeof AK=="number"){AK=AM.data[AK]}var AL=j(AM,AK);if(AL==-1){w.push({series:AM,point:AK,auto:AN});q()}else{if(!AN){w[AL].auto=false}}}function x(AM,AK){if(AM==null&&AK==null){w=[];q()}if(typeof AM=="number"){AM=O[AM]}if(typeof AK=="number"){AK=AM.data[AK]}var AL=j(AM,AK);if(AL!=-1){w.splice(AL,1);q()}}function j(AM,AN){for(var AK=0;AK<w.length;++AK){var AL=w[AK];if(AL.series==AM&&AL.point[0]==AN[0]&&AL.point[1]==AN[1]){return AK}}return -1}function u(AN,AM){var AL=AM[0],AR=AM[1],AQ=AN.xaxis,AP=AN.yaxis;if(AL<AQ.min||AL>AQ.max||AR<AP.min||AR>AP.max){return }var AO=AN.points.radius+AN.points.lineWidth/2;AJ.lineWidth=AO;AJ.strokeStyle=C.color.parse(AN.color).scale("a",0.5).toString();var AK=1.5*AO;AJ.beginPath();AJ.arc(AQ.p2c(AL),AP.p2c(AR),AK,0,2*Math.PI,false);AJ.stroke()}function z(AN,AK){AJ.lineWidth=AN.bars.lineWidth;AJ.strokeStyle=C.color.parse(AN.color).scale("a",0.5).toString();var AM=C.color.parse(AN.color).scale("a",0.5).toString();var AL=AN.bars.align=="left"?0:-AN.bars.barWidth/2;AB(AK[0],AK[1],AK[2]||0,AL,AL+AN.bars.barWidth,0,function(){return AM},AN.xaxis,AN.yaxis,AJ,AN.bars.horizontal)}function R(AM,AL,AQ,AO){if(typeof AM=="string"){return AM}else{var AP=Y.createLinearGradient(0,AQ,0,AL);for(var AN=0,AK=AM.colors.length;AN<AK;++AN){var AR=AM.colors[AN];if(typeof AR!="string"){AR=C.color.parse(AO).scale("rgb",AR.brightness);AR.a*=AR.opacity;AR=AR.toString()}AP.addColorStop(AN/(AK-1),AR)}return AP}}}C.plot=function(G,E,D){var F=new B(C(G),E,D,C.plot.plugins);return F};C.plot.plugins=[];C.plot.formatDate=function(H,E,G){var L=function(N){N=""+N;return N.length==1?"0"+N:N};var D=[];var M=false;var K=H.getUTCHours();var I=K<12;if(G==null){G=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}if(E.search(/%p|%P/)!=-1){if(K>12){K=K-12}else{if(K==0){K=12}}}for(var F=0;F<E.length;++F){var J=E.charAt(F);if(M){switch(J){case"h":J=""+K;break;case"H":J=L(K);break;case"M":J=L(H.getUTCMinutes());break;case"S":J=L(H.getUTCSeconds());break;case"d":J=""+H.getUTCDate();break;case"m":J=""+(H.getUTCMonth()+1);break;case"y":J=""+H.getUTCFullYear();break;case"b":J=""+G[H.getUTCMonth()];break;case"p":J=(I)?("am"):("pm");break;case"P":J=(I)?("AM"):("PM");break}D.push(J);M=false}else{if(J=="%"){M=true}else{D.push(J)}}}return D.join("")};function A(E,D){return D*Math.floor(E/D)}})(jQuery); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.form.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.form.js.svn-base deleted file mode 100755 index 443114fda381ddc5a1ced7ea61a9333caffebe80..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.form.js.svn-base +++ /dev/null @@ -1,654 +0,0 @@ -/* - * jQuery Form Plugin - * version: 2.33 (22-SEP-2009) - * @requires jQuery v1.2.6 or later - * - * Examples and documentation at: http://malsup.com/jquery/form/ - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - */ -;(function($) { - -/* - Usage Note: - ----------- - Do not use both ajaxSubmit and ajaxForm on the same form. These - functions are intended to be exclusive. Use ajaxSubmit if you want - to bind your own submit handler to the form. For example, - - $(document).ready(function() { - $('#myForm').bind('submit', function() { - $(this).ajaxSubmit({ - target: '#output' - }); - return false; // <-- important! - }); - }); - - Use ajaxForm when you want the plugin to manage all the event binding - for you. For example, - - $(document).ready(function() { - $('#myForm').ajaxForm({ - target: '#output' - }); - }); - - When using ajaxForm, the ajaxSubmit function will be invoked for you - at the appropriate time. -*/ - -/** - * ajaxSubmit() provides a mechanism for immediately submitting - * an HTML form using AJAX. - */ -$.fn.ajaxSubmit = function(options) { - // fast fail if nothing selected (http://dev.jquery.com/ticket/2752) - if (!this.length) { - log('ajaxSubmit: skipping submit process - no element selected'); - return this; - } - - if (typeof options == 'function') - options = { success: options }; - - var url = $.trim(this.attr('action')); - if (url) { - // clean url (don't include hash vaue) - url = (url.match(/^([^#]+)/)||[])[1]; - } - url = url || window.location.href || ''; - - options = $.extend({ - url: url, - type: this.attr('method') || 'GET' - }, options || {}); - - // hook for manipulating the form data before it is extracted; - // convenient for use with rich editors like tinyMCE or FCKEditor - var veto = {}; - this.trigger('form-pre-serialize', [this, options, veto]); - if (veto.veto) { - log('ajaxSubmit: submit vetoed via form-pre-serialize trigger'); - return this; - } - - // provide opportunity to alter form data before it is serialized - if (options.beforeSerialize && options.beforeSerialize(this, options) === false) { - log('ajaxSubmit: submit aborted via beforeSerialize callback'); - return this; - } - - var a = this.formToArray(options.semantic); - if (options.data) { - options.extraData = options.data; - for (var n in options.data) { - if(options.data[n] instanceof Array) { - for (var k in options.data[n]) - a.push( { name: n, value: options.data[n][k] } ); - } - else - a.push( { name: n, value: options.data[n] } ); - } - } - - // give pre-submit callback an opportunity to abort the submit - if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) { - log('ajaxSubmit: submit aborted via beforeSubmit callback'); - return this; - } - - // fire vetoable 'validate' event - this.trigger('form-submit-validate', [a, this, options, veto]); - if (veto.veto) { - log('ajaxSubmit: submit vetoed via form-submit-validate trigger'); - return this; - } - - var q = $.param(a); - - if (options.type.toUpperCase() == 'GET') { - options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q; - options.data = null; // data is null for 'get' - } - else - options.data = q; // data is the query string for 'post' - - var $form = this, callbacks = []; - if (options.resetForm) callbacks.push(function() { $form.resetForm(); }); - if (options.clearForm) callbacks.push(function() { $form.clearForm(); }); - - // perform a load on the target only if dataType is not provided - if (!options.dataType && options.target) { - var oldSuccess = options.success || function(){}; - callbacks.push(function(data) { - $(options.target).html(data).each(oldSuccess, arguments); - }); - } - else if (options.success) - callbacks.push(options.success); - - options.success = function(data, status) { - for (var i=0, max=callbacks.length; i < max; i++) - callbacks[i].apply(options, [data, status, $form]); - }; - - // are there files to upload? - var files = $('input:file', this).fieldValue(); - var found = false; - for (var j=0; j < files.length; j++) - if (files[j]) - found = true; - - var multipart = false; -// var mp = 'multipart/form-data'; -// multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp); - - // options.iframe allows user to force iframe mode - if (options.iframe || found || multipart) { - // hack to fix Safari hang (thanks to Tim Molendijk for this) - // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d - if (options.closeKeepAlive) - $.get(options.closeKeepAlive, fileUpload); - else - fileUpload(); - } - else{ - $.ajax(options); - } - - // fire 'notify' event - this.trigger('form-submit-notify', [this, options]); - return this; - - - // private function for handling file uploads (hat tip to YAHOO!) - function fileUpload() { - var form = $form[0]; - - if ($(':input[name=submit]', form).length) { - alert('Error: Form elements must not be named "submit".'); - return; - } - - var opts = $.extend({}, $.ajaxSettings, options); - var s = $.extend(true, {}, $.extend(true, {}, $.ajaxSettings), opts); - - var id = 'jqFormIO' + (new Date().getTime()); - var $io = $('<iframe id="' + id + '" name="' + id + '" src="about:blank" />'); - var io = $io[0]; - - $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' }); - - var xhr = { // mock object - aborted: 0, - responseText: null, - responseXML: null, - status: 0, - statusText: 'n/a', - getAllResponseHeaders: function() {}, - getResponseHeader: function() {}, - setRequestHeader: function() {}, - abort: function() { - this.aborted = 1; - $io.attr('src','about:blank'); // abort op in progress - } - }; - - var g = opts.global; - // trigger ajax global events so that activity/block indicators work like normal - if (g && ! $.active++) $.event.trigger("ajaxStart"); - if (g) $.event.trigger("ajaxSend", [xhr, opts]); - - if (s.beforeSend && s.beforeSend(xhr, s) === false) { - s.global && $.active--; - return; - } - if (xhr.aborted) - return; - - var cbInvoked = 0; - var timedOut = 0; - - // add submitting element to data if we know it - var sub = form.clk; - if (sub) { - var n = sub.name; - if (n && !sub.disabled) { - options.extraData = options.extraData || {}; - options.extraData[n] = sub.value; - if (sub.type == "image") { - options.extraData[name+'.x'] = form.clk_x; - options.extraData[name+'.y'] = form.clk_y; - } - } - } - - // take a breath so that pending repaints get some cpu time before the upload starts - setTimeout(function() { - // make sure form attrs are set - var t = $form.attr('target'), a = $form.attr('action'); - - // update form attrs in IE friendly way - form.setAttribute('target',id); - if (form.getAttribute('method') != 'POST') - form.setAttribute('method', 'POST'); - if (form.getAttribute('action') != opts.url) - form.setAttribute('action', opts.url); - - // ie borks in some cases when setting encoding - if (! options.skipEncodingOverride) { - $form.attr({ - encoding: 'multipart/form-data', - enctype: 'multipart/form-data' - }); - } - - // support timout - if (opts.timeout) - setTimeout(function() { timedOut = true; cb(); }, opts.timeout); - - // add "extra" data to form if provided in options - var extraInputs = []; - try { - if (options.extraData) - for (var n in options.extraData) - extraInputs.push( - $('<input type="hidden" name="'+n+'" value="'+options.extraData[n]+'" />') - .appendTo(form)[0]); - - // add iframe to doc and submit the form - $io.appendTo('body'); - io.attachEvent ? io.attachEvent('onload', cb) : io.addEventListener('load', cb, false); - form.submit(); - } - finally { - // reset attrs and remove "extra" input elements - form.setAttribute('action',a); - t ? form.setAttribute('target', t) : $form.removeAttr('target'); - $(extraInputs).remove(); - } - }, 10); - - var domCheckCount = 50; - - function cb() { - if (cbInvoked++) return; - - io.detachEvent ? io.detachEvent('onload', cb) : io.removeEventListener('load', cb, false); - - var ok = true; - try { - if (timedOut) throw 'timeout'; - // extract the server response from the iframe - var data, doc; - - doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document; - - var isXml = opts.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc); - log('isXml='+isXml); - if (!isXml && (doc.body == null || doc.body.innerHTML == '')) { - if (--domCheckCount) { - // in some browsers (Opera) the iframe DOM is not always traversable when - // the onload callback fires, so we loop a bit to accommodate - cbInvoked = 0; - setTimeout(cb, 100); - return; - } - log('Could not access iframe DOM after 50 tries.'); - return; - } - - xhr.responseText = doc.body ? doc.body.innerHTML : null; - xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc; - xhr.getResponseHeader = function(header){ - var headers = {'content-type': opts.dataType}; - return headers[header]; - }; - - if (opts.dataType == 'json' || opts.dataType == 'script') { - // see if user embedded response in textarea - var ta = doc.getElementsByTagName('textarea')[0]; - if (ta) - xhr.responseText = ta.value; - else { - // account for browsers injecting pre around json response - var pre = doc.getElementsByTagName('pre')[0]; - if (pre) - xhr.responseText = pre.innerHTML; - } - } - else if (opts.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) { - xhr.responseXML = toXml(xhr.responseText); - } - data = $.httpData(xhr, opts.dataType); - } - catch(e){ - ok = false; - $.handleError(opts, xhr, 'error', e); - } - - // ordering of these callbacks/triggers is odd, but that's how $.ajax does it - if (ok) { - opts.success(data, 'success'); - if (g) $.event.trigger("ajaxSuccess", [xhr, opts]); - } - if (g) $.event.trigger("ajaxComplete", [xhr, opts]); - if (g && ! --$.active) $.event.trigger("ajaxStop"); - if (opts.complete) opts.complete(xhr, ok ? 'success' : 'error'); - - // clean up - setTimeout(function() { - $io.remove(); - xhr.responseXML = null; - }, 100); - }; - - function toXml(s, doc) { - if (window.ActiveXObject) { - doc = new ActiveXObject('Microsoft.XMLDOM'); - doc.async = 'false'; - doc.loadXML(s); - } - else - doc = (new DOMParser()).parseFromString(s, 'text/xml'); - return (doc && doc.documentElement && doc.documentElement.tagName != 'parsererror') ? doc : null; - }; - }; -}; - -/** - * ajaxForm() provides a mechanism for fully automating form submission. - * - * The advantages of using this method instead of ajaxSubmit() are: - * - * 1: This method will include coordinates for <input type="image" /> elements (if the element - * is used to submit the form). - * 2. This method will include the submit element's name/value data (for the element that was - * used to submit the form). - * 3. This method binds the submit() method to the form for you. - * - * The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely - * passes the options argument along after properly binding events for submit elements and - * the form itself. - */ -$.fn.ajaxForm = function(options) { - return this.ajaxFormUnbind().bind('submit.form-plugin', function() { - $(this).ajaxSubmit(options); - return false; - }).bind('click.form-plugin', function(e) { - var $el = $(e.target); - if (!($el.is(":submit,input:image"))) { - return; - } - var form = this; - form.clk = e.target; - if (e.target.type == 'image') { - if (e.offsetX != undefined) { - form.clk_x = e.offsetX; - form.clk_y = e.offsetY; - } else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin - var offset = $el.offset(); - form.clk_x = e.pageX - offset.left; - form.clk_y = e.pageY - offset.top; - } else { - form.clk_x = e.pageX - e.target.offsetLeft; - form.clk_y = e.pageY - e.target.offsetTop; - } - } - // clear form vars - setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 10); - }); -}; - -// ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm -$.fn.ajaxFormUnbind = function() { - return this.unbind('submit.form-plugin click.form-plugin'); -}; - -/** - * formToArray() gathers form element data into an array of objects that can - * be passed to any of the following ajax functions: $.get, $.post, or load. - * Each object in the array has both a 'name' and 'value' property. An example of - * an array for a simple login form might be: - * - * [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ] - * - * It is this array that is passed to pre-submit callback functions provided to the - * ajaxSubmit() and ajaxForm() methods. - */ -$.fn.formToArray = function(semantic) { - var a = []; - if (this.length == 0) return a; - - var form = this[0]; - var els = semantic ? form.getElementsByTagName('*') : form.elements; - if (!els) return a; - for(var i=0, max=els.length; i < max; i++) { - var el = els[i]; - var n = el.name; - if (!n) continue; - - if (semantic && form.clk && el.type == "image") { - // handle image inputs on the fly when semantic == true - if(!el.disabled && form.clk == el) { - a.push({name: n, value: $(el).val()}); - a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y}); - } - continue; - } - - var v = $.fieldValue(el, true); - if (v && v.constructor == Array) { - for(var j=0, jmax=v.length; j < jmax; j++) - a.push({name: n, value: v[j]}); - } - else if (v !== null && typeof v != 'undefined') - a.push({name: n, value: v}); - } - - if (!semantic && form.clk) { - // input type=='image' are not found in elements array! handle it here - var $input = $(form.clk), input = $input[0], n = input.name; - if (n && !input.disabled && input.type == 'image') { - a.push({name: n, value: $input.val()}); - a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y}); - } - } - return a; -}; - -/** - * Serializes form data into a 'submittable' string. This method will return a string - * in the format: name1=value1&name2=value2 - */ -$.fn.formSerialize = function(semantic) { - //hand off to jQuery.param for proper encoding - return $.param(this.formToArray(semantic)); -}; - -/** - * Serializes all field elements in the jQuery object into a query string. - * This method will return a string in the format: name1=value1&name2=value2 - */ -$.fn.fieldSerialize = function(successful) { - var a = []; - this.each(function() { - var n = this.name; - if (!n) return; - var v = $.fieldValue(this, successful); - if (v && v.constructor == Array) { - for (var i=0,max=v.length; i < max; i++) - a.push({name: n, value: v[i]}); - } - else if (v !== null && typeof v != 'undefined') - a.push({name: this.name, value: v}); - }); - //hand off to jQuery.param for proper encoding - return $.param(a); -}; - -/** - * Returns the value(s) of the element in the matched set. For example, consider the following form: - * - * <form><fieldset> - * <input name="A" type="text" /> - * <input name="A" type="text" /> - * <input name="B" type="checkbox" value="B1" /> - * <input name="B" type="checkbox" value="B2"/> - * <input name="C" type="radio" value="C1" /> - * <input name="C" type="radio" value="C2" /> - * </fieldset></form> - * - * var v = $(':text').fieldValue(); - * // if no values are entered into the text inputs - * v == ['',''] - * // if values entered into the text inputs are 'foo' and 'bar' - * v == ['foo','bar'] - * - * var v = $(':checkbox').fieldValue(); - * // if neither checkbox is checked - * v === undefined - * // if both checkboxes are checked - * v == ['B1', 'B2'] - * - * var v = $(':radio').fieldValue(); - * // if neither radio is checked - * v === undefined - * // if first radio is checked - * v == ['C1'] - * - * The successful argument controls whether or not the field element must be 'successful' - * (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls). - * The default value of the successful argument is true. If this value is false the value(s) - * for each element is returned. - * - * Note: This method *always* returns an array. If no valid value can be determined the - * array will be empty, otherwise it will contain one or more values. - */ -$.fn.fieldValue = function(successful) { - for (var val=[], i=0, max=this.length; i < max; i++) { - var el = this[i]; - var v = $.fieldValue(el, successful); - if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) - continue; - v.constructor == Array ? $.merge(val, v) : val.push(v); - } - return val; -}; - -/** - * Returns the value of the field element. - */ -$.fieldValue = function(el, successful) { - var n = el.name, t = el.type, tag = el.tagName.toLowerCase(); - if (typeof successful == 'undefined') successful = true; - - if (successful && (!n || el.disabled || t == 'reset' || t == 'button' || - (t == 'checkbox' || t == 'radio') && !el.checked || - (t == 'submit' || t == 'image') && el.form && el.form.clk != el || - tag == 'select' && el.selectedIndex == -1)) - return null; - - if (tag == 'select') { - var index = el.selectedIndex; - if (index < 0) return null; - var a = [], ops = el.options; - var one = (t == 'select-one'); - var max = (one ? index+1 : ops.length); - for(var i=(one ? index : 0); i < max; i++) { - var op = ops[i]; - if (op.selected) { - var v = op.value; - if (!v) // extra pain for IE... - v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value; - if (one) return v; - a.push(v); - } - } - return a; - } - return el.value; -}; - -/** - * Clears the form data. Takes the following actions on the form's input fields: - * - input text fields will have their 'value' property set to the empty string - * - select elements will have their 'selectedIndex' property set to -1 - * - checkbox and radio inputs will have their 'checked' property set to false - * - inputs of type submit, button, reset, and hidden will *not* be effected - * - button elements will *not* be effected - */ -$.fn.clearForm = function() { - return this.each(function() { - $('input,select,textarea', this).clearFields(); - }); -}; - -/** - * Clears the selected form elements. - */ -$.fn.clearFields = $.fn.clearInputs = function() { - return this.each(function() { - var t = this.type, tag = this.tagName.toLowerCase(); - if (t == 'text' || t == 'password' || tag == 'textarea') - this.value = ''; - else if (t == 'checkbox' || t == 'radio') - this.checked = false; - else if (tag == 'select') - this.selectedIndex = -1; - }); -}; - -/** - * Resets the form data. Causes all form elements to be reset to their original value. - */ -$.fn.resetForm = function() { - return this.each(function() { - // guard against an input with the name of 'reset' - // note that IE reports the reset function as an 'object' - if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) - this.reset(); - }); -}; - -/** - * Enables or disables any matching elements. - */ -$.fn.enable = function(b) { - if (b == undefined) b = true; - return this.each(function() { - this.disabled = !b; - }); -}; - -/** - * Checks/unchecks any matching checkboxes or radio buttons and - * selects/deselects and matching option elements. - */ -$.fn.selected = function(select) { - if (select == undefined) select = true; - return this.each(function() { - var t = this.type; - if (t == 'checkbox' || t == 'radio') - this.checked = select; - else if (this.tagName.toLowerCase() == 'option') { - var $sel = $(this).parent('select'); - if (select && $sel[0] && $sel[0].type == 'select-one') { - // deselect all other options - $sel.find('option').selected(false); - } - this.selected = select; - } - }); -}; - -// helper fn for console logging -// set $.fn.ajaxSubmit.debug to true to enable debug logging -function log() { - if ($.fn.ajaxSubmit.debug && window.console && window.console.log) - window.console.log('[jquery.form] ' + Array.prototype.join.call(arguments,'')); -}; - -})(jQuery); diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.i18n.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.i18n.js.svn-base deleted file mode 100755 index 0a155a318388e97e8493d60f5aa02652ac824f5f..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.i18n.js.svn-base +++ /dev/null @@ -1,133 +0,0 @@ -/* - * jQuery i18n plugin - * @requires jQuery v1.1 or later - * - * Examples at: http://recurser.com/articles/2008/02/21/jquery-i18n-translation-plugin/ - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - * Based on 'javascript i18n that almost doesn't suck' by markos - * http://markos.gaivo.net/blog/?p=100 - * - * Revision: $Id$ - * Version: 1.0.0 Feb-10-2008 - */ - (function($) { -/** - * i18n provides a mechanism for translating strings using a jscript dictionary. - * - */ - - -/* - * i18n property list - */ -$.i18n = { - -/** - * setDictionary() - * Initialise the dictionary and translate nodes - * - * @param property_list i18n_dict : The dictionary to use for translation - */ - setDictionary: function(i18n_dict) { - i18n_dict = i18n_dict; - }, - -/** - * _() - * The actual translation function. Looks the given string up in the - * dictionary and returns the translation if one exists. If a translation - * is not found, returns the original word - * - * @param string str : The string to translate - * @param property_list params : params for using printf() on the string - * @return string : Translated word - * - */ - _: function (str, params) { - var transl = str; - if (i18n_dict&& i18n_dict[str]) { - transl = i18n_dict[str]; - } - return this.printf(transl, params); - }, - -/** - * toEntity() - * Change non-ASCII characters to entity representation - * - * @param string str : The string to transform - * @return string result : Original string with non-ASCII content converted to entities - * - */ - toEntity: function (str) { - var result = ''; - for (var i=0;i<str.length; i++) { - if (str.charCodeAt(i) > 128) - result += "&#"+str.charCodeAt(i)+";"; - else - result += str.charAt(i); - } - return result; - }, - -/** - * stripStr() - * - * @param string str : The string to strip - * @return string result : Stripped string - * - */ - stripStr: function(str) { - return str.replace(/^\s*/, "").replace(/\s*$/, ""); - }, - -/** - * stripStrML() - * - * @param string str : The multi-line string to strip - * @return string result : Stripped string - * - */ - stripStrML: function(str) { - // Split because m flag doesn't exist before JS1.5 and we need to - // strip newlines anyway - var parts = str.split('\n'); - for (var i=0; i<parts.length; i++) - parts[i] = stripStr(parts[i]); - - // Don't join with empty strings, because it "concats" words - // And strip again - return stripStr(parts.join(" ")); - }, - -/* - * printf() - * C-printf like function, which substitutes %s with parameters - * given in list. %%s is used to escape %s. - * - * Doesn't work in IE5.0 (splice) - * - * @param string S : string to perform printf on. - * @param string L : Array of arguments for printf() - */ - printf: function(S, L) { - if (!L) return S; - - var nS = ""; - var tS = S.split("%s"); - - for(var i=0; i<L.length; i++) { - if (tS[i].lastIndexOf('%') == tS[i].length-1 && i != L.length-1) - tS[i] += "s"+tS.splice(i+1,1)[0]; - nS += tS[i] + L[i]; - } - return nS + tS[tS.length-1]; - } - -}; - - -})(jQuery); diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.openid.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.openid.js.svn-base deleted file mode 100755 index a1316c191d10d346b546536cb09e595e58324cba..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.openid.js.svn-base +++ /dev/null @@ -1,171 +0,0 @@ -/* -openid login boxes -*/ -var providers_large = { - google: { - name: 'Google', - url: 'https://www.google.com/accounts/o8/id' - }, - yahoo: { - name: 'Yahoo', - url: 'http://yahoo.com/' - }, - aol: { - name: 'AOL', - label: 'Enter your AOL screenname.', - url: 'http://openid.aol.com/{username}' - }, - openid: { - name: 'OpenID', - label: 'Enter your OpenID.', - url: 'http://' - } -}; -var providers_small = { - myopenid: { - name: 'MyOpenID', - label: 'Enter your MyOpenID username.', - url: 'http://{username}.myopenid.com/' - }, - livejournal: { - name: 'LiveJournal', - label: 'Enter your Livejournal username.', - url: 'http://{username}.livejournal.com/' - }, - flickr: { - name: 'Flickr', - label: 'Enter your Flickr username.', - url: 'http://flickr.com/{username}/' - }, - technorati: { - name: 'Technorati', - label: 'Enter your Technorati username.', - url: 'http://technorati.com/people/technorati/{username}/' - }, - wordpress: { - name: 'Wordpress', - label: 'Enter your Wordpress.com username.', - url: 'http://{username}.wordpress.com/' - }, - blogger: { - name: 'Blogger', - label: 'Your Blogger account', - url: 'http://{username}.blogspot.com/' - }, - verisign: { - name: 'Verisign', - label: 'Your Verisign username', - url: 'http://{username}.pip.verisignlabs.com/' - }, - verisign: { - name: 'Verisign', - label: 'Your Verisign username', - url: 'http://{username}.pip.verisignlabs.com/' - }, - claimid: { - name: 'ClaimID', - label: 'Your ClaimID username', - url: 'http://claimid.com/{username}' - } -}; -var providers = $.extend({}, providers_large, providers_small); - -var openid = { - - cookie_expires: 6*30, // 6 months. - cookie_name: 'openid_provider', - cookie_path: '/', - - img_path: '/media/images/openid/', - - input_id: null, - provider_url: null, - - init: function(input_id) { - - var openid_btns = $('#openid_btns'); - this.input_id = input_id; - - $('#openid_choice').show(); - //$('#openid_input_area').empty(); - - // add box for each provider - for (id in providers_large) { - openid_btns.append(this.getBoxHTML(providers_large[id], 'large', '.gif')); - } - if (providers_small) { - openid_btns.append('<br/>'); - for (id in providers_small) { - openid_btns.append(this.getBoxHTML(providers_small[id], 'small', '.png')); - } - } - - var box_id = this.readCookie(); - if (box_id) { - this.signin(box_id, true); - } - }, - getBoxHTML: function(provider, box_size, image_ext) { - - var box_id = provider["name"].toLowerCase(); - return '<a title="'+provider["name"]+'" href="javascript: openid.signin(\''+ box_id +'\');"' + - ' style="background: #FFF url(' + this.img_path + box_id + image_ext+') no-repeat center center" ' + 'class="' + box_id + ' openid_' + box_size + '_btn"></a>'; - - }, - /* Provider image click */ - signin: function(box_id, onload) { - var provider = providers[box_id]; - if (! provider) { - return; - } - this.highlight(box_id); - this.setCookie(box_id); - - $('#'+this.input_id).val(provider['url']); - var input = $('#'+this.input_id); - if(document.selection){ - var r = document.all.openid_url.createTextRange(); - var res = r.findText("{username}"); - if(res) - r.select(); - - } - else { - var text = input.val(); - var searchText = "{username}"; - var posStart = text.indexOf(searchText); - if(posStart > -1){ - input.focus(); - document.getElementById(this.input_id).setSelectionRange(posStart, posStart + searchText.length); - } - } - }, - - highlight: function (box_id) { - // remove previous highlight. - var highlight = $('#openid_highlight'); - if (highlight) { - highlight.replaceWith($('#openid_highlight a')[0]); - } - // add new highlight. - $('.'+box_id).wrap('<div id="openid_highlight"></div>'); - }, - - setCookie: function (value) { - var date = new Date(); - date.setTime(date.getTime()+(this.cookie_expires*24*60*60*1000)); - var expires = "; expires="+date.toGMTString(); - document.cookie = this.cookie_name+"="+value+expires+"; path=" + this.cookie_path; - }, - - readCookie: function () { - var nameEQ = this.cookie_name + "="; - var ca = document.cookie.split(';'); - for(var i=0;i < ca.length;i++) { - var c = ca[i]; - while (c.charAt(0)==' ') c = c.substring(1,c.length); - if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); - } - return null; - } -}; diff --git a/forum/skins/light/media/js/.svn/text-base/jquery.validate.pack.js.svn-base b/forum/skins/light/media/js/.svn/text-base/jquery.validate.pack.js.svn-base deleted file mode 100755 index 4913450045cf39405820026b71767ebd487162ab..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/jquery.validate.pack.js.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -/* - * jQuery validation plug-in 1.5 - * - * http://bassistance.de/jquery-plugins/jquery-plugin-validation/ - * http://docs.jquery.com/Plugins/Validation - * - * Copyright (c) 2006 - 2008 Jörn Zaefferer - * - * $Id: jquery.validate.js 5952 2008-11-25 19:12:30Z joern.zaefferer $ - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - */ -eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(7($){$.G($.2J,{1y:7(c){l(!6.E){c&&c.2g&&2T.1q&&1q.4Z("3r 2y, 4B\'t 1y, 6d 3r");8}p b=$.16(6[0],\'u\');l(b){8 b}b=1V $.u(c,6[0]);$.16(6[0],\'u\',b);l(b.q.3s){6.4I("1Y, 4E").1t(".4w").4p(7(){b.35=v});6.30(7(a){l(b.q.2g)a.5X();7 24(){l(b.q.3S){b.q.3S.12(b,b.V);8 H}8 v}l(b.35){b.35=H;8 24()}l(b.K()){l(b.1g){b.1v=v;8 H}8 24()}1c{b.2i();8 H}})}8 b},M:7(){l($(6[0]).2H(\'K\')){8 6.1y().K()}1c{p b=H;p a=$(6[0].K).1y();6.O(7(){b|=a.L(6)});8 b}},4L:7(a){p b={},$L=6;$.O(a.1H(/\\s/),7(){b[6]=$L.1G(6);$L.4G(6)});8 b},1b:7(h,k){p f=6[0];l(h){p i=$.16(f.K,\'u\').q;p d=i.1b;p c=$.u.2s(f);2q(h){1e"2o":$.G(c,$.u.1S(k));d[f.r]=c;l(k.J)i.J[f.r]=$.G(i.J[f.r],k.J);31;1e"63":l(!k){R d[f.r];8 c}p e={};$.O(k.1H(/\\s/),7(a,b){e[b]=c[b];R c[b]});8 e}}p g=$.u.3x($.G({},$.u.40(f),$.u.3W(f),$.u.3T(f),$.u.2s(f)),f);l(g.13){p j=g.13;R g.13;g=$.G({13:j},g)}8 g},Y:7(t){8 6.5A(6.2o(t).5w())}});$.G($.5t[":"],{5p:7(a){8!$.2b(a.T)},5m:7(a){8!!$.2b(a.T)},5i:7(a){8!a.3U}});$.1a=7(c,b){l(P.E==1)8 7(){p a=$.48(P);a.52(c);8 $.1a.1I(6,a)};l(P.E>2&&b.2m!=3A){b=$.48(P).4O(1)}l(b.2m!=3A){b=[b]}$.O(b,7(i,n){c=c.3u(1V 3t("\\\\{"+i+"\\\\}","g"),n)});8 c};$.u=7(b,a){6.q=$.G({},$.u.2D,b);6.V=a;6.3q()};$.G($.u,{2D:{J:{},21:{},1b:{},18:"3l",2B:"4H",2i:v,3k:$([]),2A:$([]),3s:v,3j:[],3h:H,4F:7(a){6.3g=a;l(6.q.4D&&!6.4C){6.q.1U&&6.q.1U.12(6,a,6.q.18);6.1E(a).2v()}},4z:7(a){l(!6.1u(a)&&(a.r Z 6.1j||!6.F(a))){6.L(a)}},4t:7(a){l(a.r Z 6.1j||a==6.4q){6.L(a)}},6n:7(a){l(a.r Z 6.1j)6.L(a)},37:7(a,b){$(a).2p(b)},1U:7(a,b){$(a).36(b)}},6g:7(a){$.G($.u.2D,a)},J:{13:"6e 4k 2H 13.",1R:"I 38 6 4k.",1F:"I N a M 1F 65.",1k:"I N a M 62.",1l:"I N a M 1l.",2a:"I N a M 1l (61).",20:"45 44 42 2E 5T¼5S 5R 2E.",1n:"I N a M 1n.",28:"45 44 42 5N 5M 2E.",1O:"I N 5G 1O",2d:"I N a M 5E 5C 1n.",3P:"I N 3O 5v T 5u.",3L:"I N a T 5q a M 5o.",15:$.1a("I N 3K 5n 2O {0} 2R."),1r:$.1a("I N 5k 5h {0} 2R."),2h:$.1a("I N a T 3E {0} 3R {1} 2R 5c."),27:$.1a("I N a T 3E {0} 3R {1}."),1m:$.1a("I N a T 5a 2O 47 43 3D {0}."),1w:$.1a("I N a T 51 2O 47 43 3D {0}.")},4f:H,4Y:{3q:7(){6.26=$(6.q.2A);6.3C=6.26.E&&6.26||$(6.V);6.2k=$(6.q.3k).2o(6.q.2A);6.1j={};6.4S={};6.1g=0;6.1d={};6.1f={};6.1J();p f=(6.21={});$.O(6.q.21,7(d,c){$.O(c.1H(/\\s/),7(a,b){f[b]=d})});p e=6.q.1b;$.O(e,7(b,a){e[b]=$.u.1S(a)});7 1p(a){p b=$.16(6[0].K,"u");b.q["3z"+a.1o]&&b.q["3z"+a.1o].12(b,6[0])}$(6.V).1p("3y 3w 4N",":2F, :4M, :4K, 23, 4J",1p).1p("4p",":3p, :3o",1p);l(6.q.3n)$(6.V).3m("1f-K.1y",6.q.3n)},K:7(){6.3v();$.G(6.1j,6.1z);6.1f=$.G({},6.1z);l(!6.M())$(6.V).2C("1f-K",[6]);6.1h();8 6.M()},3v:7(){6.2G();Q(p i=0,11=(6.1Z=6.11());11[i];i++){6.2n(11[i])}8 6.M()},L:7(a){a=6.2z(a);6.4q=a;6.2N(a);6.1Z=$(a);p b=6.2n(a);l(b){R 6.1f[a.r]}1c{6.1f[a.r]=v}l(!6.3i()){6.14.Y(6.2k)}6.1h();8 b},1h:7(b){l(b){$.G(6.1z,b);6.S=[];Q(p c Z b){6.S.Y({19:b[c],L:6.1X(c)[0]})}6.1i=$.3f(6.1i,7(a){8!(a.r Z b)})}6.q.1h?6.q.1h.12(6,6.1z,6.S):6.3e()},2x:7(){l($.2J.2x)$(6.V).2x();6.1j={};6.2G();6.2W();6.11().36(6.q.18)},3i:7(){8 6.2c(6.1f)},2c:7(a){p b=0;Q(p i Z a)b++;8 b},2W:7(){6.2w(6.14).2v()},M:7(){8 6.3d()==0},3d:7(){8 6.S.E},2i:7(){l(6.q.2i){3c{$(6.3b()||6.S.E&&6.S[0].L||[]).1t(":4A").3a()}39(e){}}},3b:7(){p a=6.3g;8 a&&$.3f(6.S,7(n){8 n.L.r==a.r}).E==1&&a},11:7(){p a=6,2u={};8 $([]).2o(6.V.11).1t(":1Y").1D(":30, :1J, :4y, [4x]").1D(6.q.3j).1t(7(){!6.r&&a.q.2g&&2T.1q&&1q.3l("%o 4v 3K r 4u",6);l(6.r Z 2u||!a.2c($(6).1b()))8 H;2u[6.r]=v;8 v})},2z:7(a){8 $(a)[0]},2t:7(){8 $(6.q.2B+"."+6.q.18,6.3C)},1J:7(){6.1i=[];6.S=[];6.1z={};6.1C=$([]);6.14=$([]);6.1v=H;6.1Z=$([])},2G:7(){6.1J();6.14=6.2t().Y(6.2k)},2N:7(a){6.1J();6.14=6.1E(a)},2n:7(d){d=6.2z(d);l(6.1u(d)){d=6.1X(d.r)[0]}p a=$(d).1b();p c=H;Q(W Z a){p b={W:W,2r:a[W]};3c{p f=$.u.1P[W].12(6,d.T,d,b.2r);l(f=="1T-1Q"){c=v;6m}c=H;l(f=="1d"){6.14=6.14.1D(6.1E(d));8}l(!f){6.4o(d,b);8 H}}39(e){6.q.2g&&2T.1q&&1q.6l("6k 6j 6i 6h L "+d.4n+", 2n 3O \'"+b.W+"\' W");6f e;}}l(c)8;l(6.2c(a))6.1i.Y(d);8 v},4l:7(a,b){l(!$.1x)8;p c=6.q.33?$(a).1x()[6.q.33]:$(a).1x();8 c&&c.J&&c.J[b]},4j:7(a,b){p m=6.q.J[a];8 m&&(m.2m==4i?m:m[b])},4h:7(){Q(p i=0;i<P.E;i++){l(P[i]!==2l)8 P[i]}8 2l},2j:7(a,b){8 6.4h(6.4j(a.r,b),6.4l(a,b),!6.q.3h&&a.6c||2l,$.u.J[b],"<4g>6b: 6a 19 68 Q "+a.r+"</4g>")},4o:7(b,a){p c=6.2j(b,a.W);l(17 c=="7")c=c.12(6,a.2r,b);6.S.Y({19:c,L:b});6.1z[b.r]=c;6.1j[b.r]=c},2w:7(a){l(6.q.1W)a.Y(a.64(6.q.1W));8 a},3e:7(){Q(p i=0;6.S[i];i++){p a=6.S[i];6.q.37&&6.q.37.12(6,a.L,6.q.18);6.2Z(a.L,a.19)}l(6.S.E){6.1C.Y(6.2k)}l(6.q.1s){Q(p i=0;6.1i[i];i++){6.2Z(6.1i[i])}}l(6.q.1U){Q(p i=0,11=6.4e();11[i];i++){6.q.1U.12(6,11[i],6.q.18)}}6.14=6.14.1D(6.1C);6.2W();6.2w(6.1C).4d()},4e:7(){8 6.1Z.1D(6.4c())},4c:7(){8 $(6.S).4b(7(){8 6.L})},2Z:7(a,c){p b=6.1E(a);l(b.E){b.36().2p(6.q.18);b.1G("4a")&&b.49(c)}1c{b=$("<"+6.q.2B+"/>").1G({"Q":6.2Y(a),4a:v}).2p(6.q.18).49(c||"");l(6.q.1W){b=b.2v().4d().60("<"+6.q.1W+">").5Z()}l(!6.26.5Y(b).E)6.q.46?6.q.46(b,$(a)):b.5W(a)}l(!c&&6.q.1s){b.2F("");17 6.q.1s=="1B"?b.2p(6.q.1s):6.q.1s(b)}6.1C.Y(b)},1E:7(a){8 6.2t().1t("[@Q=\'"+6.2Y(a)+"\']")},2Y:7(a){8 6.21[a.r]||(6.1u(a)?a.r:a.4n||a.r)},1u:7(a){8/3p|3o/i.U(a.1o)},1X:7(d){p c=6.V;8 $(5V.5U(d)).4b(7(a,b){8 b.K==c&&b.r==d&&b||41})},1K:7(a,b){2q(b.3Z.3Y()){1e\'23\':8 $("3X:2y",b).E;1e\'1Y\':l(6.1u(b))8 6.1X(b.r).1t(\':3U\').E}8 a.E},3B:7(b,a){8 6.2X[17 b]?6.2X[17 b](b,a):v},2X:{"5Q":7(b,a){8 b},"1B":7(b,a){8!!$(b,a.K).E},"7":7(b,a){8 b(a)}},F:7(a){8!$.u.1P.13.12(6,$.2b(a.T),a)&&"1T-1Q"},3V:7(a){l(!6.1d[a.r]){6.1g++;6.1d[a.r]=v}},4s:7(a,b){6.1g--;l(6.1g<0)6.1g=0;R 6.1d[a.r];l(b&&6.1g==0&&6.1v&&6.K()){$(6.V).30()}1c l(!b&&6.1g==0&&6.1v){$(6.V).2C("1f-K",[6])}},2f:7(a){8 $.16(a,"2f")||$.16(a,"2f",5O={2K:41,M:v,19:6.2j(a,"1R")})}},1M:{13:{13:v},1F:{1F:v},1k:{1k:v},1l:{1l:v},2a:{2a:v},20:{20:v},1n:{1n:v},28:{28:v},1O:{1O:v},2d:{2d:v}},3Q:7(a,b){a.2m==4i?6.1M[a]=b:$.G(6.1M,a)},3W:7(b){p a={};p c=$(b).1G(\'5K\');c&&$.O(c.1H(\' \'),7(){l(6 Z $.u.1M){$.G(a,$.u.1M[6])}});8 a},3T:7(c){p a={};p d=$(c);Q(W Z $.u.1P){p b=d.1G(W);l(b){a[W]=b}}l(a.15&&/-1|5J|5H/.U(a.15)){R a.15}8 a},40:7(a){l(!$.1x)8{};p b=$.16(a.K,\'u\').q.33;8 b?$(a).1x()[b]:$(a).1x()},2s:7(b){p a={};p c=$.16(b.K,\'u\');l(c.q.1b){a=$.u.1S(c.q.1b[b.r])||{}}8 a},3x:7(d,e){$.O(d,7(c,b){l(b===H){R d[c];8}l(b.2V||b.2e){p a=v;2q(17 b.2e){1e"1B":a=!!$(b.2e,e.K).E;31;1e"7":a=b.2e.12(e,e);31}l(a){d[c]=b.2V!==2l?b.2V:v}1c{R d[c]}}});$.O(d,7(a,b){d[a]=$.5F(b)?b(e):b});$.O([\'1r\',\'15\',\'1w\',\'1m\'],7(){l(d[6]){d[6]=2U(d[6])}});$.O([\'2h\',\'27\'],7(){l(d[6]){d[6]=[2U(d[6][0]),2U(d[6][1])]}});l($.u.4f){l(d.1w&&d.1m){d.27=[d.1w,d.1m];R d.1w;R d.1m}l(d.1r&&d.15){d.2h=[d.1r,d.15];R d.1r;R d.15}}l(d.J){R d.J}8 d},1S:7(a){l(17 a=="1B"){p b={};$.O(a.1H(/\\s/),7(){b[6]=v});a=b}8 a},5D:7(c,a,b){$.u.1P[c]=a;$.u.J[c]=b;l(a.E<3){$.u.3Q(c,$.u.1S(c))}},1P:{13:7(b,c,a){l(!6.3B(a,c))8"1T-1Q";2q(c.3Z.3Y()){1e\'23\':p d=$("3X:2y",c);8 d.E>0&&(c.1o=="23-5B"||($.2S.2Q&&!(d[0].5z[\'T\'].5y)?d[0].2F:d[0].T).E>0);1e\'1Y\':l(6.1u(c))8 6.1K(b,c)>0;5x:8 $.2b(b).E>0}},1R:7(e,h,d){l(6.F(h))8"1T-1Q";p g=6.2f(h);l(!6.q.J[h.r])6.q.J[h.r]={};6.q.J[h.r].1R=17 g.19=="7"?g.19(e):g.19;d=17 d=="1B"&&{1k:d}||d;l(g.2K!==e){g.2K=e;p i=6;6.3V(h);p f={};f[h.r]=e;$.2P($.G(v,{1k:d,3N:"2L",3M:"1y"+h.r,5s:"5r",16:f,1s:7(a){l(a){p b=i.1v;i.2N(h);i.1v=b;i.1i.Y(h);i.1h()}1c{p c={};c[h.r]=a||i.2j(h,"1R");i.1h(c)}g.M=a;i.4s(h,a)}},d));8"1d"}1c l(6.1d[h.r]){8"1d"}8 g.M},1r:7(b,c,a){8 6.F(c)||6.1K(b,c)>=a},15:7(b,c,a){8 6.F(c)||6.1K(b,c)<=a},2h:7(b,d,a){p c=6.1K(b,d);8 6.F(d)||(c>=a[0]&&c<=a[1])},1w:7(b,c,a){8 6.F(c)||b>=a},1m:7(b,c,a){8 6.F(c)||b<=a},27:7(b,c,a){8 6.F(c)||(b>=a[0]&&b<=a[1])},1F:7(a,b){8 6.F(b)||/^((([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^X`{\\|}~]|[\\A-\\C\\w-\\B\\x-\\y])+(\\.([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^X`{\\|}~]|[\\A-\\C\\w-\\B\\x-\\y])+)*)|((\\3J)((((\\29|\\1N)*(\\2M\\3I))?(\\29|\\1N)+)?(([\\3H-\\5l\\3G\\3F\\5j-\\5I\\4r]|\\5g|[\\5L-\\5f]|[\\5e-\\5d]|[\\A-\\C\\w-\\B\\x-\\y])|(\\\\([\\3H-\\1N\\3G\\3F\\2M-\\4r]|[\\A-\\C\\w-\\B\\x-\\y]))))*(((\\29|\\1N)*(\\2M\\3I))?(\\29|\\1N)+)?(\\3J)))@((([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])))\\.)+(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|[\\A-\\C\\w-\\B\\x-\\y])))\\.?$/i.U(a)},1k:7(a,b){8 6.F(b)||/^(5P?|5b):\\/\\/(((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:)*@)?(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5]))|((([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|\\d|[\\A-\\C\\w-\\B\\x-\\y])))\\.)+(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])|(([a-z]|[\\A-\\C\\w-\\B\\x-\\y])([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])*([a-z]|[\\A-\\C\\w-\\B\\x-\\y])))\\.?)(:\\d*)?)(\\/((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)+(\\/(([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)*)*)?)?(\\?((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|[\\59-\\58]|\\/|\\?)*)?(\\#((([a-z]|\\d|-|\\.|X|~|[\\A-\\C\\w-\\B\\x-\\y])|(%[\\1L-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|\\/|\\?)*)?$/i.U(a)},1l:7(a,b){8 6.F(b)||!/57|56/.U(1V 55(a))},2a:7(a,b){8 6.F(b)||/^\\d{4}[\\/-]\\d{1,2}[\\/-]\\d{1,2}$/.U(a)},20:7(a,b){8 6.F(b)||/^\\d\\d?\\.\\d\\d?\\.\\d\\d\\d?\\d?$/.U(a)},1n:7(a,b){8 6.F(b)||/^-?(?:\\d+|\\d{1,3}(?:,\\d{3})+)(?:\\.\\d+)?$/.U(a)},28:7(a,b){8 6.F(b)||/^-?(?:\\d+|\\d{1,3}(?:\\.\\d{3})+)(?:,\\d+)?$/.U(a)},1O:7(a,b){8 6.F(b)||/^\\d+$/.U(a)},2d:7(b,e){l(6.F(e))8"1T-1Q";l(/[^0-9-]+/.U(b))8 H;p a=0,d=0,22=H;b=b.3u(/\\D/g,"");Q(n=b.E-1;n>=0;n--){p c=b.54(n);p d=53(c,10);l(22){l((d*=2)>9)d-=9}a+=d;22=!22}8(a%10)==0},3L:7(b,c,a){a=17 a=="1B"?a:"66|67?g|50";8 6.F(c)||b.69(1V 3t(".("+a+")$","i"))},3P:7(b,c,a){8 b==$(a).4X()}}})})(2I);(7($){p c=$.2P;p d={};$.2P=7(a){a=$.G(a,$.G({},$.4W,a));p b=a.3M;l(a.3N=="2L"){l(d[b]){d[b].2L()}8(d[b]=c.1I(6,P))}8 c.1I(6,P)}})(2I);(7($){$.O({3a:\'3y\',4V:\'3w\'},7(b,a){$.1A.32[a]={4U:7(){l($.2S.2Q)8 H;6.4T(b,$.1A.32[a].34,v)},4R:7(){l($.2S.2Q)8 H;6.4Q(b,$.1A.32[a].34,v)},34:7(e){P[0]=$.1A.38(e);P[0].1o=a;8 $.1A.24.1I(6,P)}}});$.G($.2J,{1p:7(d,e,c){8 6.3m(d,7(a){p b=$(a.4m);l(b.2H(e)){8 c.1I(b,P)}})},4P:7(a,b){8 6.2C(a,[$.1A.38({1o:a,4m:b})])}})})(2I);',62,396,'||||||this|function|return|||||||||||||if||||var|settings|name|||validator|true|uF900|uFDF0|uFFEF||u00A0|uFDCF|uD7FF||length|optional|extend|false|Please|messages|form|element|valid|enter|each|arguments|for|delete|errorList|value|test|currentForm|method|_|push|in||elements|call|required|toHide|maxlength|data|typeof|errorClass|message|format|rules|else|pending|case|invalid|pendingRequest|showErrors|successList|submitted|url|date|max|number|type|delegate|console|minlength|success|filter|checkable|formSubmitted|min|metadata|validate|errorMap|event|string|toShow|not|errorsFor|email|attr|split|apply|reset|getLength|da|classRuleSettings|x09|digits|methods|mismatch|remote|normalizeRule|dependency|unhighlight|new|wrapper|findByName|input|currentElements|dateDE|groups|bEven|select|handle||labelContainer|range|numberDE|x20|dateISO|trim|objectLength|creditcard|depends|previousValue|debug|rangelength|focusInvalid|defaultMessage|containers|undefined|constructor|check|add|addClass|switch|parameters|staticRules|errors|rulesCache|hide|addWrapper|resetForm|selected|clean|errorLabelContainer|errorElement|triggerHandler|defaults|ein|text|prepareForm|is|jQuery|fn|old|abort|x0d|prepareElement|than|ajax|msie|characters|browser|window|Number|param|hideErrors|dependTypes|idOrName|showLabel|submit|break|special|meta|handler|cancelSubmit|removeClass|highlight|fix|catch|focus|findLastActive|try|size|defaultShowErrors|grep|lastActive|ignoreTitle|numberOfInvalids|ignore|errorContainer|error|bind|invalidHandler|checkbox|radio|init|nothing|onsubmit|RegExp|replace|checkForm|focusout|normalizeRules|focusin|on|Array|depend|errorContext|to|between|x0c|x0b|x01|x0a|x22|no|accept|port|mode|the|equalTo|addClassRules|and|submitHandler|attributeRules|checked|startRequest|classRules|option|toLowerCase|nodeName|metadataRules|null|Sie|equal|geben|Bitte|errorPlacement|or|makeArray|html|generated|map|invalidElements|show|validElements|autoCreateRanges|strong|findDefined|String|customMessage|field|customMetaMessage|target|id|formatAndAdd|click|lastElement|x7f|stopRequest|onkeyup|assigned|has|cancel|disabled|image|onfocusout|visible|can|blockFocusCleanup|focusCleanup|button|onfocusin|removeAttr|label|find|textarea|file|removeAttrs|password|keyup|slice|triggerEvent|removeEventListener|teardown|valueCache|addEventListener|setup|blur|ajaxSettings|val|prototype|warn|gif|greater|unshift|parseInt|charAt|Date|NaN|Invalid|uF8FF|uE000|less|ftp|long|x7e|x5d|x5b|x21|least|unchecked|x0e|at|x08|filled|more|extension|blank|with|json|dataType|expr|again|same|get|default|specified|attributes|setArray|multiple|card|addMethod|credit|isFunction|only|524288|x1f|2147483647|class|x23|Nummer|eine|previous|https|boolean|Datum|ltiges|gÃ|getElementsByName|document|insertAfter|preventDefault|append|parent|wrap|ISO|URL|remove|parents|address|png|jpe|defined|match|No|Warning|title|returning|This|throw|setDefaults|checking|when|occured|exception|log|continue|onclick'.split('|'),0,{})) \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/osqa.admin.js.svn-base b/forum/skins/light/media/js/.svn/text-base/osqa.admin.js.svn-base deleted file mode 100755 index ccd71036d5ac2df8c3b8d9594e8e580e1e33ae64..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/osqa.admin.js.svn-base +++ /dev/null @@ -1,83 +0,0 @@ -$(function() { - $('.string_list_widget_button').live('click', function() { - $but = $(this); - - if ($but.is('.add')) { - $new = $("<div style=\"display: none;\">" + - "<input style=\"width: 600px;\" type=\"text\" name=\"" + $but.attr('name') + "\" value=\"\" />" + - "<button class=\"string_list_widget_button\">-</button>" + - "</div>"); - - $but.before($new); - $new.slideDown('fast'); - } else { - $but.parent().slideUp('fast', function() { - $but.parent().remove(); - }); - } - - return false; - }) - - $('.fieldtool').each(function() { - var $link = $(this); - var $input = $link.parent().parent().find('input, textarea'); - var name = $input.attr('name') - - if ($link.is('.context')) { - $link.click(function() { - var $contextbox = $('<input type="text" value="' + name + '" />'); - $link.replaceWith($contextbox); - }); - } else if ($link.is('.default')) { - if ($input.length == 1 && ($input.is('[type=text]') || $input.is('textarea'))) { - $link.click(function() { - $.post(name + '/', function(data) { - $input.val(data); - }); - }); - } else { - $link.attr('href', name + '/'); - } - } - }); - - $('.url_field').each(function() { - var $input = $(this); - var $anchor = $input.parent().find('.url_field_anchor'); - var app_url = $anchor.attr('href'); - - function rewrite_anchor() { - var val = app_url + '/' + $input.val(); - - $anchor.attr('href', val); - $anchor.html(val); - - } - - $input.keyup(rewrite_anchor); - rewrite_anchor(); - }); - - $('#test_email_settings a.test_button').click(function() { - $('div.test_status').hide('slow') - $('div.ajax_indicator').show('fast') - $.post($(this).attr('href'), function(data) { - $('div.ajax_indicator').hide('fast') - $('div.test_status').html(data) - $('div.test_status').show('slow') - }) - }) -}); - -/* - * Autocomplete - jQuery plugin 1.0.3 - * - * Copyright (c) 2007 Dylan Verheul, Dan G. Switzer, Anjesh Tuladhar, J�rn Zaefferer - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - */ -(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(e){return e};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(b){return this.bind("result",b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(l,g){var c={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var b=a(l).attr("autocomplete","off").addClass(g.inputClass);var j;var p="";var m=a.Autocompleter.Cache(g);var e=0;var u;var x={mouseDownOnSelect:false};var r=a.Autocompleter.Select(g,l,d,x);var w;a.browser.opera&&a(l.form).bind("submit.autocomplete",function(){if(w){w=false;return false}});b.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(y){u=y.keyCode;switch(y.keyCode){case c.UP:y.preventDefault();if(r.visible()){r.prev()}else{t(0,true)}break;case c.DOWN:y.preventDefault();if(r.visible()){r.next()}else{t(0,true)}break;case c.PAGEUP:y.preventDefault();if(r.visible()){r.pageUp()}else{t(0,true)}break;case c.PAGEDOWN:y.preventDefault();if(r.visible()){r.pageDown()}else{t(0,true)}break;case g.multiple&&a.trim(g.multipleSeparator)==","&&c.COMMA:case c.TAB:case c.RETURN:if(d()){y.preventDefault();w=true;return false}break;case c.ESC:r.hide();break;default:clearTimeout(j);j=setTimeout(t,g.delay);break}}).focus(function(){e++}).blur(function(){e=0;if(!x.mouseDownOnSelect){s()}}).click(function(){if(e++>1&&!r.visible()){t(0,true)}}).bind("search",function(){var y=(arguments.length>1)?arguments[1]:null;function z(D,C){var A;if(C&&C.length){for(var B=0;B<C.length;B++){if(C[B].result.toLowerCase()==D.toLowerCase()){A=C[B];break}}}if(typeof y=="function"){y(A)}else{b.trigger("result",A&&[A.data,A.value])}}a.each(h(b.val()),function(A,B){f(B,z,z)})}).bind("flushCache",function(){m.flush()}).bind("setOptions",function(){a.extend(g,arguments[1]);if("data" in arguments[1]){m.populate()}}).bind("unautocomplete",function(){r.unbind();b.unbind();a(l.form).unbind(".autocomplete")});function d(){var z=r.selected();if(!z){return false}var y=z.result;p=y;if(g.multiple){var A=h(b.val());if(A.length>1){y=A.slice(0,A.length-1).join(g.multipleSeparator)+g.multipleSeparator+y}y+=g.multipleSeparator}b.val(y);v();b.trigger("result",[z.data,z.value]);return true}function t(A,z){if(u==c.DEL){r.hide();return}var y=b.val();if(!z&&y==p){return}p=y;y=i(y);if(y.length>=g.minChars){b.addClass(g.loadingClass);if(!g.matchCase){y=y.toLowerCase()}f(y,k,v)}else{n();r.hide()}}function h(z){if(!z){return[""]}var A=z.split(g.multipleSeparator);var y=[];a.each(A,function(B,C){if(a.trim(C)){y[B]=a.trim(C)}});return y}function i(y){if(!g.multiple){return y}var z=h(y);return z[z.length-1]}function q(y,z){if(g.autoFill&&(i(b.val()).toLowerCase()==y.toLowerCase())&&u!=c.BACKSPACE){b.val(b.val()+z.substring(i(p).length));a.Autocompleter.Selection(l,p.length,p.length+z.length)}}function s(){clearTimeout(j);j=setTimeout(v,200)}function v(){var y=r.visible();r.hide();clearTimeout(j);n();if(g.mustMatch){b.search(function(z){if(!z){if(g.multiple){var A=h(b.val()).slice(0,-1);b.val(A.join(g.multipleSeparator)+(A.length?g.multipleSeparator:""))}else{b.val("")}}})}if(y){a.Autocompleter.Selection(l,l.value.length,l.value.length)}}function k(z,y){if(y&&y.length&&e){n();r.display(y,z);q(z,y[0].value);r.show()}else{v()}}function f(z,B,y){if(!g.matchCase){z=z.toLowerCase()}var A=m.load(z);if(A&&A.length){B(z,A)}else{if((typeof g.url=="string")&&(g.url.length>0)){var C={timestamp:+new Date()};a.each(g.extraParams,function(D,E){C[D]=typeof E=="function"?E():E});a.ajax({mode:"abort",port:"autocomplete"+l.name,dataType:g.dataType,url:g.url,data:a.extend({q:i(z),limit:g.max},C),success:function(E){var D=g.parse&&g.parse(E)||o(E);m.add(z,D);B(z,D)}})}else{r.emptyList();y(z)}}}function o(B){var y=[];var A=B.split("\n");for(var z=0;z<A.length;z++){var C=a.trim(A[z]);if(C){C=C.split("|");y[y.length]={data:C,value:C[0],result:g.formatResult&&g.formatResult(C,C[0])||C[0]}}}return y}function n(){b.removeClass(g.loadingClass)}};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(b){return b[0]},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(c,b){return c.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:true,scrollHeight:180};a.Autocompleter.Cache=function(c){var f={};var d=0;function h(l,k){if(!c.matchCase){l=l.toLowerCase()}var j=l.indexOf(k);if(j==-1){return false}return j==0||c.matchContains}function g(j,i){if(d>c.cacheLength){b()}if(!f[j]){d++}f[j]=i}function e(){if(!c.data){return false}var k={},j=0;if(!c.url){c.cacheLength=1}k[""]=[];for(var m=0,l=c.data.length;m<l;m++){var p=c.data[m];p=(typeof p=="string")?[p]:p;var o=c.formatMatch(p,m+1,c.data.length);if(o===false){continue}var n=o.charAt(0).toLowerCase();if(!k[n]){k[n]=[]}var q={value:o,data:p,result:c.formatResult&&c.formatResult(p)||o};k[n].push(q);if(j++<c.max){k[""].push(q)}}a.each(k,function(r,s){c.cacheLength++;g(r,s)})}setTimeout(e,25);function b(){f={};d=0}return{flush:b,add:g,populate:e,load:function(n){if(!c.cacheLength||!d){return null}if(!c.url&&c.matchContains){var m=[];for(var j in f){if(j.length>0){var o=f[j];a.each(o,function(p,k){if(h(k.value,n)){m.push(k)}})}}return m}else{if(f[n]){return f[n]}else{if(c.matchSubset){for(var l=n.length-1;l>=c.minChars;l--){var o=f[n.substr(0,l)];if(o){var m=[];a.each(o,function(p,k){if(h(k.value,n)){m[m.length]=k}});return m}}}}}return null}}};a.Autocompleter.Select=function(e,j,l,p){var i={ACTIVE:"ac_over"};var k,f=-1,r,m="",s=true,c,o;function n(){if(!s){return}c=a("<div/>").hide().addClass(e.resultsClass).css("position","absolute").appendTo(document.body);o=a("<ul/>").appendTo(c).mouseover(function(t){if(q(t).nodeName&&q(t).nodeName.toUpperCase()=="LI"){f=a("li",o).removeClass(i.ACTIVE).index(q(t));a(q(t)).addClass(i.ACTIVE)}}).click(function(t){a(q(t)).addClass(i.ACTIVE);l();j.focus();return false}).mousedown(function(){p.mouseDownOnSelect=true}).mouseup(function(){p.mouseDownOnSelect=false});if(e.width>0){c.css("width",e.width)}s=false}function q(u){var t=u.target;while(t&&t.tagName!="LI"){t=t.parentNode}if(!t){return[]}return t}function h(t){k.slice(f,f+1).removeClass(i.ACTIVE);g(t);var v=k.slice(f,f+1).addClass(i.ACTIVE);if(e.scroll){var u=0;k.slice(0,f).each(function(){u+=this.offsetHeight});if((u+v[0].offsetHeight-o.scrollTop())>o[0].clientHeight){o.scrollTop(u+v[0].offsetHeight-o.innerHeight())}else{if(u<o.scrollTop()){o.scrollTop(u)}}}}function g(t){f+=t;if(f<0){f=k.size()-1}else{if(f>=k.size()){f=0}}}function b(t){return e.max&&e.max<t?e.max:t}function d(){o.empty();var u=b(r.length);for(var v=0;v<u;v++){if(!r[v]){continue}var w=e.formatItem(r[v].data,v+1,u,r[v].value,m);if(w===false){continue}var t=a("<li/>").html(e.highlight(w,m)).addClass(v%2==0?"ac_even":"ac_odd").appendTo(o)[0];a.data(t,"ac_data",r[v])}k=o.find("li");if(e.selectFirst){k.slice(0,1).addClass(i.ACTIVE);f=0}if(a.fn.bgiframe){o.bgiframe()}}return{display:function(u,t){n();r=u;m=t;d()},next:function(){h(1)},prev:function(){h(-1)},pageUp:function(){if(f!=0&&f-8<0){h(-f)}else{h(-8)}},pageDown:function(){if(f!=k.size()-1&&f+8>k.size()){h(k.size()-1-f)}else{h(8)}},hide:function(){c&&c.hide();k&&k.removeClass(i.ACTIVE);f=-1},visible:function(){return c&&c.is(":visible")},current:function(){return this.visible()&&(k.filter("."+i.ACTIVE)[0]||e.selectFirst&&k[0])},show:function(){var v=a(j).offset();c.css({width:typeof e.width=="string"||e.width>0?e.width:a(j).width(),top:v.top+j.offsetHeight,left:v.left}).show();if(e.scroll){o.scrollTop(0);o.css({maxHeight:e.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var t=0;k.each(function(){t+=this.offsetHeight});var u=t>e.scrollHeight;o.css("height",u?e.scrollHeight:t);if(!u){k.width(o.width()-parseInt(k.css("padding-left"))-parseInt(k.css("padding-right")))}}}},selected:function(){var t=k&&k.filter("."+i.ACTIVE).removeClass(i.ACTIVE);return t&&t.length&&a.data(t[0],"ac_data")},emptyList:function(){o&&o.empty()},unbind:function(){c&&c.remove()}}};a.Autocompleter.Selection=function(d,e,c){if(d.setSelectionRange){d.setSelectionRange(e,c)}else{if(d.createTextRange){var b=d.createTextRange();b.collapse(true);b.moveStart("character",e);b.moveEnd("character",c);b.select()}else{if(d.selectionStart){d.selectionStart=e;d.selectionEnd=c}}}d.focus()}})(jQuery); diff --git a/forum/skins/light/media/js/.svn/text-base/osqa.ask.js.svn-base b/forum/skins/light/media/js/.svn/text-base/osqa.ask.js.svn-base deleted file mode 100755 index a2b6e55ffdcf6debed8c9321ab8f4c910a4a92a9..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/osqa.ask.js.svn-base +++ /dev/null @@ -1,104 +0,0 @@ -var currentSideBar = 'div#title_side_bar'; -function changeSideBar(enabled_bar) { - if (enabled_bar != currentSideBar) { - $(currentSideBar).hide(); - currentSideBar = enabled_bar; - $(currentSideBar).fadeIn('slow'); - } - -} - -$(function () { - $('div#editor_side_bar').hide(); - $('div#tags_side_bar').hide(); - - $('#id_title').focus(function(){changeSideBar('div#title_side_bar')}); - $('#editor').focus(function(){changeSideBar('div#editor_side_bar')}); - $('#id_tags').focus(function(){changeSideBar('div#tags_side_bar')}); -}); - -$(function() { - var $input = $('#id_title'); - var $box = $('#ask-related-questions'); - var template = $('#question-summary-template').html(); - var $editor = $('#editor'); - - var results_cache = {}; - - function reload_suggestions_box(e) { - var relatedQuestionsDiv = $('#ask-related-questions'); - var q = $input.val().replace(/^\s+|\s+$/g,""); - - if(q.length == 0) { - close_suggestions_box(); - relatedQuestionsDiv.html(''); - return false; - } else if(relatedQuestionsDiv[0].style.height == 0 || relatedQuestionsDiv[0].style.height == '0px') { - relatedQuestionsDiv.animate({'height':'150'}, 350); - } - - if (results_cache[q] && results_cache[q] != '') { - relatedQuestionsDiv.html(results_cache[q]); - return false; - } - - $.post(related_questions_url, {title: q}, function(data) { - if (data) { - var c = $input.val().replace(/^\s+|\s+$/g,""); - - if (c != q) { - return; - } - - if(data.length == 0) { - relatedQuestionsDiv.html('<br /><br /><div align="center">No questions like this have been found.</div>'); - return; - } - - var html = ''; - for (var i = 0; i < data.length; i++) { - var item = template.replace(new RegExp('%URL%', 'g'), data[i].url) - .replace(new RegExp('%SCORE%', 'g'), data[i].score) - .replace(new RegExp('%TITLE%', 'g'), data[i].title) - .replace(new RegExp('%SUMMARY%', 'g'), data[i].summary); - - html += item; - - } - - results_cache[q] = html; - - relatedQuestionsDiv.html(html); - } - }, 'json'); - - return false; - } - - function close_suggestions_box() { - $('#ask-related-questions').animate({'height':'0'},350, function() { - $('#ask-related-questions').html(''); - }); - } - - $input.keyup(reload_suggestions_box); - $input.focus(reload_suggestions_box); - - $editor.change(function() { - if ($editor.html().length > 10) { - close_suggestions_box(); - } - }); - - - - // for chrome - $input.keydown(focus_on_question); - function focus_on_question(e) { - var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1; - - if(e.keyCode == 9 && is_chrome) { - $('#editor')[0].focus(); - } - } -}); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/osqa.main.js.svn-base b/forum/skins/light/media/js/.svn/text-base/osqa.main.js.svn-base deleted file mode 100755 index 55a3f1e02611ceba240851212cb4b008ed49167c..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/osqa.main.js.svn-base +++ /dev/null @@ -1,1266 +0,0 @@ -/** - * We do not want the CSRF protection enabled for the AJAX post requests, it causes only trouble. - * Get the csrftoken cookie and pass it to the X-CSRFToken HTTP request property. - */ - -$('html').ajaxSend(function(event, xhr, settings) { - function getCookie(name) { - var cookieValue = null; - if (document.cookie && document.cookie != '') { - var cookies = document.cookie.split(';'); - for (var i = 0; i < cookies.length; i++) { - var cookie = jQuery.trim(cookies[i]); - // Does this cookie string begin with the name we want? - if (cookie.substring(0, name.length + 1) == (name + '=')) { - cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); - break; - } - } - } - return cookieValue; - } - try { - if (!(/^http:.*/.test(settings.url) || /^https:.*/.test(settings.url))) { - // Only send the token to relative URLs i.e. locally. - xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken')); - } - } catch (e) {} -}); - -var response_commands = { - refresh_page: function() { - window.location.reload(true) - }, - - update_post_score: function(id, inc) { - var $score_board = $('#post-' + id + '-score'); - var current = parseInt($score_board.html()) - if (isNaN(current)){ - current = 0; - } - $score_board.html(current + inc) - }, - - update_user_post_vote: function(id, vote_type) { - var $upvote_button = $('#post-' + id + '-upvote'); - var $downvote_button = $('#post-' + id + '-downvote'); - - $upvote_button.removeClass('on'); - $downvote_button.removeClass('on'); - - if (vote_type == 'up') { - $upvote_button.addClass('on'); - } else if (vote_type == 'down') { - $downvote_button.addClass('on'); - } - }, - - update_favorite_count: function(inc) { - var $favorite_count = $('#favorite-count'); - var count = parseInt($favorite_count.html()); - - if (isNaN(count)) - count = 0; - - count += inc; - - if (count == 0) - count = ''; - - $favorite_count.html(count); - }, - - update_favorite_mark: function(type) { - if (type == 'on') { - $('#favorite-mark').addClass('on'); - } else { - $('#favorite-mark').removeClass('on'); - } - }, - - mark_accepted: function(id) { - var $answer = $('#answer-container-' + id); - $answer.addClass('accepted-answer'); - $answer.find('.accept-answer').addClass('on'); - $answer.find('.accept-answer').attr('title', $answer.find('.accept-answer').attr('bn:on')); - }, - - unmark_accepted: function(id) { - var $answer = $('#answer-container-' + id); - $answer.removeClass('accepted-answer'); - $answer.find('.accept-answer').removeClass('on'); - $answer.find('.accept-answer').attr('title', $answer.find('.accept-answer').attr('bn:off')); - }, - - remove_comment: function(id) { - var $comment = $('#comment-' + id); - $comment.css('background', 'red') - $comment.fadeOut('slow', function() { - $comment.remove(); - }); - }, - - award_points: function(id) { - alert('ok'); - }, - - insert_comment: function(post_id, comment_id, comment, username, profile_url, delete_url, edit_url, convert_url, can_convert, show_latest_comments_first) { - var $container = $('#comments-container-' + post_id); - var skeleton = $('#new-comment-skeleton-' + post_id).html().toString(); - - skeleton = skeleton.replace(new RegExp('%ID%', 'g'), comment_id) - .replace(new RegExp('%COMMENT%', 'g'), comment) - .replace(new RegExp('%USERNAME%', 'g'), username) - .replace(new RegExp('%PROFILE_URL%', 'g'), profile_url) - .replace(new RegExp('%DELETE_URL%', 'g'), delete_url) - .replace(new RegExp('%EDIT_URL%', 'g'), edit_url) - .replace(new RegExp('%CONVERT_URL%', 'g'), convert_url); - if (show_latest_comments_first) { - $container.prepend(skeleton); - } else { - $container.append(skeleton); - } - - // Show the convert comment to answer tool only if the current comment can be converted - if (can_convert == true) { - $('#comment-' + comment_id + '-convert').show(); - } - - $('#comment-' + comment_id).slideDown('slow'); - }, - - update_comment: function(comment_id, comment_text) { - var $comment = $('#comment-' + comment_id); - $comment.find('.comment-text').html(comment_text); - - $comment.slideDown('slow'); - }, - - mark_deleted: function(post_type, post_id) { - if (post_type == 'question') { - var $container = $('#question-table'); - $container.addClass('deleted'); - } else { - var $el = $('#' + post_type + '-container-' + post_id); - $el.addClass('deleted'); - } - }, - - unmark_deleted: function(post_type, post_id) { - if (post_type == 'answer') { - var $answer = $('#answer-container-' + post_id); - $answer.removeClass('deleted'); - } else { - var $container = $('#question-table'); - $container.removeClass('deleted'); - } - }, - - set_subscription_button: function(text) { - $('.subscription_switch').html(text); - }, - - set_subscription_status: function(text) { - $('.subscription-status').html(text); - }, - - copy_url: function(url) { - } -} - -function show_dialog (extern) { - var default_close_function = function($diag) { - $diag.fadeOut('fast', function() { - $diag.remove(); - }); - }; - - var options = { - extra_class: '', - pos: { - x: ($(window).width() / 2) + $(window).scrollLeft(), - y: ($(window).height() / 2) + $(window).scrollTop() - }, - dim: false, - yes_text: messages.ok, - yes_callback: default_close_function, - no_text: messages.cancel, - show_no: false, - close_on_clickoutside: false, - copy: false - } - - $.extend(options, extern); - - var copy_id = ''; - if (options.copy) { - copy_id = ' id="copy_clip_button"' - } - - if (options.event != undefined && options.event.pageX != undefined && options.event.pageY != undefined) { - options.pos = {x: options.event.pageX, y: options.event.pageY}; - } else if (options.event.currentTarget != undefined) { - var el = jQuery("#" + options.event.currentTarget.id); - var position = el.offset(); - options.pos = { - x: position.left, - y: position.top - } - } - - var html = '<div class="dialog ' + options.extra_class + '" style="display: none; z-index: 999;">' - + '<div class="dialog-content">' + options.html + '</div><div class="dialog-buttons">'; - - if (options.show_no) { - html += '<button class="dialog-no">' + options.no_text + '</button>'; - } - - html += '<button class="dialog-yes"' + copy_id + '>' + options.yes_text + '</button>' + '</div></div>'; - - var $dialog = $(html); - - $('body').append($dialog); - var message = $('.dialog-content')[0]; - message.style.visibility = "hidden"; - - if (options.dim === false) { - $dialog.css({ - visibility: 'hidden', - display: 'block' - }); - - options.dim = {w: $dialog.width(), h: $dialog.height()}; - - $dialog.css({ - width: 1, - height: 1, - visibility: 'visible' - }); - } - - $dialog.css({ - top: options.pos.y, - left: options.pos.x - }); - - top_position_change = (options.dim.h / 2) - left_position_change = (options.dim.w / 2) - - new_top_position = options.pos.y - top_position_change - new_left_position = options.pos.x - left_position_change - - if (new_left_position < 0) { - left_position_change = 0 - } - if (($(window).scrollTop() - new_top_position) > 0) { - top_position_change = 0 - } - if ((options.event.pageY + options.dim.h) > ($(window).height() + $(window).scrollTop())) { - top_position_change = options.dim.h - } - if ((options.event.pageX + options.dim.w) > ($(window).width() + $(window).scrollLeft())) { - left_position_change = options.dim.w - } - - $dialog.animate({ - top: "-=" + top_position_change, - left: "-=" + left_position_change, - width: options.dim.w, - height: options.dim.h - }, 200, function() { - message.style.visibility = "visible"; - }); - - $dialog.find('.dialog-yes').click(function() { - options.yes_callback($dialog); - }); - - if (options.hasOwnProperty("no_callback")) { - $dialog.find('.dialog-no:first-child').click(function() { - options.no_callback($dialog); - }); - } else { - $dialog.find('.dialog-no:first-child').click(function() { - default_close_function($dialog); - }); - } - - if (options.close_on_clickoutside) { - $dialog.one('clickoutside', function() { - default_close_function($dialog); - }); - } - - return $dialog; -} - -function show_message(evt, msg, callback) { - var $dialog = show_dialog({ - html: msg, - extra_class: 'warning', - event: evt, - yes_callback: function() { - $dialog.fadeOut('fast', function() { - $dialog.remove(); - }); - if (callback) { - callback(); - } - }, - close_on_clickoutside: true - }); -} - -function load_prompt(evt, el, url) { - $.get(url, function(data) { - var doptions = { - html: data, - extra_class: 'prompt', - yes_callback: function() { - var postvars = {}; - $dialog.find('input, textarea, select').each(function() { - postvars[$(this).attr('name')] = $(this).val(); - }); - $.post(url, postvars, function(data) { - $dialog.fadeOut('fast', function() { - $dialog.remove(); - }); - process_ajax_response(data, evt); - }, 'json'); - }, - show_no: true, - copy: false - } - - if (el.hasClass('copy')) { - $.extend(doptions, { yes_text : 'Copy', copy: true}); - } - - if (!el.is('.centered')) { - doptions.event = evt; - } - - var $dialog = show_dialog(doptions); - }); -} - -function process_ajax_response(data, evt, callback) { - if (!data.success && data['error_message'] != undefined) { - show_message(evt, data.error_message, function() {if (callback) callback(true);}); - end_command(false); - } - if (typeof data['commands'] != undefined){ - for (var command in data.commands) { - response_commands[command].apply(null, data.commands[command]) - - - } - - if (data['message'] != undefined) { - show_message(evt, data.message, function() {if (callback) callback(false);}) - } else { - if (callback) callback(false); - } - end_command(true); - } -} - -var running = false; - -function start_command() { - $('body').append($('<div id="command-loader"></div>')); - running = true; -} - -function end_command(success) { - if (success) { - $('#command-loader').addClass('success'); - $('#command-loader').fadeOut("slow", function() { - $('#command-loader').remove(); - running = false; - }); - } else { - $('#command-loader').remove(); - running = false; - } -} - -var comment_box_cursor_position = 0; -function canned_comment(post_id, comment) { - textarea = $('#comment-' + post_id + '-form textarea') - - // Get the text from the beginning to the caret - textarea_start = textarea.val().substr(0, comment_box_cursor_position) - - // Get the text from the caret to the end - textarea_end = textarea.val().substr(comment_box_cursor_position, textarea.val().length) - - textarea.val(textarea_start + comment + textarea_end); -} - -$(function() { - $('textarea.commentBox').bind('keydown keyup mousedown mouseup mousemove', function(evt) { - comment_box_cursor_position = $(this).caret().start; - }); - - $('textarea.commentBox').blur(function() { - //alert(comment_box_cursor_position); - }); - - $('a.ajax-command').live('click', function(evt) { - if (running) return false; - - var el = $(this); - - var ajax_url = el.attr('href') - ajax_url = ajax_url + "?nocache=" + new Date().getTime() - - $('.context-menu-dropdown').slideUp('fast'); - - if (el.is('.withprompt')) { - load_prompt(evt, el, ajax_url); - } else if(el.is('.confirm')) { - var doptions = { - html: messages.confirm, - extra_class: 'confirm', - yes_callback: function() { - start_command(); - $.getJSON(ajax_url, function(data) { - process_ajax_response(data, evt); - $dialog.fadeOut('fast', function() { - $dialog.remove(); - }); - }); - }, - yes_text: messages.yes, - show_no: true, - no_text: messages.no - } - - if (!el.is('.centered')) { - doptions.event = evt; - } - var $dialog = show_dialog(doptions); - } else { - start_command(); - $.ajax({ - url: ajax_url, - type: "POST", - dataType: "json", - contentType: "application/json; charset=utf-8", - success: function(data) { - process_ajax_response(data, evt); - } - }); - } - - return false - }); - - $('.context-menu').each(function() { - var $menu = $(this); - var $trigger = $menu.find('.context-menu-trigger'); - var $dropdown = $menu.find('.context-menu-dropdown'); - - $trigger.click(function() { - $dropdown.slideToggle('fast', function() { - if ($dropdown.is(':visible')) { - $dropdown.one('clickoutside', function() { - if ($dropdown.is(':visible')) - $dropdown.slideUp('fast'); - }); - } - }); - }); - }); - - $('div.comment-form-container').each(function() { - var $container = $(this); - var $comment_tools = $container.parent().find('.comment-tools'); - var $comments_container = $container.parent().find('.comments-container'); - - var $form = $container.find('form'); - - if ($form.length) { - var $textarea = $container.find('textarea'); - var textarea = $textarea.get(0); - var $button = $container.find('.comment-submit'); - var $cancel = $container.find('.comment-cancel'); - var $chars_left_message = $container.find('.comments-chars-left-msg'); - var $chars_togo_message = $container.find('.comments-chars-togo-msg'); - var $chars_counter = $container.find('.comments-char-left-count'); - - var $add_comment_link = $comment_tools.find('.add-comment-link'); - - var chars_limits = $chars_counter.html().split('|'); - - var min_length = parseInt(chars_limits[0]); - var max_length = parseInt(chars_limits[1]); - - var warn_length = max_length - 30; - var current_length = 0; - var comment_in_form = false; - var interval = null; - - var hcheck = !($.browser.msie || $.browser.opera); - - $textarea.css("padding-top", 0).css("padding-bottom", 0).css("resize", "none"); - textarea.style.overflow = 'hidden'; - - - function cleanup_form() { - $textarea.val(''); - $textarea.css('height', 80); - $chars_counter.html(max_length); - $chars_left_message.removeClass('warn'); - comment_in_form = false; - current_length = 0; - - $chars_left_message.hide(); - $chars_togo_message.show(); - - $chars_counter.removeClass('warn'); - $chars_counter.html(min_length); - $button.attr("disabled","disabled"); - - interval = null; - } - - cleanup_form(); - - function process_form_changes() { - var length = $textarea.val().replace(/[ ]{2,}/g," ").length; - - if (current_length == length) - return; - - if (length < warn_length && current_length >= warn_length) { - $chars_counter.removeClass('warn'); - } else if (current_length < warn_length && length >= warn_length){ - $chars_counter.addClass('warn'); - } - - if (length < min_length) { - $chars_left_message.hide(); - $chars_togo_message.show(); - $chars_counter.html(min_length - length); - } else { - length = $textarea.val().length; - $chars_togo_message.hide(); - $chars_left_message.show(); - $chars_counter.html(max_length - length); - } - - if (length > max_length || length < min_length) { - $button.attr("disabled","disabled"); - } else { - $button.removeAttr("disabled"); - } - - var current_height = textarea.style.height; - if (hcheck) - textarea.style.height = "0px"; - - var h = Math.max(80, textarea.scrollHeight); - textarea.style.height = current_height; - $textarea.animate({height: h + 'px'}, 50); - - current_length = length; - } - - function show_comment_form() { - $container.slideDown('slow'); - $add_comment_link.fadeOut('slow'); - $textarea.focus(); - interval = window.setInterval(function() { - process_form_changes(); - }, 200); - } - - function hide_comment_form() { - if (interval != null) { - window.clearInterval(interval); - interval = null; - } - $container.slideUp('slow'); - $add_comment_link.fadeIn('slow'); - } - - $add_comment_link.click(function(){ - cleanup_form(); - show_comment_form(); - return false; - }); - - $('#' + $comments_container.attr('id') + ' .comment-edit').live('click', function() { - var $link = $(this); - var comment_id = /comment-(\d+)-edit/.exec($link.attr('id'))[1]; - var $comment = $('#comment-' + comment_id); - - comment_in_form = comment_id; - - $.get($link.attr('href'), function(data) { - $textarea.val(data); - }); - - $comment.slideUp('slow'); - show_comment_form(); - return false; - }); - - $button.click(function(evt) { - if (running) return false; - - var post_data = { - comment: $textarea.val() - } - - if (comment_in_form) { - post_data['id'] = comment_in_form; - } - - start_command(); - $.post($form.attr('action'), post_data, function(data) { - process_ajax_response(data, evt, function(error) { - if (!error) { - cleanup_form(); - hide_comment_form(); - } - }); - - }, "json"); - - return false; - }); - - // Submit comment with CTRL + Enter - $textarea.keydown(function(e) { - if (e.ctrlKey && e.keyCode == 13 && !$button.attr('disabled')) { - // console.log('submit'); - $(this).parent().find('input.comment-submit').click(); - } - }); - - $cancel.click(function(event) { - if (confirm("You will lose all of your changes in this comment. Do you still wish to proceed?")){ - if (comment_in_form) { - $comment = $('#comment-' + comment_in_form).slideDown('slow'); - } - hide_comment_form(); - cleanup_form(); - } - return false; - }); - } - - $comment_tools.find('.show-all-comments-link').click(function() { - $comments_container.find('.not_top_scorer').slideDown('slow'); - $(this).fadeOut('slow'); - $comment_tools.find('.comments-showing').fadeOut('slow'); - return false; - }); - }); - - if ($('#editor').length) { - var $editor = $('#editor'); - var $previewer = $('#previewer'); - var $container = $('#editor-metrics'); - - var initial_whitespace_rExp = /^[^A-Za-zÐ-Яа-Ñ0-9]+/gi; - var non_alphanumerics_rExp = rExp = /[^A-Za-zÐ-Яа-Ñ0-9]+/gi; - var editor_interval = null; - - $editor.focus(function() { - if (editor_interval == null) { - editor_interval = window.setInterval(function() { - recalc_metrics(); - }, 200); - } - }); - - function recalc_metrics() { - var text = $previewer.text(); - - var char_count = text.length; - var fullStr = text + " "; - var left_trimmedStr = fullStr.replace(initial_whitespace_rExp, ""); - var cleanedStr = left_trimmedStr.replace(non_alphanumerics_rExp, " "); - var splitString = cleanedStr.split(" "); - var word_count = splitString.length - 1; - - var metrics = char_count + " " + (char_count == 1 ? messages.character : messages.characters); - metrics += " / " + word_count + " " + (word_count == 1 ? messages.word : messages.words); - $container.html(metrics); - } - } -}); - -//var scriptUrl, interestingTags, ignoredTags, tags, $; -function pickedTags(){ - - var sendAjax = function(tagname, reason, action, callback){ - var url = scriptUrl; - if (action == 'add'){ - url += $.i18n._('mark-tag/'); - if (reason == 'good'){ - url += $.i18n._('interesting/'); - } - else { - url += $.i18n._('ignored/'); - } - } - else { - url += $.i18n._('unmark-tag/'); - } - url = url + tagname + '/'; - - var call_settings = { - type:'POST', - url:url, - data: '' - }; - if (callback !== false){ - call_settings.success = callback; - } - $.ajax(call_settings); - }; - - - var unpickTag = function(from_target ,tagname, reason, send_ajax){ - //send ajax request to delete tag - var deleteTagLocally = function(){ - from_target[tagname].remove(); - delete from_target[tagname]; - $(".tags.interesting").trigger('contentchanged'); - }; - - if (send_ajax){ - sendAjax(tagname,reason,'remove',deleteTagLocally); - } - else { - deleteTagLocally(); - } - }; - - var setupTagDeleteEvents = function(obj,tag_store,tagname,reason,send_ajax){ - obj.unbind('mouseover').bind('mouseover', function(){ - $(this).attr('src', mediaUrl('media/images/close-small-hover.png')); - }); - obj.unbind('mouseout').bind('mouseout', function(){ - $(this).attr('src', mediaUrl('media/images/close-small-dark.png')); - }); - obj.click( function(){ - unpickTag(tag_store,tagname,reason,send_ajax); - }); - }; - - var handlePickedTag = function(obj,reason){ - var tagname = $.trim($(obj).prev().attr('value')); - var to_target = interestingTags; - var from_target = ignoredTags; - var to_tag_container; - if (reason == 'bad'){ - to_target = ignoredTags; - from_target = interestingTags; - to_tag_container = $('div .tags.ignored'); - } - else if (reason != 'good'){ - return; - } - else { - to_tag_container = $('div .tags.interesting'); - } - - if (tagname in from_target){ - unpickTag(from_target,tagname,reason,false); - } - - if (!(tagname in to_target)){ - //send ajax request to pick this tag - - sendAjax(tagname,reason,'add',function(){ - var new_tag = $('<span></span>'); - new_tag.addClass('deletable-tag'); - var tag_link = $('<a></a>'); - tag_link.attr('rel','tag'); - tag_link.attr('href', scriptUrl + $.i18n._('tags/') + tagname + '/'); - tag_link.html(tagname); - var del_link = $('<img />'); - del_link.addClass('delete-icon'); - del_link.attr('src', mediaUrl('media/images/close-small-dark.png')); - - setupTagDeleteEvents(del_link, to_target, tagname, reason, true); - - new_tag.append(tag_link); - new_tag.append(del_link); - to_tag_container.append(new_tag); - - to_target[tagname] = new_tag; - - to_tag_container.trigger('contentchanged'); - }); - } - }; - - var collectPickedTags = function(){ - var good_prefix = 'interesting-tag-'; - var bad_prefix = 'ignored-tag-'; - var good_re = RegExp('^' + good_prefix); - var bad_re = RegExp('^' + bad_prefix); - interestingTags = {}; - ignoredTags = {}; - $('.deletable-tag').each( - function(i,item){ - var item_id = $(item).attr('id'); - var tag_name, tag_store; - if (good_re.test(item_id)){ - tag_name = item_id.replace(good_prefix,''); - tag_store = interestingTags; - reason = 'good'; - } - else if (bad_re.test(item_id)){ - tag_name = item_id.replace(bad_prefix,''); - tag_store = ignoredTags; - reason = 'bad'; - } - else { - return; - } - tag_store[tag_name] = $(item); - setupTagDeleteEvents($(item).find('img'),tag_store,tag_name,reason,true); - } - ); - }; - - var setupHideIgnoredQuestionsControl = function(){ - $('#hideIgnoredTagsCb').unbind('click').click(function(){ - $.ajax({ - type: 'POST', - dataType: 'json', - cache: false, - url: scriptUrl + $.i18n._('command/'), - data: {command:'toggle-ignored-questions'} - }); - }); - }; - return { - init: function(){ - collectPickedTags(); - setupHideIgnoredQuestionsControl(); - $("#interestingTagInput, #ignoredTagInput").autocomplete(messages.matching_tags_url, { - minChars: 1, - matchContains: true, - max: 20, - /*multiple: false, - the favorite tags and ignore tags don't let you do multiple tags - multipleSeparator: " "*/ - - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - $("#interestingTagAdd").click(function(){handlePickedTag(this,'good');}); - $("#ignoredTagAdd").click(function(){handlePickedTag(this,'bad');}); - } - }; -} - -Hilite={elementid:"content",exact:true,max_nodes:1000,onload:true,style_name:"hilite",style_name_suffix:true,debug_referrer:""};Hilite.search_engines=[["local","q"],["cnprog\\.","q"],["google\\.","q"],["search\\.yahoo\\.","p"],["search\\.msn\\.","q"],["search\\.live\\.","query"],["search\\.aol\\.","userQuery"],["ask\\.com","q"],["altavista\\.","q"],["feedster\\.","q"],["search\\.lycos\\.","q"],["alltheweb\\.","q"],["technorati\\.com/search/([^\\?/]+)",1],["dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)",1,true]];Hilite.decodeReferrer=function(d){var g=null;var e=new RegExp("");for(var c=0;c<Hilite.search_engines.length;c++){var f=Hilite.search_engines[c];e.compile("^http://(www\\.)?"+f[0],"i");var b=d.match(e);if(b){var a;if(isNaN(f[1])){a=Hilite.decodeReferrerQS(d,f[1])}else{a=b[f[1]+1]}if(a){a=decodeURIComponent(a);if(f.length>2&&f[2]){a=decodeURIComponent(a)}a=a.replace(/\'|"/g,"");a=a.split(/[\s,\+\.]+/);return a}break}}return null};Hilite.decodeReferrerQS=function(f,d){var b=f.indexOf("?");var c;if(b>=0){var a=new String(f.substring(b+1));b=0;c=0;while((b>=0)&&((c=a.indexOf("=",b))>=0)){var e,g;e=a.substring(b,c);b=a.indexOf("&",c)+1;if(e==d){if(b<=0){return a.substring(c+1)}else{return a.substring(c+1,b-1)}}else{if(b<=0){return null}}}}return null};Hilite.hiliteElement=function(f,e){if(!e||f.childNodes.length==0){return}var c=new Array();for(var b=0;b<e.length;b++){e[b]=e[b].toLowerCase();if(Hilite.exact){c.push("\\b"+e[b]+"\\b")}else{c.push(e[b])}}c=new RegExp(c.join("|"),"i");var a={};for(var b=0;b<e.length;b++){if(Hilite.style_name_suffix){a[e[b]]=Hilite.style_name+(b+1)}else{a[e[b]]=Hilite.style_name}}var d=function(m){var j=c.exec(m.data);if(j){var n=j[0];var i="";var h=m.splitText(j.index);var g=h.splitText(n.length);var l=m.ownerDocument.createElement("SPAN");m.parentNode.replaceChild(l,h);l.className=a[n.toLowerCase()];l.appendChild(h);return l}else{return m}};Hilite.walkElements(f.childNodes[0],1,d)};Hilite.hilite=function(){var a=Hilite.debug_referrer?Hilite.debug_referrer:document.referrer;var b=null;a=Hilite.decodeReferrer(a);if(a&&((Hilite.elementid&&(b=document.getElementById(Hilite.elementid)))||(b=document.body))){Hilite.hiliteElement(b,a)}};Hilite.walkElements=function(d,f,e){var a=/^(script|style|textarea)/i;var c=0;while(d&&f>0){c++;if(c>=Hilite.max_nodes){var b=function(){Hilite.walkElements(d,f,e)};setTimeout(b,50);return}if(d.nodeType==1){if(!a.test(d.tagName)&&d.childNodes.length>0){d=d.childNodes[0];f++;continue}}else{if(d.nodeType==3){d=e(d)}}if(d.nextSibling){d=d.nextSibling}else{while(f>0){d=d.parentNode;f--;if(d.nextSibling){d=d.nextSibling;break}}}}};if(Hilite.onload){if(window.attachEvent){window.attachEvent("onload",Hilite.hilite)}else{if(window.addEventListener){window.addEventListener("load",Hilite.hilite,false)}else{var __onload=window.onload;window.onload=function(){Hilite.hilite();__onload()}}}}; - -var mediaUrl = function(resource){ - return scriptUrl + 'm/' + osqaSkin + '/' + resource; -}; - -/* - * jQuery i18n plugin - * @requires jQuery v1.1 or later - * - * Examples at: http://recurser.com/articles/2008/02/21/jquery-i18n-translation-plugin/ - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - * Based on 'javascript i18n that almost doesn't suck' by markos - * http://markos.gaivo.net/blog/?p=100 - * - * Revision: $Id$ - * Version: 1.0.0 Feb-10-2008 - */ - (function($) { -/** - * i18n provides a mechanism for translating strings using a jscript dictionary. - * - */ - - -/* - * i18n property list - */ -$.i18n = { - -/** - * setDictionary() - * Initialise the dictionary and translate nodes - * - * @param property_list i18n_dict : The dictionary to use for translation - */ - setDictionary: function(i18n_dict) { - i18n_dict = i18n_dict; - }, - -/** - * _() - * The actual translation function. Looks the given string up in the - * dictionary and returns the translation if one exists. If a translation - * is not found, returns the original word - * - * @param string str : The string to translate - * @param property_list params : params for using printf() on the string - * @return string : Translated word - * - */ - _: function (str, params) { - var transl = str; - if (i18n_dict&& i18n_dict[str]) { - transl = i18n_dict[str]; - } - return this.printf(transl, params); - }, - -/** - * toEntity() - * Change non-ASCII characters to entity representation - * - * @param string str : The string to transform - * @return string result : Original string with non-ASCII content converted to entities - * - */ - toEntity: function (str) { - var result = ''; - for (var i=0;i<str.length; i++) { - if (str.charCodeAt(i) > 128) - result += "&#"+str.charCodeAt(i)+";"; - else - result += str.charAt(i); - } - return result; - }, - -/** - * stripStr() - * - * @param string str : The string to strip - * @return string result : Stripped string - * - */ - stripStr: function(str) { - return str.replace(/^\s*/, "").replace(/\s*$/, ""); - }, - -/** - * stripStrML() - * - * @param string str : The multi-line string to strip - * @return string result : Stripped string - * - */ - stripStrML: function(str) { - // Split because m flag doesn't exist before JS1.5 and we need to - // strip newlines anyway - var parts = str.split('\n'); - for (var i=0; i<parts.length; i++) - parts[i] = stripStr(parts[i]); - - // Don't join with empty strings, because it "concats" words - // And strip again - return stripStr(parts.join(" ")); - }, - -/* - * printf() - * C-printf like function, which substitutes %s with parameters - * given in list. %%s is used to escape %s. - * - * Doesn't work in IE5.0 (splice) - * - * @param string S : string to perform printf on. - * @param string L : Array of arguments for printf() - */ - printf: function(S, L) { - if (!L) return S; - - var nS = ""; - var tS = S.split("%s"); - - for(var i=0; i<L.length; i++) { - if (tS[i].lastIndexOf('%') == tS[i].length-1 && i != L.length-1) - tS[i] += "s"+tS.splice(i+1,1)[0]; - nS += tS[i] + L[i]; - } - return nS + tS[tS.length-1]; - } - -}; - - -})(jQuery); - - -//var i18nLang; -var i18nZh = { - 'insufficient privilege':'??????????', - 'cannot pick own answer as best':'??????????????', - 'anonymous users cannot select favorite questions':'?????????????', - 'please login':'??????', - 'anonymous users cannot vote':'????????', - '>15 points requried to upvote':'??+15?????????', - '>100 points required to downvote':'??+100?????????', - 'please see': '??', - 'cannot vote for own posts':'??????????', - 'daily vote cap exhausted':'????????????????', - 'cannot revoke old vote':'??????????????', - 'please confirm offensive':"??????????????????????", - 'anonymous users cannot flag offensive posts':'???????????', - 'cannot flag message as offensive twice':'???????', - 'flag offensive cap exhausted':'?????????????5?‘??Â’???', - 'need >15 points to report spam':"??+15??????‘???Â’?", - 'confirm delete':"?????/????????", - 'anonymous users cannot delete/undelete':"???????????????", - 'post recovered':"?????????????", - 'post deleted':"????????????", - 'add comment':'????', - 'community karma points':'????', - 'to comment, need':'????', - 'delete this comment':'?????', - 'hide comments':"????", - 'add a comment':"????", - 'comments':"??", - 'confirm delete comment':"?????????", - 'characters':'??', - 'can write':'???', - 'click to close':'???????', - 'loading...':'???...', - 'tags cannot be empty':'???????', - 'tablimits info':"??5????????????20????", - 'content cannot be empty':'???????', - 'content minchars': '????? {0} ???', - 'please enter title':'??????', - 'title minchars':"????? {0} ???", - 'delete':'??', - 'undelete': '??', - 'bold':'??', - 'italic':'??', - 'link':'???', - 'quote':'??', - 'preformatted text':'??', - 'image':'??', - 'numbered list':'??????', - 'bulleted list':'??????', - 'heading':'??', - 'horizontal bar':'???', - 'undo':'??', - 'redo':'??', - 'enter image url':'<b>??????</b></p><p>???<br />http://www.example.com/image.jpg \"????\"', - 'enter url':'<b>??Web??</b></p><p>???<br />http://www.cnprog.com/ \"????\"</p>"', - 'upload image':'?????????' -}; - -var i18nEn = { - 'need >15 points to report spam':'need >15 points to report spam ', - '>15 points requried to upvote':'>15 points required to upvote ', - 'tags cannot be empty':'please enter at least one tag', - 'anonymous users cannot vote':'sorry, anonymous users cannot vote ', - 'anonymous users cannot select favorite questions':'sorry, anonymous users cannot select favorite questions ', - 'to comment, need': '(to comment other people\'s posts, karma ', - 'please see':'please see ', - 'community karma points':' or more is necessary) - ', - 'upload image':'Upload image:', - 'enter image url':'enter URL of the image, e.g. http://www.example.com/image.jpg \"image title\"', - 'enter url':'enter Web address, e.g. http://www.example.com \"page title\"', - 'daily vote cap exhausted':'sorry, you\'ve used up todays vote cap', - 'cannot pick own answer as best':'sorry, you cannot accept your own answer', - 'cannot revoke old vote':'sorry, older votes cannot be revoked', - 'please confirm offensive':'are you sure this post is offensive, contains spam, advertising, malicious remarks, etc.?', - 'flag offensive cap exhausted':'sorry, you\'ve used up todays cap of flagging offensive messages ', - 'confirm delete':'are you sure you want to delete this?', - 'anonymous users cannot delete/undelete':'sorry, anonymous users cannot delete or undelete posts', - 'post recovered':'your post is now restored!', - 'post deleted':'your post has been deleted', - 'confirm delete comment':'do you really want to delete this comment?', - 'can write':'have ', - 'tablimits info':'up to 5 tags, no more than 20 characters each', - 'content minchars': 'please enter more than {0} characters', - 'title minchars':"please enter at least {0} characters", - 'characters':'characters left', - 'cannot vote for own posts':'sorry, you cannot vote for your own posts', - 'cannot flag message as offensive twice':'cannot flag message as offensive twice ', - '>100 points required to downvote':'>100 points required to downvote ' -}; - -var i18nEs = { - 'insufficient privilege':'privilegio insuficiente', - 'cannot pick own answer as best':'no puede escoger su propia respuesta como la mejor', - 'anonymous users cannot select favorite questions':'usuarios anonimos no pueden seleccionar', - 'please login':'por favor inicie sesión', - 'anonymous users cannot vote':'usuarios anónimos no pueden votar', - '>15 points requried to upvote': '>15 puntos requeridos para votar positivamente', - '>100 points required to downvote':'>100 puntos requeridos para votar negativamente', - 'please see': 'por favor vea', - 'cannot vote for own posts':'no se puede votar por sus propias publicaciones', - 'daily vote cap exhausted':'cuota de votos diarios excedida', - 'cannot revoke old vote':'no puede revocar un voto viejo', - 'please confirm offensive':"por favor confirme ofensiva", - 'anonymous users cannot flag offensive posts':'usuarios anónimos no pueden marcar publicaciones como ofensivas', - 'cannot flag message as offensive twice':'no puede marcar mensaje como ofensivo dos veces', - 'flag offensive cap exhausted':'cuota para marcar ofensivas ha sido excedida', - 'need >15 points to report spam':"necesita >15 puntos para reportar spam", - 'confirm delete':"¿Está seguro que desea borrar esto?", - 'anonymous users cannot delete/undelete':"usuarios anónimos no pueden borrar o recuperar publicaciones", - 'post recovered':"publicación recuperada", - 'post deleted':"publicación borrada?", - 'add comment':'agregar comentario', - 'community karma points':'reputación comunitaria', - 'to comment, need':'para comentar, necesita reputación', - 'delete this comment':'borrar este comentario', - 'hide comments':"ocultar comentarios", - 'add a comment':"agregar comentarios", - 'comments':"comentarios", - 'confirm delete comment':"¿Realmente desea borrar este comentario?", - 'characters':'caracteres faltantes', - 'can write':'tiene ', - 'click to close':'haga click para cerrar', - 'loading...':'cargando...', - 'tags cannot be empty':'las etiquetas no pueden estar vacÃas', - 'tablimits info':"hasta 5 etiquetas de no mas de 20 caracteres cada una", - 'content cannot be empty':'el contenido no puede estar vacÃo', - 'content minchars': 'por favor introduzca mas de {0} caracteres', - 'please enter title':'por favor ingrese un tÃtulo', - 'title minchars':"por favor introduzca al menos {0} caracteres", - 'delete':'borrar', - 'undelete': 'recuperar', - 'bold': 'negrita', - 'italic':'cursiva', - 'link':'enlace', - 'quote':'citar', - 'preformatted text':'texto preformateado', - 'image':'imagen', - 'numbered list':'lista numerada', - 'bulleted list':'lista no numerada', - 'heading':'??', - 'horizontal bar':'barra horizontal', - 'undo':'deshacer', - 'redo':'rehacer', - 'enter image url':'introduzca la URL de la imagen, por ejemplo?<br />http://www.example.com/image.jpg \"titulo de imagen\"', - 'enter url':'introduzca direcciones web, ejemplo?<br />http://www.cnprog.com/ \"titulo del enlace\"</p>"', - 'upload image':'cargar imagen?', - 'questions/' : 'preguntas/', - 'vote/' : 'votar/' -}; - -var i18n = { - 'en':i18nEn, - 'zh_CN':i18nZh, - 'es':i18nEs -}; - -var i18n_dict = i18n[i18nLang]; - -/* - jQuery TextAreaResizer plugin - Created on 17th January 2008 by Ryan O'Dell - Version 1.0.4 -*/(function($){var textarea,staticOffset;var iLastMousePos=0;var iMin=32;var grip;$.fn.TextAreaResizer=function(){return this.each(function(){textarea=$(this).addClass('processed'),staticOffset=null;$(this).wrap('<div class="resizable-textarea"><span></span></div>').parent().append($('<div class="grippie"></div>').bind("mousedown",{el:this},startDrag));var grippie=$('div.grippie',$(this).parent())[0];grippie.style.marginRight=(grippie.offsetWidth-$(this)[0].offsetWidth)+'px'})};function startDrag(e){textarea=$(e.data.el);textarea.blur();iLastMousePos=mousePosition(e).y;staticOffset=textarea.height()-iLastMousePos;textarea.css('opacity',0.25);$(document).mousemove(performDrag).mouseup(endDrag);return false}function performDrag(e){var iThisMousePos=mousePosition(e).y;var iMousePos=staticOffset+iThisMousePos;if(iLastMousePos>=(iThisMousePos)){iMousePos-=5}iLastMousePos=iThisMousePos;iMousePos=Math.max(iMin,iMousePos);textarea.height(iMousePos+'px');if(iMousePos<iMin){endDrag(e)}return false}function endDrag(e){$(document).unbind('mousemove',performDrag).unbind('mouseup',endDrag);textarea.css('opacity',1);textarea.focus();textarea=null;staticOffset=null;iLastMousePos=0}function mousePosition(e){return{x:e.clientX+document.documentElement.scrollLeft,y:e.clientY+document.documentElement.scrollTop}}})(jQuery); -/* - * Autocomplete - jQuery plugin 1.0.3 - * - * Copyright (c) 2007 Dylan Verheul, Dan G. Switzer, Anjesh Tuladhar, Jörn Zaefferer - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - * - */ -(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(e){return e};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(b){return this.bind("result",b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(l,g){var c={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var b=a(l).attr("autocomplete","off").addClass(g.inputClass);var j;var p="";var m=a.Autocompleter.Cache(g);var e=0;var u;var x={mouseDownOnSelect:false};var r=a.Autocompleter.Select(g,l,d,x);var w;a.browser.opera&&a(l.form).bind("submit.autocomplete",function(){if(w){w=false;return false}});b.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(y){u=y.keyCode;switch(y.keyCode){case c.UP:y.preventDefault();if(r.visible()){r.prev()}else{t(0,true)}break;case c.DOWN:y.preventDefault();if(r.visible()){r.next()}else{t(0,true)}break;case c.PAGEUP:y.preventDefault();if(r.visible()){r.pageUp()}else{t(0,true)}break;case c.PAGEDOWN:y.preventDefault();if(r.visible()){r.pageDown()}else{t(0,true)}break;case g.multiple&&a.trim(g.multipleSeparator)==","&&c.COMMA:case c.TAB:case c.RETURN:if(d()){y.preventDefault();w=true;return false}break;case c.ESC:r.hide();break;default:clearTimeout(j);j=setTimeout(t,g.delay);break}}).focus(function(){e++}).blur(function(){e=0;if(!x.mouseDownOnSelect){s()}}).click(function(){if(e++>1&&!r.visible()){t(0,true)}}).bind("search",function(){var y=(arguments.length>1)?arguments[1]:null;function z(D,C){var A;if(C&&C.length){for(var B=0;B<C.length;B++){if(C[B].result.toLowerCase()==D.toLowerCase()){A=C[B];break}}}if(typeof y=="function"){y(A)}else{b.trigger("result",A&&[A.data,A.value])}}a.each(h(b.val()),function(A,B){f(B,z,z)})}).bind("flushCache",function(){m.flush()}).bind("setOptions",function(){a.extend(g,arguments[1]);if("data" in arguments[1]){m.populate()}}).bind("unautocomplete",function(){r.unbind();b.unbind();a(l.form).unbind(".autocomplete")});function d(){var z=r.selected();if(!z){return false}var y=z.result;p=y;if(g.multiple){var A=h(b.val());if(A.length>1){y=A.slice(0,A.length-1).join(g.multipleSeparator)+g.multipleSeparator+y}y+=g.multipleSeparator}b.val(y);v();b.trigger("result",[z.data,z.value]);return true}function t(A,z){if(u==c.DEL){r.hide();return}var y=b.val();if(!z&&y==p){return}p=y;y=i(y);if(y.length>=g.minChars){b.addClass(g.loadingClass);if(!g.matchCase){y=y.toLowerCase()}f(y,k,v)}else{n();r.hide()}}function h(z){if(!z){return[""]}var A=z.split(g.multipleSeparator);var y=[];a.each(A,function(B,C){if(a.trim(C)){y[B]=a.trim(C)}});return y}function i(y){if(!g.multiple){return y}var z=h(y);return z[z.length-1]}function q(y,z){if(g.autoFill&&(i(b.val()).toLowerCase()==y.toLowerCase())&&u!=c.BACKSPACE){b.val(b.val()+z.substring(i(p).length));a.Autocompleter.Selection(l,p.length,p.length+z.length)}}function s(){clearTimeout(j);j=setTimeout(v,200)}function v(){var y=r.visible();r.hide();clearTimeout(j);n();if(g.mustMatch){b.search(function(z){if(!z){if(g.multiple){var A=h(b.val()).slice(0,-1);b.val(A.join(g.multipleSeparator)+(A.length?g.multipleSeparator:""))}else{b.val("")}}})}if(y){a.Autocompleter.Selection(l,l.value.length,l.value.length)}}function k(z,y){if(y&&y.length&&e){n();r.display(y,z);q(z,y[0].value);r.show()}else{v()}}function f(z,B,y){if(!g.matchCase){z=z.toLowerCase()}var A=m.load(z);if(A&&A.length){B(z,A)}else{if((typeof g.url=="string")&&(g.url.length>0)){var C={timestamp:+new Date()};a.each(g.extraParams,function(D,E){C[D]=typeof E=="function"?E():E});a.ajax({mode:"abort",port:"autocomplete"+l.name,dataType:g.dataType,url:g.url,data:a.extend({q:i(z),limit:g.max},C),success:function(E){var D=g.parse&&g.parse(E)||o(E);m.add(z,D);B(z,D)}})}else{r.emptyList();y(z)}}}function o(B){var y=[];var A=B.split("\n");for(var z=0;z<A.length;z++){var C=a.trim(A[z]);if(C){C=C.split("|");y[y.length]={data:C,value:C[0],result:g.formatResult&&g.formatResult(C,C[0])||C[0]}}}return y}function n(){b.removeClass(g.loadingClass)}};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(b){return b[0]},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(c,b){return c.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:true,scrollHeight:180};a.Autocompleter.Cache=function(c){var f={};var d=0;function h(l,k){if(!c.matchCase){l=l.toLowerCase()}var j=l.indexOf(k);if(j==-1){return false}return j==0||c.matchContains}function g(j,i){if(d>c.cacheLength){b()}if(!f[j]){d++}f[j]=i}function e(){if(!c.data){return false}var k={},j=0;if(!c.url){c.cacheLength=1}k[""]=[];for(var m=0,l=c.data.length;m<l;m++){var p=c.data[m];p=(typeof p=="string")?[p]:p;var o=c.formatMatch(p,m+1,c.data.length);if(o===false){continue}var n=o.charAt(0).toLowerCase();if(!k[n]){k[n]=[]}var q={value:o,data:p,result:c.formatResult&&c.formatResult(p)||o};k[n].push(q);if(j++<c.max){k[""].push(q)}}a.each(k,function(r,s){c.cacheLength++;g(r,s)})}setTimeout(e,25);function b(){f={};d=0}return{flush:b,add:g,populate:e,load:function(n){if(!c.cacheLength||!d){return null}if(!c.url&&c.matchContains){var m=[];for(var j in f){if(j.length>0){var o=f[j];a.each(o,function(p,k){if(h(k.value,n)){m.push(k)}})}}return m}else{if(f[n]){return f[n]}else{if(c.matchSubset){for(var l=n.length-1;l>=c.minChars;l--){var o=f[n.substr(0,l)];if(o){var m=[];a.each(o,function(p,k){if(h(k.value,n)){m[m.length]=k}});return m}}}}}return null}}};a.Autocompleter.Select=function(e,j,l,p){var i={ACTIVE:"ac_over"};var k,f=-1,r,m="",s=true,c,o;function n(){if(!s){return}c=a("<div/>").hide().addClass(e.resultsClass).css("position","absolute").appendTo(document.body);o=a("<ul/>").appendTo(c).mouseover(function(t){if(q(t).nodeName&&q(t).nodeName.toUpperCase()=="LI"){f=a("li",o).removeClass(i.ACTIVE).index(q(t));a(q(t)).addClass(i.ACTIVE)}}).click(function(t){a(q(t)).addClass(i.ACTIVE);l();j.focus();return false}).mousedown(function(){p.mouseDownOnSelect=true}).mouseup(function(){p.mouseDownOnSelect=false});if(e.width>0){c.css("width",e.width)}s=false}function q(u){var t=u.target;while(t&&t.tagName!="LI"){t=t.parentNode}if(!t){return[]}return t}function h(t){k.slice(f,f+1).removeClass(i.ACTIVE);g(t);var v=k.slice(f,f+1).addClass(i.ACTIVE);if(e.scroll){var u=0;k.slice(0,f).each(function(){u+=this.offsetHeight});if((u+v[0].offsetHeight-o.scrollTop())>o[0].clientHeight){o.scrollTop(u+v[0].offsetHeight-o.innerHeight())}else{if(u<o.scrollTop()){o.scrollTop(u)}}}}function g(t){f+=t;if(f<0){f=k.size()-1}else{if(f>=k.size()){f=0}}}function b(t){return e.max&&e.max<t?e.max:t}function d(){o.empty();var u=b(r.length);for(var v=0;v<u;v++){if(!r[v]){continue}var w=e.formatItem(r[v].data,v+1,u,r[v].value,m);if(w===false){continue}var t=a("<li/>").html(e.highlight(w,m)).addClass(v%2==0?"ac_even":"ac_odd").appendTo(o)[0];a.data(t,"ac_data",r[v])}k=o.find("li");if(e.selectFirst){k.slice(0,1).addClass(i.ACTIVE);f=0}if(a.fn.bgiframe){o.bgiframe()}}return{display:function(u,t){n();r=u;m=t;d()},next:function(){h(1)},prev:function(){h(-1)},pageUp:function(){if(f!=0&&f-8<0){h(-f)}else{h(-8)}},pageDown:function(){if(f!=k.size()-1&&f+8>k.size()){h(k.size()-1-f)}else{h(8)}},hide:function(){c&&c.hide();k&&k.removeClass(i.ACTIVE);f=-1},visible:function(){return c&&c.is(":visible")},current:function(){return this.visible()&&(k.filter("."+i.ACTIVE)[0]||e.selectFirst&&k[0])},show:function(){var v=a(j).offset();c.css({width:typeof e.width=="string"||e.width>0?e.width:a(j).width(),top:v.top+j.offsetHeight,left:v.left}).show();if(e.scroll){o.scrollTop(0);o.css({maxHeight:e.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var t=0;k.each(function(){t+=this.offsetHeight});var u=t>e.scrollHeight;o.css("height",u?e.scrollHeight:t);if(!u){k.width(o.width()-parseInt(k.css("padding-left"))-parseInt(k.css("padding-right")))}}}},selected:function(){var t=k&&k.filter("."+i.ACTIVE).removeClass(i.ACTIVE);return t&&t.length&&a.data(t[0],"ac_data")},emptyList:function(){o&&o.empty()},unbind:function(){c&&c.remove()}}};a.Autocompleter.Selection=function(d,e,c){if(d.setSelectionRange){d.setSelectionRange(e,c)}else{if(d.createTextRange){var b=d.createTextRange();b.collapse(true);b.moveStart("character",e);b.moveEnd("character",c);b.select()}else{if(d.selectionStart){d.selectionStart=e;d.selectionEnd=c}}}d.focus()}})(jQuery); - -var notify = function() { - var visible = false; - return { - show: function(html) { - if (html) { - $("body").css("margin-top", "2.2em"); - $(".notify span").html(html); - } - $(".notify").fadeIn("slow"); - visible = true; - }, - close: function(doPostback) { - $(".notify").fadeOut("fast"); - $("body").css("margin-top", "0"); - visible = false; - }, - isVisible: function() { return visible; } - }; -} (); - -/* - * jQuery outside events - v1.1 - 3/16/2010 - * http://benalman.com/projects/jquery-outside-events-plugin/ - * - * Copyright (c) 2010 "Cowboy" Ben Alman - * Dual licensed under the MIT and GPL licenses. - * http://benalman.com/about/license/ - */ -(function($,c,b){$.map("click dblclick mousemove mousedown mouseup mouseover mouseout change select submit keydown keypress keyup".split(" "),function(d){a(d)});a("focusin","focus"+b);a("focusout","blur"+b);$.addOutsideEvent=a;function a(g,e){e=e||g+b;var d=$(),h=g+"."+e+"-special-event";$.event.special[e]={setup:function(){d=d.add(this);if(d.length===1){$(c).bind(h,f)}},teardown:function(){d=d.not(this);if(d.length===0){$(c).unbind(h)}},add:function(i){var j=i.handler;i.handler=function(l,k){l.target=k;j.apply(this,arguments)}}};function f(i){$(d).each(function(){var j=$(this);if(this!==i.target&&!j.has(i.target).length){j.triggerHandler(e,[i.target])}})}}})(jQuery,document,"outside"); - -$(document).ready( function(){ - pickedTags().init(); - - $('input#bnewaccount').click(function() { - $('#bnewaccount').disabled=true; - }); -}); - -function yourWorkWillBeLost(e) { - if(browserTester('chrome')) { - return "Are you sure you want to leave? Your work will be lost."; - } else if(browserTester('safari')) { - return "Are you sure you want to leave? Your work will be lost."; - } else { - if(!e) e = window.event; - e.cancelBubble = true; - e.returnValue = 'If you leave, your work will be lost.'; - - if (e.stopPropagation) { - e.stopPropagation(); - e.preventDefault(); - } - return e; - } -} - -function browserTester(browserString) { - return navigator.userAgent.toLowerCase().indexOf(browserString) > -1; -} - -// Add missing IE functionality -if (!window.addEventListener) { - if (window.attachEvent) { - window.addEventListener = function (type, listener, useCapture) { - window.attachEvent('on' + type, listener); - }; - window.removeEventListener = function (type, listener, useCapture) { - window.detachEvent('on' + type, listener); - }; - } else { - window.addEventListener = function (type, listener, useCapture) { - window['on' + type] = listener; - }; - window.removeEventListener = function (type, listener, useCapture) { - window['on' + type] = null; - }; - } -} diff --git a/forum/skins/light/media/js/.svn/text-base/osqa.main.min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/osqa.main.min.js.svn-base deleted file mode 100755 index 442292610efc857ed267a541f85b3079dd211f89..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/osqa.main.min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -var response_commands={update_post_score:function(a,d,b){var c=$("#"+a+"-"+d+"-score");c.html(parseInt(c.html())+b)},update_user_post_vote:function(c,e,b){var a=$("#"+c+"-"+e+"-upvote");var d=$("#"+c+"-"+e+"-downvote");a.removeClass("on");d.removeClass("on");if(b=="up"){a.addClass("on")}else{if(b=="down"){d.addClass("on")}}},update_favorite_count:function(b){var c=$("#favorite-count");var a=parseInt(c.html());if(isNaN(a)){a=0}a+=b;if(a==0){a=""}c.html(a)},update_favorite_mark:function(a){if(a=="on"){$("#favorite-mark").addClass("on")}else{$("#favorite-mark").removeClass("on")}},mark_accepted:function(b){$(".accepted-answer").removeClass("accepted-answer");$(".accept-answer.on").removeClass("on");var a=$("#answer-container-"+b);a.addClass("accepted-answer");a.find(".accept-answer").addClass("on")},unmark_accepted:function(b){var a=$("#answer-container-"+b);a.removeClass("accepted-answer");a.find(".accept-answer").removeClass("on")},update_comment_score:function(d,b){var c=$("#comment-"+d+"-score");var a=parseInt(c.html());if(isNaN(a)){a=0}a+=b;if(a==0){a=""}c.html(a)},update_likes_comment_mark:function(c,a){var b=$("#comment-"+c+"-like");if(a=="on"){b.addClass("on")}else{b.removeClass("on")}},remove_comment:function(b){var a=$("#comment-"+b);a.css("background","red");a.fadeOut("slow",function(){a.remove()})},insert_comment:function(g,c,a,f,e,h,b){var i=$("#comments-container-"+g+"-"+c);var d=$("#new-comment-skeleton-"+g+"-"+c).html().toString();d=d.replace(new RegExp("%ID%","g"),a).replace(new RegExp("%COMMENT%","g"),f).replace(new RegExp("%USERNAME%","g"),e).replace(new RegExp("%PROFILE_URL%","g"),h).replace(new RegExp("%DELETE_URL%","g"),b);i.append(d);$("#comment-"+a).slideDown("slow")},update_comment:function(b,a){var c=$("#comment-"+b);c.find(".comment-text").html(a);c.slideDown("slow")},mark_deleted:function(b,a){if(b=="answer"){var d=$("#answer-container-"+a);d.addClass("deleted")}else{var c=$("#question-table");c.addClass("deleted")}},set_subscription_button:function(a){$(".subscription_switch").html(a)},set_subscription_status:function(a){$(".subscription-status").html(a)}};function show_message(a,b){var c=$('<div class="vote-notification"><h3>'+b+"</h3>(click to close)</div>");c.click(function(d){$(".vote-notification").fadeOut("fast",function(){$(this).remove()})});a.parent().append(c);c.fadeIn("fast")}function process_ajax_response(b,a){if(!b.success&&b.error_message!=undefined){show_message(a,b.error_message)}else{if(typeof b.commands!=undefined){for(var c in b.commands){response_commands[c].apply(null,b.commands[c])}if(b.message!=undefined){show_message(a,b.message)}}}}$(function(){$("a.ajax-command").live("click",function(){var a=$(this);$.getJSON(a.attr("href"),function(b){process_ajax_response(b,a)});return false});$("div.comment-form-container").each(function(){var l=$(this);var o=l.find("form");var g=l.find("textarea");var a=l.find('input[type="submit"]');var e=$(".comment-chars-left");var b=l.find(".comments-char-left-count");var m=l.parent().find(".comment-tools");var n=m.find(".add-comment-link");var f=l.parent().find(".comments-container");var k=parseInt(b.html());var h=false;function i(){g.val("");b.html(k);e.removeClass("warn");h=false}i();function d(){var q=g.val().length;var p=true;if(q<k){if(q<k*0.75){e.removeClass("warn")}else{e.addClass("warn")}}else{p=false}b.html(k-q);return p}function c(){l.slideDown("slow");n.fadeOut("slow")}function j(){l.slideUp("slow");n.fadeIn("slow")}n.click(function(){i();c();return false});m.find(".show-all-comments-link").click(function(){f.find(".not_top_scorer").slideDown("slow");$(this).fadeOut("slow");m.find(".comments-showing").fadeOut("slow");return false});$("#"+f.attr("id")+" .comment-edit").live("click",function(){var q=$(this);var r=/comment-(\d+)-edit/.exec(q.attr("id"))[1];var s=q.parents(".comment");var p=s.find(".comment-text").text().trim();h=r;g.val(p);d();s.slideUp("slow");c();return false});g.keyup(d);a.click(function(){if(g.val().length>k){show_message(a,"Your comment exceeds the max number of characters allowed.")}else{var p={comment:g.val()};if(h){p.id=h}$.post(o.attr("action"),p,function(q){process_ajax_response(q,a);i()},"json")}j();return false})})});function pickedTags(){var a=function(j,k,i,l){var h=scriptUrl;if(i=="add"){h+=$.i18n._("mark-tag/");if(k=="good"){h+=$.i18n._("interesting/")}else{h+=$.i18n._("ignored/")}}else{h+=$.i18n._("unmark-tag/")}h=h+j+"/";var g={type:"POST",url:h};if(l!==false){g.success=l}$.ajax(g)};var f=function(k,h,i,g){var j=function(){k[h].remove();delete k[h]};if(g){a(h,i,"remove",j)}else{j()}};var b=function(k,h,i,j,g){k.unbind("mouseover").bind("mouseover",function(){$(this).attr("src",mediaUrl("media/images/close-small-hover.png"))});k.unbind("mouseout").bind("mouseout",function(){$(this).attr("src",mediaUrl("media/images/close-small-dark.png"))});k.click(function(){f(h,i,j,g)})};var d=function(k,j){var i=$.trim($(k).prev().attr("value"));var g=interestingTags;var l=ignoredTags;var h;if(j=="bad"){g=ignoredTags;l=interestingTags;h=$("div .tags.ignored")}else{if(j!="good"){return}else{h=$("div .tags.interesting")}}if(i in l){f(l,i,j,false)}if(!(i in g)){a(i,j,"add",function(){var n=$("<span></span>");n.addClass("deletable-tag");var m=$("<a></a>");m.attr("rel","tag");m.attr("href",scriptUrl+$.i18n._("tags/")+i);m.html(i);var o=$("<img></img>");o.addClass("delete-icon");o.attr("src",mediaUrl("/media/images/close-small-dark.png"));b(o,g,i,j,true);n.append(m);n.append(o);h.append(n);g[i]=n})}};var c=function(){var g="interesting-tag-";var j="ignored-tag-";var i=RegExp("^"+g);var h=RegExp("^"+j);interestingTags={};ignoredTags={};$(".deletable-tag").each(function(l,n){var k=$(n).attr("id");var o,m;if(i.test(k)){o=k.replace(g,"");m=interestingTags;reason="good"}else{if(h.test(k)){o=k.replace(j,"");m=ignoredTags;reason="bad"}else{return}}m[o]=$(n);b($(n).find("img"),m,o,reason,true)})};var e=function(){$("#hideIgnoredTagsCb").unbind("click").click(function(){$.ajax({type:"POST",dataType:"json",cache:false,url:scriptUrl+$.i18n._("command/"),data:{command:"toggle-ignored-questions"}})})};return{init:function(){c();e();$("#interestingTagInput, #ignoredTagInput").autocomplete(tags,{minChars:1,matchContains:true,max:20,multiple:true,multipleSeparator:" ",formatItem:function(j,h,g){return j.n+" ("+j.c+")"},formatResult:function(j,h,g){return j.n}});$("#interestingTagAdd").click(function(){d(this,"good")});$("#ignoredTagAdd").click(function(){d(this,"bad")})}}}$(document).ready(function(){if(window.tags!=undefined){pickedTags().init()}});Hilite={elementid:"content",exact:true,max_nodes:1000,onload:true,style_name:"hilite",style_name_suffix:true,debug_referrer:""};Hilite.search_engines=[["local","q"],["cnprog\\.","q"],["google\\.","q"],["search\\.yahoo\\.","p"],["search\\.msn\\.","q"],["search\\.live\\.","query"],["search\\.aol\\.","userQuery"],["ask\\.com","q"],["altavista\\.","q"],["feedster\\.","q"],["search\\.lycos\\.","q"],["alltheweb\\.","q"],["technorati\\.com/search/([^\\?/]+)",1],["dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)",1,true]];Hilite.decodeReferrer=function(m){var j=null;var l=new RegExp("");for(var n=0;n<Hilite.search_engines.length;n++){var k=Hilite.search_engines[n];l.compile("^http://(www\\.)?"+k[0],"i");var h=m.match(l);if(h){var i;if(isNaN(k[1])){i=Hilite.decodeReferrerQS(m,k[1])}else{i=h[k[1]+1]}if(i){i=decodeURIComponent(i);if(k.length>2&&k[2]){i=decodeURIComponent(i)}i=i.replace(/\'|"/g,"");i=i.split(/[\s,\+\.]+/);return i}break}}return null};Hilite.decodeReferrerQS=function(k,m){var h=k.indexOf("?");var n;if(h>=0){var i=new String(k.substring(h+1));h=0;n=0;while((h>=0)&&((n=i.indexOf("=",h))>=0)){var l,j;l=i.substring(h,n);h=i.indexOf("&",n)+1;if(l==m){if(h<=0){return i.substring(n+1)}else{return i.substring(n+1,h-1)}}else{if(h<=0){return null}}}}return null};Hilite.hiliteElement=function(i,j){if(!j||i.childNodes.length==0){return}var l=new Array();for(var g=0;g<j.length;g++){j[g]=j[g].toLowerCase();if(Hilite.exact){l.push("\\b"+j[g]+"\\b")}else{l.push(j[g])}}l=new RegExp(l.join("|"),"i");var h={};for(var g=0;g<j.length;g++){if(Hilite.style_name_suffix){h[j[g]]=Hilite.style_name+(g+1)}else{h[j[g]]=Hilite.style_name}}var k=function(a){var c=l.exec(a.data);if(c){var o=c[0];var d="";var e=a.splitText(c.index);var f=e.splitText(o.length);var b=a.ownerDocument.createElement("SPAN");a.parentNode.replaceChild(b,e);b.className=h[o.toLowerCase()];b.appendChild(e);return b}else{return a}};Hilite.walkElements(i.childNodes[0],1,k)};Hilite.hilite=function(){var d=Hilite.debug_referrer?Hilite.debug_referrer:document.referrer;var c=null;d=Hilite.decodeReferrer(d);if(d&&((Hilite.elementid&&(c=document.getElementById(Hilite.elementid)))||(c=document.body))){Hilite.hiliteElement(c,d)}};Hilite.walkElements=function(k,i,j){var h=/^(script|style|textarea)/i;var l=0;while(k&&i>0){l++;if(l>=Hilite.max_nodes){var g=function(){Hilite.walkElements(k,i,j)};setTimeout(g,50);return}if(k.nodeType==1){if(!h.test(k.tagName)&&k.childNodes.length>0){k=k.childNodes[0];i++;continue}}else{if(k.nodeType==3){k=j(k)}}if(k.nextSibling){k=k.nextSibling}else{while(i>0){k=k.parentNode;i--;if(k.nextSibling){k=k.nextSibling;break}}}}};if(Hilite.onload){if(window.attachEvent){window.attachEvent("onload",Hilite.hilite)}else{if(window.addEventListener){window.addEventListener("load",Hilite.hilite,false)}else{var __onload=window.onload;window.onload=function(){Hilite.hilite();__onload()}}}}var mediaUrl=function(a){return scriptUrl+"m/"+osqaSkin+"/"+a};(function(a){a.i18n={setDictionary:function(b){b=b},_:function(d,c){var b=d;if(i18n_dict&&i18n_dict[d]){b=i18n_dict[d]}return this.printf(b,c)},toEntity:function(d){var b="";for(var c=0;c<d.length;c++){if(d.charCodeAt(c)>128){b+="&#"+d.charCodeAt(c)+";"}else{b+=d.charAt(c)}}return b},stripStr:function(b){return b.replace(/^\s*/,"").replace(/\s*$/,"")},stripStrML:function(d){var c=d.split("\n");for(var b=0;b<c.length;b++){c[b]=stripStr(c[b])}return stripStr(c.join(" "))},printf:function(e,b){if(!b){return e}var d="";var f=e.split("%s");for(var c=0;c<b.length;c++){if(f[c].lastIndexOf("%")==f[c].length-1&&c!=b.length-1){f[c]+="s"+f.splice(c+1,1)[0]}d+=f[c]+b[c]}return d+f[f.length-1]}}})(jQuery);var i18nZh={"insufficient privilege":"??????????","cannot pick own answer as best":"??????????????","anonymous users cannot select favorite questions":"?????????????","please login":"??????","anonymous users cannot vote":"????????",">15 points requried to upvote":"??+15?????????",">100 points required to downvote":"??+100?????????","please see":"??","cannot vote for own posts":"??????????","daily vote cap exhausted":"????????????????","cannot revoke old vote":"??????????????","please confirm offensive":"??????????????????????","anonymous users cannot flag offensive posts":"???????????","cannot flag message as offensive twice":"???????","flag offensive cap exhausted":"?????????????5?�??�???","need >15 points to report spam":"??+15??????�???�?","confirm delete":"?????/????????","anonymous users cannot delete/undelete":"???????????????","post recovered":"?????????????","post deleted":"????????????","add comment":"????","community karma points":"????","to comment, need":"????","delete this comment":"?????","hide comments":"????","add a comment":"????",comments:"??","confirm delete comment":"?????????",characters:"??","can write":"???","click to close":"???????","loading...":"???...","tags cannot be empty":"???????","tablimits info":"??5????????????20????","content cannot be empty":"???????","content minchars":"????? {0} ???","please enter title":"??????","title minchars":"????? {0} ???","delete":"??",undelete:"??",bold:"??",italic:"??",link:"???",quote:"??","preformatted text":"??",image:"??","numbered list":"??????","bulleted list":"??????",heading:"??","horizontal bar":"???",undo:"??",redo:"??","enter image url":'<b>??????</b></p><p>???<br />http://www.example.com/image.jpg "????"',"enter url":'<b>??Web??</b></p><p>???<br />http://www.cnprog.com/ "????"</p>"',"upload image":"?????????"};var i18nEn={"need >15 points to report spam":"need >15 points to report spam ",">15 points requried to upvote":">15 points required to upvote ","tags cannot be empty":"please enter at least one tag","anonymous users cannot vote":"sorry, anonymous users cannot vote ","anonymous users cannot select favorite questions":"sorry, anonymous users cannot select favorite questions ","to comment, need":"(to comment other people's posts, karma ","please see":"please see ","community karma points":" or more is necessary) - ","upload image":"Upload image:","enter image url":'enter URL of the image, e.g. http://www.example.com/image.jpg "image title"',"enter url":'enter Web address, e.g. http://www.example.com "page title"',"daily vote cap exhausted":"sorry, you've used up todays vote cap","cannot pick own answer as best":"sorry, you cannot accept your own answer","cannot revoke old vote":"sorry, older votes cannot be revoked","please confirm offensive":"are you sure this post is offensive, contains spam, advertising, malicious remarks, etc.?","flag offensive cap exhausted":"sorry, you've used up todays cap of flagging offensive messages ","confirm delete":"are you sure you want to delete this?","anonymous users cannot delete/undelete":"sorry, anonymous users cannot delete or undelete posts","post recovered":"your post is now restored!","post deleted":"your post has been deleted","confirm delete comment":"do you really want to delete this comment?","can write":"have ","tablimits info":"up to 5 tags, no more than 20 characters each","content minchars":"please enter more than {0} characters","title minchars":"please enter at least {0} characters",characters:"characters left","cannot vote for own posts":"sorry, you cannot vote for your own posts","cannot flag message as offensive twice":"cannot flag message as offensive twice ",">100 points required to downvote":">100 points required to downvote "};var i18nEs={"insufficient privilege":"privilegio insuficiente","cannot pick own answer as best":"no puede escoger su propia respuesta como la mejor","anonymous users cannot select favorite questions":"usuarios anonimos no pueden seleccionar","please login":"por favor inicie sesi�n","anonymous users cannot vote":"usuarios an�nimos no pueden votar",">15 points requried to upvote":">15 puntos requeridos para votar positivamente",">100 points required to downvote":">100 puntos requeridos para votar negativamente","please see":"por favor vea","cannot vote for own posts":"no se puede votar por sus propias publicaciones","daily vote cap exhausted":"cuota de votos diarios excedida","cannot revoke old vote":"no puede revocar un voto viejo","please confirm offensive":"por favor confirme ofensiva","anonymous users cannot flag offensive posts":"usuarios an�nimos no pueden marcar publicaciones como ofensivas","cannot flag message as offensive twice":"no puede marcar mensaje como ofensivo dos veces","flag offensive cap exhausted":"cuota para marcar ofensivas ha sido excedida","need >15 points to report spam":"necesita >15 puntos para reportar spam","confirm delete":"�Est� seguro que desea borrar esto?","anonymous users cannot delete/undelete":"usuarios an�nimos no pueden borrar o recuperar publicaciones","post recovered":"publicaci�n recuperada","post deleted":"publicaci�n borrada?","add comment":"agregar comentario","community karma points":"reputaci�n comunitaria","to comment, need":"para comentar, necesita reputaci�n","delete this comment":"borrar este comentario","hide comments":"ocultar comentarios","add a comment":"agregar comentarios",comments:"comentarios","confirm delete comment":"�Realmente desea borrar este comentario?",characters:"caracteres faltantes","can write":"tiene ","click to close":"haga click para cerrar","loading...":"cargando...","tags cannot be empty":"las etiquetas no pueden estar vac�as","tablimits info":"hasta 5 etiquetas de no mas de 20 caracteres cada una","content cannot be empty":"el contenido no puede estar vac�o","content minchars":"por favor introduzca mas de {0} caracteres","please enter title":"por favor ingrese un t�tulo","title minchars":"por favor introduzca al menos {0} caracteres","delete":"borrar",undelete:"recuperar",bold:"negrita",italic:"cursiva",link:"enlace",quote:"citar","preformatted text":"texto preformateado",image:"imagen","numbered list":"lista numerada","bulleted list":"lista no numerada",heading:"??","horizontal bar":"barra horizontal",undo:"deshacer",redo:"rehacer","enter image url":'introduzca la URL de la imagen, por ejemplo?<br />http://www.example.com/image.jpg "titulo de imagen"',"enter url":'introduzca direcciones web, ejemplo?<br />http://www.cnprog.com/ "titulo del enlace"</p>"',"upload image":"cargar imagen?","questions/":"preguntas/","vote/":"votar/"};var i18n={en:i18nEn,zh_CN:i18nZh,es:i18nEs};var i18n_dict=i18n[i18nLang];(function(c){var h,i;var d=0;var a=32;var e;c.fn.TextAreaResizer=function(){return this.each(function(){h=c(this).addClass("processed"),i=null;c(this).wrap('<div class="resizable-textarea"><span></span></div>').parent().append(c('<div class="grippie"></div>').bind("mousedown",{el:this},b));var k=c("div.grippie",c(this).parent())[0];k.style.marginRight=(k.offsetWidth-c(this)[0].offsetWidth)+"px"})};function b(k){h=c(k.data.el);h.blur();d=j(k).y;i=h.height()-d;h.css("opacity",0.25);c(document).mousemove(g).mouseup(f);return false}function g(m){var k=j(m).y;var l=i+k;if(d>=(k)){l-=5}d=k;l=Math.max(a,l);h.height(l+"px");if(l<a){f(m)}return false}function f(k){c(document).unbind("mousemove",g).unbind("mouseup",f);h.css("opacity",1);h.focus();h=null;i=null;d=0}function j(k){return{x:k.clientX+document.documentElement.scrollLeft,y:k.clientY+document.documentElement.scrollTop}}})(jQuery);(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(e){return e};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(b){return this.bind("result",b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(l,g){var c={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var b=a(l).attr("autocomplete","off").addClass(g.inputClass);var j;var p="";var m=a.Autocompleter.Cache(g);var e=0;var u;var x={mouseDownOnSelect:false};var r=a.Autocompleter.Select(g,l,d,x);var w;a.browser.opera&&a(l.form).bind("submit.autocomplete",function(){if(w){w=false;return false}});b.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(y){u=y.keyCode;switch(y.keyCode){case c.UP:y.preventDefault();if(r.visible()){r.prev()}else{t(0,true)}break;case c.DOWN:y.preventDefault();if(r.visible()){r.next()}else{t(0,true)}break;case c.PAGEUP:y.preventDefault();if(r.visible()){r.pageUp()}else{t(0,true)}break;case c.PAGEDOWN:y.preventDefault();if(r.visible()){r.pageDown()}else{t(0,true)}break;case g.multiple&&a.trim(g.multipleSeparator)==","&&c.COMMA:case c.TAB:case c.RETURN:if(d()){y.preventDefault();w=true;return false}break;case c.ESC:r.hide();break;default:clearTimeout(j);j=setTimeout(t,g.delay);break}}).focus(function(){e++}).blur(function(){e=0;if(!x.mouseDownOnSelect){s()}}).click(function(){if(e++>1&&!r.visible()){t(0,true)}}).bind("search",function(){var y=(arguments.length>1)?arguments[1]:null;function z(D,C){var A;if(C&&C.length){for(var B=0;B<C.length;B++){if(C[B].result.toLowerCase()==D.toLowerCase()){A=C[B];break}}}if(typeof y=="function"){y(A)}else{b.trigger("result",A&&[A.data,A.value])}}a.each(h(b.val()),function(A,B){f(B,z,z)})}).bind("flushCache",function(){m.flush()}).bind("setOptions",function(){a.extend(g,arguments[1]);if("data" in arguments[1]){m.populate()}}).bind("unautocomplete",function(){r.unbind();b.unbind();a(l.form).unbind(".autocomplete")});function d(){var z=r.selected();if(!z){return false}var y=z.result;p=y;if(g.multiple){var A=h(b.val());if(A.length>1){y=A.slice(0,A.length-1).join(g.multipleSeparator)+g.multipleSeparator+y}y+=g.multipleSeparator}b.val(y);v();b.trigger("result",[z.data,z.value]);return true}function t(A,z){if(u==c.DEL){r.hide();return}var y=b.val();if(!z&&y==p){return}p=y;y=i(y);if(y.length>=g.minChars){b.addClass(g.loadingClass);if(!g.matchCase){y=y.toLowerCase()}f(y,k,v)}else{n();r.hide()}}function h(z){if(!z){return[""]}var A=z.split(g.multipleSeparator);var y=[];a.each(A,function(B,C){if(a.trim(C)){y[B]=a.trim(C)}});return y}function i(y){if(!g.multiple){return y}var z=h(y);return z[z.length-1]}function q(y,z){if(g.autoFill&&(i(b.val()).toLowerCase()==y.toLowerCase())&&u!=c.BACKSPACE){b.val(b.val()+z.substring(i(p).length));a.Autocompleter.Selection(l,p.length,p.length+z.length)}}function s(){clearTimeout(j);j=setTimeout(v,200)}function v(){var y=r.visible();r.hide();clearTimeout(j);n();if(g.mustMatch){b.search(function(z){if(!z){if(g.multiple){var A=h(b.val()).slice(0,-1);b.val(A.join(g.multipleSeparator)+(A.length?g.multipleSeparator:""))}else{b.val("")}}})}if(y){a.Autocompleter.Selection(l,l.value.length,l.value.length)}}function k(z,y){if(y&&y.length&&e){n();r.display(y,z);q(z,y[0].value);r.show()}else{v()}}function f(z,B,y){if(!g.matchCase){z=z.toLowerCase()}var A=m.load(z);if(A&&A.length){B(z,A)}else{if((typeof g.url=="string")&&(g.url.length>0)){var C={timestamp:+new Date()};a.each(g.extraParams,function(D,E){C[D]=typeof E=="function"?E():E});a.ajax({mode:"abort",port:"autocomplete"+l.name,dataType:g.dataType,url:g.url,data:a.extend({q:i(z),limit:g.max},C),success:function(E){var D=g.parse&&g.parse(E)||o(E);m.add(z,D);B(z,D)}})}else{r.emptyList();y(z)}}}function o(B){var y=[];var A=B.split("\n");for(var z=0;z<A.length;z++){var C=a.trim(A[z]);if(C){C=C.split("|");y[y.length]={data:C,value:C[0],result:g.formatResult&&g.formatResult(C,C[0])||C[0]}}}return y}function n(){b.removeClass(g.loadingClass)}};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(b){return b[0]},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(c,b){return c.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:true,scrollHeight:180};a.Autocompleter.Cache=function(c){var f={};var d=0;function h(l,k){if(!c.matchCase){l=l.toLowerCase()}var j=l.indexOf(k);if(j==-1){return false}return j==0||c.matchContains}function g(j,i){if(d>c.cacheLength){b()}if(!f[j]){d++}f[j]=i}function e(){if(!c.data){return false}var k={},j=0;if(!c.url){c.cacheLength=1}k[""]=[];for(var m=0,l=c.data.length;m<l;m++){var p=c.data[m];p=(typeof p=="string")?[p]:p;var o=c.formatMatch(p,m+1,c.data.length);if(o===false){continue}var n=o.charAt(0).toLowerCase();if(!k[n]){k[n]=[]}var q={value:o,data:p,result:c.formatResult&&c.formatResult(p)||o};k[n].push(q);if(j++<c.max){k[""].push(q)}}a.each(k,function(r,s){c.cacheLength++;g(r,s)})}setTimeout(e,25);function b(){f={};d=0}return{flush:b,add:g,populate:e,load:function(n){if(!c.cacheLength||!d){return null}if(!c.url&&c.matchContains){var m=[];for(var j in f){if(j.length>0){var o=f[j];a.each(o,function(p,k){if(h(k.value,n)){m.push(k)}})}}return m}else{if(f[n]){return f[n]}else{if(c.matchSubset){for(var l=n.length-1;l>=c.minChars;l--){var o=f[n.substr(0,l)];if(o){var m=[];a.each(o,function(p,k){if(h(k.value,n)){m[m.length]=k}});return m}}}}}return null}}};a.Autocompleter.Select=function(e,j,l,p){var i={ACTIVE:"ac_over"};var k,f=-1,r,m="",s=true,c,o;function n(){if(!s){return}c=a("<div/>").hide().addClass(e.resultsClass).css("position","absolute").appendTo(document.body);o=a("<ul/>").appendTo(c).mouseover(function(t){if(q(t).nodeName&&q(t).nodeName.toUpperCase()=="LI"){f=a("li",o).removeClass(i.ACTIVE).index(q(t));a(q(t)).addClass(i.ACTIVE)}}).click(function(t){a(q(t)).addClass(i.ACTIVE);l();j.focus();return false}).mousedown(function(){p.mouseDownOnSelect=true}).mouseup(function(){p.mouseDownOnSelect=false});if(e.width>0){c.css("width",e.width)}s=false}function q(u){var t=u.target;while(t&&t.tagName!="LI"){t=t.parentNode}if(!t){return[]}return t}function h(t){k.slice(f,f+1).removeClass(i.ACTIVE);g(t);var v=k.slice(f,f+1).addClass(i.ACTIVE);if(e.scroll){var u=0;k.slice(0,f).each(function(){u+=this.offsetHeight});if((u+v[0].offsetHeight-o.scrollTop())>o[0].clientHeight){o.scrollTop(u+v[0].offsetHeight-o.innerHeight())}else{if(u<o.scrollTop()){o.scrollTop(u)}}}}function g(t){f+=t;if(f<0){f=k.size()-1}else{if(f>=k.size()){f=0}}}function b(t){return e.max&&e.max<t?e.max:t}function d(){o.empty();var u=b(r.length);for(var v=0;v<u;v++){if(!r[v]){continue}var w=e.formatItem(r[v].data,v+1,u,r[v].value,m);if(w===false){continue}var t=a("<li/>").html(e.highlight(w,m)).addClass(v%2==0?"ac_even":"ac_odd").appendTo(o)[0];a.data(t,"ac_data",r[v])}k=o.find("li");if(e.selectFirst){k.slice(0,1).addClass(i.ACTIVE);f=0}if(a.fn.bgiframe){o.bgiframe()}}return{display:function(u,t){n();r=u;m=t;d()},next:function(){h(1)},prev:function(){h(-1)},pageUp:function(){if(f!=0&&f-8<0){h(-f)}else{h(-8)}},pageDown:function(){if(f!=k.size()-1&&f+8>k.size()){h(k.size()-1-f)}else{h(8)}},hide:function(){c&&c.hide();k&&k.removeClass(i.ACTIVE);f=-1},visible:function(){return c&&c.is(":visible")},current:function(){return this.visible()&&(k.filter("."+i.ACTIVE)[0]||e.selectFirst&&k[0])},show:function(){var v=a(j).offset();c.css({width:typeof e.width=="string"||e.width>0?e.width:a(j).width(),top:v.top+j.offsetHeight,left:v.left}).show();if(e.scroll){o.scrollTop(0);o.css({maxHeight:e.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var t=0;k.each(function(){t+=this.offsetHeight});var u=t>e.scrollHeight;o.css("height",u?e.scrollHeight:t);if(!u){k.width(o.width()-parseInt(k.css("padding-left"))-parseInt(k.css("padding-right")))}}}},selected:function(){var t=k&&k.filter("."+i.ACTIVE).removeClass(i.ACTIVE);return t&&t.length&&a.data(t[0],"ac_data")},emptyList:function(){o&&o.empty()},unbind:function(){c&&c.remove()}}};a.Autocompleter.Selection=function(d,e,c){if(d.createTextRange){var b=d.createTextRange();b.collapse(true);b.moveStart("character",e);b.moveEnd("character",c);b.select()}else{if(d.setSelectionRange){d.setSelectionRange(e,c)}else{if(d.selectionStart){d.selectionStart=e;d.selectionEnd=c}}}d.focus()}})(jQuery);var notify=function(){var a=false;return{show:function(b){if(b){$("body").css("margin-top","2.2em");$(".notify span").html(b)}$(".notify").fadeIn("slow");a=true},close:function(b){if(b){$.post(scriptUrl+$.i18n._("messages/")+$.i18n._("markread/"),{formdata:"required"})}$(".notify").fadeOut("fast");$("body").css("margin-top","0");a=false},isVisible:function(){return a}}}(); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/osqa.question.js.svn-base b/forum/skins/light/media/js/.svn/text-base/osqa.question.js.svn-base deleted file mode 100755 index 38347d5b75ee16b5731e754c61dd822e0866362c..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/osqa.question.js.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -$(function () { - $('div#editor_side_bar').hide(); - - $('#editor').focus(function(){ $('div#editor_side_bar').fadeIn('slow') }); - $('#editor').blur(function(){ $('div#editor_side_bar').fadeOut('slow') }); -}); diff --git a/forum/skins/light/media/js/.svn/text-base/se_hilite.js.svn-base b/forum/skins/light/media/js/.svn/text-base/se_hilite.js.svn-base deleted file mode 100755 index 42e99c8e8f74380e8fea68494d1284d0938198d6..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/se_hilite.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -Hilite={elementid:"content",exact:true,max_nodes:1000,onload:true,style_name:"hilite",style_name_suffix:true,debug_referrer:""};Hilite.search_engines=[["google\\.","q"],["search\\.yahoo\\.","p"],["search\\.msn\\.","q"],["search\\.live\\.","query"],["search\\.aol\\.","userQuery"],["ask\\.com","q"],["altavista\\.","q"],["feedster\\.","q"],["search\\.lycos\\.","q"],["alltheweb\\.","q"],["technorati\\.com/search/([^\\?/]+)",1],["dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)",1,true]];Hilite.decodeReferrer=function(d){var g=null;var e=new RegExp("");for(var c=0;c<Hilite.search_engines.length;c++){var f=Hilite.search_engines[c];e.compile("^http://(www\\.)?"+f[0],"i");var b=d.match(e);if(b){var a;if(isNaN(f[1])){a=Hilite.decodeReferrerQS(d,f[1])}else{a=b[f[1]+1]}if(a){a=decodeURIComponent(a);if(f.length>2&&f[2]){a=decodeURIComponent(a)}a=a.replace(/\'|"/g,"");a=a.split(/[\s,\+\.]+/);return a}break}}return null};Hilite.decodeReferrerQS=function(f,d){var b=f.indexOf("?");var c;if(b>=0){var a=new String(f.substring(b+1));b=0;c=0;while((b>=0)&&((c=a.indexOf("=",b))>=0)){var e,g;e=a.substring(b,c);b=a.indexOf("&",c)+1;if(e==d){if(b<=0){return a.substring(c+1)}else{return a.substring(c+1,b-1)}}else{if(b<=0){return null}}}}return null};Hilite.hiliteElement=function(f,e){if(!e||f.childNodes.length==0){return}var c=new Array();for(var b=0;b<e.length;b++){e[b]=e[b].toLowerCase();if(Hilite.exact){c.push("\\b"+e[b]+"\\b")}else{c.push(e[b])}}c=new RegExp(c.join("|"),"i");var a={};for(var b=0;b<e.length;b++){if(Hilite.style_name_suffix){a[e[b]]=Hilite.style_name+(b+1)}else{a[e[b]]=Hilite.style_name}}var d=function(m){var j=c.exec(m.data);if(j){var n=j[0];var i="";var h=m.splitText(j.index);var g=h.splitText(n.length);var l=m.ownerDocument.createElement("SPAN");m.parentNode.replaceChild(l,h);l.className=a[n.toLowerCase()];l.appendChild(h);return l}else{return m}};Hilite.walkElements(f.childNodes[0],1,d)};Hilite.hilite=function(){var a=Hilite.debug_referrer?Hilite.debug_referrer:document.referrer;var b=null;a=Hilite.decodeReferrer(a);if(a&&((Hilite.elementid&&(b=document.getElementById(Hilite.elementid)))||(b=document.body))){Hilite.hiliteElement(b,a)}};Hilite.walkElements=function(d,f,e){var a=/^(script|style|textarea)/i;var c=0;while(d&&f>0){c++;if(c>=Hilite.max_nodes){var b=function(){Hilite.walkElements(d,f,e)};setTimeout(b,50);return}if(d.nodeType==1){if(!a.test(d.tagName)&&d.childNodes.length>0){d=d.childNodes[0];f++;continue}}else{if(d.nodeType==3){d=e(d)}}if(d.nextSibling){d=d.nextSibling}else{while(f>0){d=d.parentNode;f--;if(d.nextSibling){d=d.nextSibling;break}}}}};if(Hilite.onload){if(window.attachEvent){window.attachEvent("onload",Hilite.hilite)}else{if(window.addEventListener){window.addEventListener("load",Hilite.hilite,false)}else{var __onload=window.onload;window.onload=function(){Hilite.hilite();__onload()}}}}; \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/se_hilite_src.js.svn-base b/forum/skins/light/media/js/.svn/text-base/se_hilite_src.js.svn-base deleted file mode 100755 index b604f15639685cdc4f5e1af7c8d16834451d3931..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/se_hilite_src.js.svn-base +++ /dev/null @@ -1,273 +0,0 @@ -/** - * Search Engine Keyword Highlight (http://fucoder.com/code/se-hilite/) - * - * This module can be imported by any HTML page, and it would analyse the - * referrer for search engine keywords, and then highlight those keywords on - * the page, by wrapping them around <span class="hilite">...</span> tags. - * Document can then define styles else where to provide visual feedbacks. - * - * Usage: - * - * In HTML. Add the following line towards the end of the document. - * - * <script type="text/javascript" src="se_hilite.js"></script> - * - * In CSS, define the following style: - * - * .hilite { background-color: #ff0; } - * - * If Hilite.style_name_suffix is true, then define the follow styles: - * - * .hilite1 { background-color: #ff0; } - * .hilite2 { background-color: #f0f; } - * .hilite3 { background-color: #0ff; } - * .hilite4 ... - * - * @author Scott Yang <http://scott.yang.id.au/> - * @version 1.5 - */ - -// Configuration: -Hilite = { - /** - * Element ID to be highlighted. If set, then only content inside this DOM - * element will be highlighted, otherwise everything inside document.body - * will be searched. - */ - elementid: 'content', - - /** - * Whether we are matching an exact word. For example, searching for - * "highlight" will only match "highlight" but not "highlighting" if exact - * is set to true. - */ - exact: true, - - /** - * Maximum number of DOM nodes to test, before handing the control back to - * the GUI thread. This prevents locking up the UI when parsing and - * replacing inside a large document. - */ - max_nodes: 1000, - - /** - * Whether to automatically hilite a section of the HTML document, by - * binding the "Hilite.hilite()" to window.onload() event. If this - * attribute is set to false, you can still manually trigger the hilite by - * calling Hilite.hilite() in Javascript after document has been fully - * loaded. - */ - onload: true, - - /** - * Name of the style to be used. Default to 'hilite'. - */ - style_name: 'hilite', - - /** - * Whether to use different style names for different search keywords by - * appending a number starting from 1, i.e. hilite1, hilite2, etc. - */ - style_name_suffix: true, - - /** - * Set it to override the document.referrer string. Used for debugging - * only. - */ - debug_referrer: '' -}; - -Hilite.search_engines = [ - ['google\\.', 'q'], // Google - ['search\\.yahoo\\.', 'p'], // Yahoo - ['search\\.msn\\.', 'q'], // MSN - ['search\\.live\\.', 'query'], // MSN Live - ['search\\.aol\\.', 'userQuery'], // AOL - ['ask\\.com', 'q'], // Ask.com - ['altavista\\.', 'q'], // AltaVista - ['feedster\\.', 'q'], // Feedster - ['search\\.lycos\\.', 'q'], // Lycos - ['alltheweb\\.', 'q'], // AllTheWeb - ['technorati\\.com/search/([^\\?/]+)', 1], // Technorati - ['dogpile\\.com/info\\.dogpl/search/web/([^\\?/]+)', 1, true] // DogPile -]; - -/** - * Decode the referrer string and return a list of search keywords. - */ -Hilite.decodeReferrer = function(referrer) { - var query = null; - var regex = new RegExp(''); - - for (var i = 0; i < Hilite.search_engines.length; i ++) { - var se = Hilite.search_engines[i]; - regex.compile('^http://(www\\.)?' + se[0], 'i'); - var match = referrer.match(regex); - if (match) { - var result; - if (isNaN(se[1])) { - result = Hilite.decodeReferrerQS(referrer, se[1]); - } else { - result = match[se[1] + 1]; - } - if (result) { - result = decodeURIComponent(result); - // XXX: DogPile's URI requires decoding twice. - if (se.length > 2 && se[2]) - result = decodeURIComponent(result); - result = result.replace(/\'|"/g, ''); - result = result.split(/[\s,\+\.]+/); - return result; - } - break; - } - } - return null; -}; - -Hilite.decodeReferrerQS = function(referrer, match) { - var idx = referrer.indexOf('?'); - var idx2; - if (idx >= 0) { - var qs = new String(referrer.substring(idx + 1)); - idx = 0; - idx2 = 0; - while ((idx >= 0) && ((idx2 = qs.indexOf('=', idx)) >= 0)) { - var key, val; - key = qs.substring(idx, idx2); - idx = qs.indexOf('&', idx2) + 1; - if (key == match) { - if (idx <= 0) { - return qs.substring(idx2+1); - } else { - return qs.substring(idx2+1, idx - 1); - } - } - else if (idx <=0) { - return null; - } - } - } - return null; -}; - -/** - * Highlight a DOM element with a list of keywords. - */ -Hilite.hiliteElement = function(elm, query) { - if (!query || elm.childNodes.length == 0) - return; - - var qre = new Array(); - for (var i = 0; i < query.length; i ++) { - query[i] = query[i].toLowerCase(); - if (Hilite.exact) - qre.push('\\b'+query[i]+'\\b'); - else - qre.push(query[i]); - } - - qre = new RegExp(qre.join("|"), "i"); - - var stylemapper = {}; - for (var i = 0; i < query.length; i ++) { - if (Hilite.style_name_suffix) - stylemapper[query[i]] = Hilite.style_name+(i+1); - else - stylemapper[query[i]] = Hilite.style_name; - } - - var textproc = function(node) { - var match = qre.exec(node.data); - if (match) { - var val = match[0]; - var k = ''; - var node2 = node.splitText(match.index); - var node3 = node2.splitText(val.length); - var span = node.ownerDocument.createElement('SPAN'); - node.parentNode.replaceChild(span, node2); - span.className = stylemapper[val.toLowerCase()]; - span.appendChild(node2); - return span; - } else { - return node; - } - }; - Hilite.walkElements(elm.childNodes[0], 1, textproc); -}; - -/** - * Highlight a HTML document using keywords extracted from document.referrer. - * This is the main function to be called to perform search engine highlight - * on a document. - * - * Currently it would check for DOM element 'content', element 'container' and - * then document.body in that order, so it only highlights appropriate section - * on WordPress and Movable Type pages. - */ -Hilite.hilite = function() { - // If 'debug_referrer' then we will use that as our referrer string - // instead. - var q = Hilite.debug_referrer ? Hilite.debug_referrer : document.referrer; - var e = null; - q = Hilite.decodeReferrer(q); - if (q && ((Hilite.elementid && - (e = document.getElementById(Hilite.elementid))) || - (e = document.body))) - { - Hilite.hiliteElement(e, q); - } -}; - -Hilite.walkElements = function(node, depth, textproc) { - var skipre = /^(script|style|textarea)/i; - var count = 0; - while (node && depth > 0) { - count ++; - if (count >= Hilite.max_nodes) { - var handler = function() { - Hilite.walkElements(node, depth, textproc); - }; - setTimeout(handler, 50); - return; - } - - if (node.nodeType == 1) { // ELEMENT_NODE - if (!skipre.test(node.tagName) && node.childNodes.length > 0) { - node = node.childNodes[0]; - depth ++; - continue; - } - } else if (node.nodeType == 3) { // TEXT_NODE - node = textproc(node); - } - - if (node.nextSibling) { - node = node.nextSibling; - } else { - while (depth > 0) { - node = node.parentNode; - depth --; - if (node.nextSibling) { - node = node.nextSibling; - break; - } - } - } - } -}; - -// Trigger the highlight using the onload handler. -if (Hilite.onload) { - if (window.attachEvent) { - window.attachEvent('onload', Hilite.hilite); - } else if (window.addEventListener) { - window.addEventListener('load', Hilite.hilite, false); - } else { - var __onload = window.onload; - window.onload = function() { - Hilite.hilite(); - __onload(); - }; - } -} diff --git a/forum/skins/light/media/js/.svn/text-base/ui.core.js.svn-base b/forum/skins/light/media/js/.svn/text-base/ui.core.js.svn-base deleted file mode 100755 index 5493e0aeb443bfd39dfcce0ae6a3087ee631cd7b..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/ui.core.js.svn-base +++ /dev/null @@ -1,519 +0,0 @@ -/* - * jQuery UI 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -;jQuery.ui || (function($) { - -var _remove = $.fn.remove, - isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); - -//Helper functions and ui object -$.ui = { - version: "1.7.2", - - // $.ui.plugin is deprecated. Use the proxy pattern instead. - plugin: { - add: function(module, option, set) { - var proto = $.ui[module].prototype; - for(var i in set) { - proto.plugins[i] = proto.plugins[i] || []; - proto.plugins[i].push([option, set[i]]); - } - }, - call: function(instance, name, args) { - var set = instance.plugins[name]; - if(!set || !instance.element[0].parentNode) { return; } - - for (var i = 0; i < set.length; i++) { - if (instance.options[set[i][0]]) { - set[i][1].apply(instance.element, args); - } - } - } - }, - - contains: function(a, b) { - return document.compareDocumentPosition - ? a.compareDocumentPosition(b) & 16 - : a !== b && a.contains(b); - }, - - hasScroll: function(el, a) { - - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ($(el).css('overflow') == 'hidden') { return false; } - - var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop', - has = false; - - if (el[scroll] > 0) { return true; } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[scroll] = 1; - has = (el[scroll] > 0); - el[scroll] = 0; - return has; - }, - - isOverAxis: function(x, reference, size) { - //Determines when x coordinate is over "b" element axis - return (x > reference) && (x < (reference + size)); - }, - - isOver: function(y, x, top, left, height, width) { - //Determines when x, y coordinates is over "b" element - return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width); - }, - - keyCode: { - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38 - } -}; - -// WAI-ARIA normalization -if (isFF2) { - var attr = $.attr, - removeAttr = $.fn.removeAttr, - ariaNS = "http://www.w3.org/2005/07/aaa", - ariaState = /^aria-/, - ariaRole = /^wairole:/; - - $.attr = function(elem, name, value) { - var set = value !== undefined; - - return (name == 'role' - ? (set - ? attr.call(this, elem, name, "wairole:" + value) - : (attr.apply(this, arguments) || "").replace(ariaRole, "")) - : (ariaState.test(name) - ? (set - ? elem.setAttributeNS(ariaNS, - name.replace(ariaState, "aaa:"), value) - : attr.call(this, elem, name.replace(ariaState, "aaa:"))) - : attr.apply(this, arguments))); - }; - - $.fn.removeAttr = function(name) { - return (ariaState.test(name) - ? this.each(function() { - this.removeAttributeNS(ariaNS, name.replace(ariaState, "")); - }) : removeAttr.call(this, name)); - }; -} - -//jQuery plugins -$.fn.extend({ - remove: function() { - // Safari has a native remove event which actually removes DOM elements, - // so we have to use triggerHandler instead of trigger (#3037). - $("*", this).add(this).each(function() { - $(this).triggerHandler("remove"); - }); - return _remove.apply(this, arguments ); - }, - - enableSelection: function() { - return this - .attr('unselectable', 'off') - .css('MozUserSelect', '') - .unbind('selectstart.ui'); - }, - - disableSelection: function() { - return this - .attr('unselectable', 'on') - .css('MozUserSelect', 'none') - .bind('selectstart.ui', function() { return false; }); - }, - - scrollParent: function() { - var scrollParent; - if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } - - return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent; - } -}); - - -//Additional selectors -$.extend($.expr[':'], { - data: function(elem, i, match) { - return !!$.data(elem, match[3]); - }, - - focusable: function(element) { - var nodeName = element.nodeName.toLowerCase(), - tabIndex = $.attr(element, 'tabindex'); - return (/input|select|textarea|button|object/.test(nodeName) - ? !element.disabled - : 'a' == nodeName || 'area' == nodeName - ? element.href || !isNaN(tabIndex) - : !isNaN(tabIndex)) - // the element and all of its ancestors must be visible - // the browser may report that the area is hidden - && !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length; - }, - - tabbable: function(element) { - var tabIndex = $.attr(element, 'tabindex'); - return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable'); - } -}); - - -// $.widget is a factory to create jQuery plugins -// taking some boilerplate code out of the plugin code -function getter(namespace, plugin, method, args) { - function getMethods(type) { - var methods = $[namespace][plugin][type] || []; - return (typeof methods == 'string' ? methods.split(/,?\s+/) : methods); - } - - var methods = getMethods('getter'); - if (args.length == 1 && typeof args[0] == 'string') { - methods = methods.concat(getMethods('getterSetter')); - } - return ($.inArray(method, methods) != -1); -} - -$.widget = function(name, prototype) { - var namespace = name.split(".")[0]; - name = name.split(".")[1]; - - // create plugin method - $.fn[name] = function(options) { - var isMethodCall = (typeof options == 'string'), - args = Array.prototype.slice.call(arguments, 1); - - // prevent calls to internal methods - if (isMethodCall && options.substring(0, 1) == '_') { - return this; - } - - // handle getter methods - if (isMethodCall && getter(namespace, name, options, args)) { - var instance = $.data(this[0], name); - return (instance ? instance[options].apply(instance, args) - : undefined); - } - - // handle initialization and non-getter methods - return this.each(function() { - var instance = $.data(this, name); - - // constructor - (!instance && !isMethodCall && - $.data(this, name, new $[namespace][name](this, options))._init()); - - // method call - (instance && isMethodCall && $.isFunction(instance[options]) && - instance[options].apply(instance, args)); - }); - }; - - // create widget constructor - $[namespace] = $[namespace] || {}; - $[namespace][name] = function(element, options) { - var self = this; - - this.namespace = namespace; - this.widgetName = name; - this.widgetEventPrefix = $[namespace][name].eventPrefix || name; - this.widgetBaseClass = namespace + '-' + name; - - this.options = $.extend({}, - $.widget.defaults, - $[namespace][name].defaults, - $.metadata && $.metadata.get(element)[name], - options); - - this.element = $(element) - .bind('setData.' + name, function(event, key, value) { - if (event.target == element) { - return self._setData(key, value); - } - }) - .bind('getData.' + name, function(event, key) { - if (event.target == element) { - return self._getData(key); - } - }) - .bind('remove', function() { - return self.destroy(); - }); - }; - - // add widget prototype - $[namespace][name].prototype = $.extend({}, $.widget.prototype, prototype); - - // TODO: merge getter and getterSetter properties from widget prototype - // and plugin prototype - $[namespace][name].getterSetter = 'option'; -}; - -$.widget.prototype = { - _init: function() {}, - destroy: function() { - this.element.removeData(this.widgetName) - .removeClass(this.widgetBaseClass + '-disabled' + ' ' + this.namespace + '-state-disabled') - .removeAttr('aria-disabled'); - }, - - option: function(key, value) { - var options = key, - self = this; - - if (typeof key == "string") { - if (value === undefined) { - return this._getData(key); - } - options = {}; - options[key] = value; - } - - $.each(options, function(key, value) { - self._setData(key, value); - }); - }, - _getData: function(key) { - return this.options[key]; - }, - _setData: function(key, value) { - this.options[key] = value; - - if (key == 'disabled') { - this.element - [value ? 'addClass' : 'removeClass']( - this.widgetBaseClass + '-disabled' + ' ' + - this.namespace + '-state-disabled') - .attr("aria-disabled", value); - } - }, - - enable: function() { - this._setData('disabled', false); - }, - disable: function() { - this._setData('disabled', true); - }, - - _trigger: function(type, event, data) { - var callback = this.options[type], - eventName = (type == this.widgetEventPrefix - ? type : this.widgetEventPrefix + type); - - event = $.Event(event); - event.type = eventName; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (event.originalEvent) { - for (var i = $.event.props.length, prop; i;) { - prop = $.event.props[--i]; - event[prop] = event.originalEvent[prop]; - } - } - - this.element.trigger(event, data); - - return !($.isFunction(callback) && callback.call(this.element[0], event, data) === false - || event.isDefaultPrevented()); - } -}; - -$.widget.defaults = { - disabled: false -}; - - -/** Mouse Interaction Plugin **/ - -$.ui.mouse = { - _mouseInit: function() { - var self = this; - - this.element - .bind('mousedown.'+this.widgetName, function(event) { - return self._mouseDown(event); - }) - .bind('click.'+this.widgetName, function(event) { - if(self._preventClickEvent) { - self._preventClickEvent = false; - event.stopImmediatePropagation(); - return false; - } - }); - - // Prevent text selection in IE - if ($.browser.msie) { - this._mouseUnselectable = this.element.attr('unselectable'); - this.element.attr('unselectable', 'on'); - } - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind('.'+this.widgetName); - - // Restore text selection in IE - ($.browser.msie - && this.element.attr('unselectable', this._mouseUnselectable)); - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - // TODO: figure out why we have to use originalEvent - event.originalEvent = event.originalEvent || {}; - if (event.originalEvent.mouseHandled) { return; } - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var self = this, - btnIsLeft = (event.which == 1), - elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - self.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return self._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return self._mouseUp(event); - }; - $(document) - .bind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .bind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - // preventDefault() is used to prevent the selection of text here - - // however, in Safari, this causes select boxes not to be selectable - // anymore, so this fix is needed - ($.browser.safari || event.preventDefault()); - - event.originalEvent.mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.browser.msie && !event.button) { - return this._mouseUp(event); - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - $(document) - .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - if (this._mouseStarted) { - this._mouseStarted = false; - this._preventClickEvent = (event.target == this._mouseDownEvent.target); - this._mouseStop(event); - } - - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(event) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(event) {}, - _mouseDrag: function(event) {}, - _mouseStop: function(event) {}, - _mouseCapture: function(event) { return true; } -}; - -$.ui.mouse.defaults = { - cancel: null, - distance: 1, - delay: 0 -}; - -})(jQuery); diff --git a/forum/skins/light/media/js/.svn/text-base/ui.core.min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/ui.core.min.js.svn-base deleted file mode 100755 index d6bd405197e05eeaea6d1edf8316f65d94f2cdaa..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/ui.core.min.js.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -jQuery.ui||(function(c){var i=c.fn.remove,d=c.browser.mozilla&&(parseFloat(c.browser.version)<1.9);c.ui={version:"1.7.2",plugin:{add:function(k,l,n){var m=c.ui[k].prototype;for(var j in n){m.plugins[j]=m.plugins[j]||[];m.plugins[j].push([l,n[j]])}},call:function(j,l,k){var n=j.plugins[l];if(!n||!j.element[0].parentNode){return}for(var m=0;m<n.length;m++){if(j.options[n[m][0]]){n[m][1].apply(j.element,k)}}}},contains:function(k,j){return document.compareDocumentPosition?k.compareDocumentPosition(j)&16:k!==j&&k.contains(j)},hasScroll:function(m,k){if(c(m).css("overflow")=="hidden"){return false}var j=(k&&k=="left")?"scrollLeft":"scrollTop",l=false;if(m[j]>0){return true}m[j]=1;l=(m[j]>0);m[j]=0;return l},isOverAxis:function(k,j,l){return(k>j)&&(k<(j+l))},isOver:function(o,k,n,m,j,l){return c.ui.isOverAxis(o,n,j)&&c.ui.isOverAxis(k,m,l)},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(d){var f=c.attr,e=c.fn.removeAttr,h="http://www.w3.org/2005/07/aaa",a=/^aria-/,b=/^wairole:/;c.attr=function(k,j,l){var m=l!==undefined;return(j=="role"?(m?f.call(this,k,j,"wairole:"+l):(f.apply(this,arguments)||"").replace(b,"")):(a.test(j)?(m?k.setAttributeNS(h,j.replace(a,"aaa:"),l):f.call(this,k,j.replace(a,"aaa:"))):f.apply(this,arguments)))};c.fn.removeAttr=function(j){return(a.test(j)?this.each(function(){this.removeAttributeNS(h,j.replace(a,""))}):e.call(this,j))}}c.fn.extend({remove:function(){c("*",this).add(this).each(function(){c(this).triggerHandler("remove")});return i.apply(this,arguments)},enableSelection:function(){return this.attr("unselectable","off").css("MozUserSelect","").unbind("selectstart.ui")},disableSelection:function(){return this.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return false})},scrollParent:function(){var j;if((c.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){j=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(c.curCSS(this,"position",1))&&(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}else{j=this.parents().filter(function(){return(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!j.length?c(document):j}});c.extend(c.expr[":"],{data:function(l,k,j){return !!c.data(l,j[3])},focusable:function(k){var l=k.nodeName.toLowerCase(),j=c.attr(k,"tabindex");return(/input|select|textarea|button|object/.test(l)?!k.disabled:"a"==l||"area"==l?k.href||!isNaN(j):!isNaN(j))&&!c(k)["area"==l?"parents":"closest"](":hidden").length},tabbable:function(k){var j=c.attr(k,"tabindex");return(isNaN(j)||j>=0)&&c(k).is(":focusable")}});function g(m,n,o,l){function k(q){var p=c[m][n][q]||[];return(typeof p=="string"?p.split(/,?\s+/):p)}var j=k("getter");if(l.length==1&&typeof l[0]=="string"){j=j.concat(k("getterSetter"))}return(c.inArray(o,j)!=-1)}c.widget=function(k,j){var l=k.split(".")[0];k=k.split(".")[1];c.fn[k]=function(p){var n=(typeof p=="string"),o=Array.prototype.slice.call(arguments,1);if(n&&p.substring(0,1)=="_"){return this}if(n&&g(l,k,p,o)){var m=c.data(this[0],k);return(m?m[p].apply(m,o):undefined)}return this.each(function(){var q=c.data(this,k);(!q&&!n&&c.data(this,k,new c[l][k](this,p))._init());(q&&n&&c.isFunction(q[p])&&q[p].apply(q,o))})};c[l]=c[l]||{};c[l][k]=function(o,n){var m=this;this.namespace=l;this.widgetName=k;this.widgetEventPrefix=c[l][k].eventPrefix||k;this.widgetBaseClass=l+"-"+k;this.options=c.extend({},c.widget.defaults,c[l][k].defaults,c.metadata&&c.metadata.get(o)[k],n);this.element=c(o).bind("setData."+k,function(q,p,r){if(q.target==o){return m._setData(p,r)}}).bind("getData."+k,function(q,p){if(q.target==o){return m._getData(p)}}).bind("remove",function(){return m.destroy()})};c[l][k].prototype=c.extend({},c.widget.prototype,j);c[l][k].getterSetter="option"};c.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").removeAttr("aria-disabled")},option:function(l,m){var k=l,j=this;if(typeof l=="string"){if(m===undefined){return this._getData(l)}k={};k[l]=m}c.each(k,function(n,o){j._setData(n,o)})},_getData:function(j){return this.options[j]},_setData:function(j,k){this.options[j]=k;if(j=="disabled"){this.element[k?"addClass":"removeClass"](this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").attr("aria-disabled",k)}},enable:function(){this._setData("disabled",false)},disable:function(){this._setData("disabled",true)},_trigger:function(l,m,n){var p=this.options[l],j=(l==this.widgetEventPrefix?l:this.widgetEventPrefix+l);m=c.Event(m);m.type=j;if(m.originalEvent){for(var k=c.event.props.length,o;k;){o=c.event.props[--k];m[o]=m.originalEvent[o]}}this.element.trigger(m,n);return !(c.isFunction(p)&&p.call(this.element[0],m,n)===false||m.isDefaultPrevented())}};c.widget.defaults={disabled:false};c.ui.mouse={_mouseInit:function(){var j=this;this.element.bind("mousedown."+this.widgetName,function(k){return j._mouseDown(k)}).bind("click."+this.widgetName,function(k){if(j._preventClickEvent){j._preventClickEvent=false;k.stopImmediatePropagation();return false}});if(c.browser.msie){this._mouseUnselectable=this.element.attr("unselectable");this.element.attr("unselectable","on")}this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);(c.browser.msie&&this.element.attr("unselectable",this._mouseUnselectable))},_mouseDown:function(l){l.originalEvent=l.originalEvent||{};if(l.originalEvent.mouseHandled){return}(this._mouseStarted&&this._mouseUp(l));this._mouseDownEvent=l;var k=this,m=(l.which==1),j=(typeof this.options.cancel=="string"?c(l.target).parents().add(l.target).filter(this.options.cancel).length:false);if(!m||j||!this._mouseCapture(l)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){k.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(l)&&this._mouseDelayMet(l)){this._mouseStarted=(this._mouseStart(l)!==false);if(!this._mouseStarted){l.preventDefault();return true}}this._mouseMoveDelegate=function(n){return k._mouseMove(n)};this._mouseUpDelegate=function(n){return k._mouseUp(n)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);(c.browser.safari||l.preventDefault());l.originalEvent.mouseHandled=true;return true},_mouseMove:function(j){if(c.browser.msie&&!j.button){return this._mouseUp(j)}if(this._mouseStarted){this._mouseDrag(j);return j.preventDefault()}if(this._mouseDistanceMet(j)&&this._mouseDelayMet(j)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,j)!==false);(this._mouseStarted?this._mouseDrag(j):this._mouseUp(j))}return !this._mouseStarted},_mouseUp:function(j){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(j.target==this._mouseDownEvent.target);this._mouseStop(j)}return false},_mouseDistanceMet:function(j){return(Math.max(Math.abs(this._mouseDownEvent.pageX-j.pageX),Math.abs(this._mouseDownEvent.pageY-j.pageY))>=this.options.distance)},_mouseDelayMet:function(j){return this.mouseDelayMet},_mouseStart:function(j){},_mouseDrag:function(j){},_mouseStop:function(j){},_mouseCapture:function(j){return true}};c.ui.mouse.defaults={cancel:null,distance:1,delay:0}})(jQuery); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/ui.datepicker.js.svn-base b/forum/skins/light/media/js/.svn/text-base/ui.datepicker.js.svn-base deleted file mode 100755 index 0ce166efdbb28ce8bc5c5aa6041bc966ba376ad0..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/ui.datepicker.js.svn-base +++ /dev/null @@ -1,1636 +0,0 @@ -/* - * jQuery UI Datepicker 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Datepicker - * - * Depends: - * ui.core.js - */ - -(function($) { // hide the namespace - -$.extend($.ui, { datepicker: { version: "1.7.2" } }); - -var PROP_NAME = 'datepicker'; - -/* Date picker manager. - Use the singleton instance of this class, $.datepicker, to interact with the date picker. - Settings for (groups of) date pickers are maintained in an instance object, - allowing multiple different settings on the same page. */ - -function Datepicker() { - this.debug = false; // Change this to true to start debugging - this._curInst = null; // The current instance in use - this._keyEvent = false; // If the last event was a key event - this._disabledInputs = []; // List of date picker inputs that have been disabled - this._datepickerShowing = false; // True if the popup picker is showing , false if not - this._inDialog = false; // True if showing within a "dialog", false if not - this._mainDivId = 'ui-datepicker-div'; // The ID of the main datepicker division - this._inlineClass = 'ui-datepicker-inline'; // The name of the inline marker class - this._appendClass = 'ui-datepicker-append'; // The name of the append marker class - this._triggerClass = 'ui-datepicker-trigger'; // The name of the trigger marker class - this._dialogClass = 'ui-datepicker-dialog'; // The name of the dialog marker class - this._disableClass = 'ui-datepicker-disabled'; // The name of the disabled covering marker class - this._unselectableClass = 'ui-datepicker-unselectable'; // The name of the unselectable cell marker class - this._currentClass = 'ui-datepicker-current-day'; // The name of the current day marker class - this._dayOverClass = 'ui-datepicker-days-cell-over'; // The name of the day hover marker class - this.regional = []; // Available regional settings, indexed by language code - this.regional[''] = { // Default regional settings - closeText: 'Done', // Display text for close link - prevText: 'Prev', // Display text for previous month link - nextText: 'Next', // Display text for next month link - currentText: 'Today', // Display text for current month link - monthNames: ['January','February','March','April','May','June', - 'July','August','September','October','November','December'], // Names of months for drop-down and formatting - monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], // For formatting - dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], // For formatting - dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], // For formatting - dayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'], // Column headings for days starting at Sunday - dateFormat: 'mm/dd/yy', // See format options on parseDate - firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ... - isRTL: false // True if right-to-left language, false if left-to-right - }; - this._defaults = { // Global defaults for all the date picker instances - showOn: 'focus', // 'focus' for popup on focus, - // 'button' for trigger button, or 'both' for either - showAnim: 'show', // Name of jQuery animation for popup - showOptions: {}, // Options for enhanced animations - defaultDate: null, // Used when field is blank: actual date, - // +/-number for offset from today, null for today - appendText: '', // Display text following the input box, e.g. showing the format - buttonText: '...', // Text for trigger button - buttonImage: '', // URL for trigger button image - buttonImageOnly: false, // True if the image appears alone, false if it appears on a button - hideIfNoPrevNext: false, // True to hide next/previous month links - // if not applicable, false to just disable them - navigationAsDateFormat: false, // True if date formatting applied to prev/today/next links - gotoCurrent: false, // True if today link goes back to current selection instead - changeMonth: false, // True if month can be selected directly, false if only prev/next - changeYear: false, // True if year can be selected directly, false if only prev/next - showMonthAfterYear: false, // True if the year select precedes month, false for month then year - yearRange: '-10:+10', // Range of years to display in drop-down, - // either relative to current year (-nn:+nn) or absolute (nnnn:nnnn) - showOtherMonths: false, // True to show dates in other months, false to leave blank - calculateWeek: this.iso8601Week, // How to calculate the week of the year, - // takes a Date and returns the number of the week for it - shortYearCutoff: '+10', // Short year values < this are in the current century, - // > this are in the previous century, - // string value starting with '+' for current year + value - minDate: null, // The earliest selectable date, or null for no limit - maxDate: null, // The latest selectable date, or null for no limit - duration: 'normal', // Duration of display/closure - beforeShowDay: null, // Function that takes a date and returns an array with - // [0] = true if selectable, false if not, [1] = custom CSS class name(s) or '', - // [2] = cell title (optional), e.g. $.datepicker.noWeekends - beforeShow: null, // Function that takes an input field and - // returns a set of custom settings for the date picker - onSelect: null, // Define a callback function when a date is selected - onChangeMonthYear: null, // Define a callback function when the month or year is changed - onClose: null, // Define a callback function when the datepicker is closed - numberOfMonths: 1, // Number of months to show at a time - showCurrentAtPos: 0, // The position in multipe months at which to show the current month (starting at 0) - stepMonths: 1, // Number of months to step back/forward - stepBigMonths: 12, // Number of months to step back/forward for the big links - altField: '', // Selector for an alternate field to store selected dates into - altFormat: '', // The date format to use for the alternate field - constrainInput: true, // The input is constrained by the current date format - showButtonPanel: false // True to show button panel, false to not show it - }; - $.extend(this._defaults, this.regional['']); - this.dpDiv = $('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>'); -} - -$.extend(Datepicker.prototype, { - /* Class name added to elements to indicate already configured with a date picker. */ - markerClassName: 'hasDatepicker', - - /* Debug logging (if enabled). */ - log: function () { - if (this.debug) - console.log.apply('', arguments); - }, - - /* Override the default settings for all instances of the date picker. - @param settings object - the new settings to use as defaults (anonymous object) - @return the manager object */ - setDefaults: function(settings) { - extendRemove(this._defaults, settings || {}); - return this; - }, - - /* Attach the date picker to a jQuery selection. - @param target element - the target input field or division or span - @param settings object - the new settings to use for this date picker instance (anonymous) */ - _attachDatepicker: function(target, settings) { - // check for settings on the control itself - in namespace 'date:' - var inlineSettings = null; - for (var attrName in this._defaults) { - var attrValue = target.getAttribute('date:' + attrName); - if (attrValue) { - inlineSettings = inlineSettings || {}; - try { - inlineSettings[attrName] = eval(attrValue); - } catch (err) { - inlineSettings[attrName] = attrValue; - } - } - } - var nodeName = target.nodeName.toLowerCase(); - var inline = (nodeName == 'div' || nodeName == 'span'); - if (!target.id) - target.id = 'dp' + (++this.uuid); - var inst = this._newInst($(target), inline); - inst.settings = $.extend({}, settings || {}, inlineSettings || {}); - if (nodeName == 'input') { - this._connectDatepicker(target, inst); - } else if (inline) { - this._inlineDatepicker(target, inst); - } - }, - - /* Create a new instance object. */ - _newInst: function(target, inline) { - var id = target[0].id.replace(/([:\[\]\.])/g, '\\\\$1'); // escape jQuery meta chars - return {id: id, input: target, // associated target - selectedDay: 0, selectedMonth: 0, selectedYear: 0, // current selection - drawMonth: 0, drawYear: 0, // month being drawn - inline: inline, // is datepicker inline or not - dpDiv: (!inline ? this.dpDiv : // presentation div - $('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}; - }, - - /* Attach the date picker to an input field. */ - _connectDatepicker: function(target, inst) { - var input = $(target); - inst.append = $([]); - inst.trigger = $([]); - if (input.hasClass(this.markerClassName)) - return; - var appendText = this._get(inst, 'appendText'); - var isRTL = this._get(inst, 'isRTL'); - if (appendText) { - inst.append = $('<span class="' + this._appendClass + '">' + appendText + '</span>'); - input[isRTL ? 'before' : 'after'](inst.append); - } - var showOn = this._get(inst, 'showOn'); - if (showOn == 'focus' || showOn == 'both') // pop-up date picker when in the marked field - input.focus(this._showDatepicker); - if (showOn == 'button' || showOn == 'both') { // pop-up date picker when button clicked - var buttonText = this._get(inst, 'buttonText'); - var buttonImage = this._get(inst, 'buttonImage'); - inst.trigger = $(this._get(inst, 'buttonImageOnly') ? - $('<img/>').addClass(this._triggerClass). - attr({ src: buttonImage, alt: buttonText, title: buttonText }) : - $('<button type="button"></button>').addClass(this._triggerClass). - html(buttonImage == '' ? buttonText : $('<img/>').attr( - { src:buttonImage, alt:buttonText, title:buttonText }))); - input[isRTL ? 'before' : 'after'](inst.trigger); - inst.trigger.click(function() { - if ($.datepicker._datepickerShowing && $.datepicker._lastInput == target) - $.datepicker._hideDatepicker(); - else - $.datepicker._showDatepicker(target); - return false; - }); - } - input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress). - bind("setData.datepicker", function(event, key, value) { - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key) { - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - }, - - /* Attach an inline date picker to a div. */ - _inlineDatepicker: function(target, inst) { - var divSpan = $(target); - if (divSpan.hasClass(this.markerClassName)) - return; - divSpan.addClass(this.markerClassName).append(inst.dpDiv). - bind("setData.datepicker", function(event, key, value){ - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key){ - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - this._setDate(inst, this._getDefaultDate(inst)); - this._updateDatepicker(inst); - this._updateAlternate(inst); - }, - - /* Pop-up the date picker in a "dialog" box. - @param input element - ignored - @param dateText string - the initial date to display (in the current format) - @param onSelect function - the function(dateText) to call when a date is selected - @param settings object - update the dialog date picker instance's settings (anonymous object) - @param pos int[2] - coordinates for the dialog's position within the screen or - event - with x/y coordinates or - leave empty for default (screen centre) - @return the manager object */ - _dialogDatepicker: function(input, dateText, onSelect, settings, pos) { - var inst = this._dialogInst; // internal instance - if (!inst) { - var id = 'dp' + (++this.uuid); - this._dialogInput = $('<input type="text" id="' + id + - '" size="1" style="position: absolute; top: -100px;"/>'); - this._dialogInput.keydown(this._doKeyDown); - $('body').append(this._dialogInput); - inst = this._dialogInst = this._newInst(this._dialogInput, false); - inst.settings = {}; - $.data(this._dialogInput[0], PROP_NAME, inst); - } - extendRemove(inst.settings, settings || {}); - this._dialogInput.val(dateText); - - this._pos = (pos ? (pos.length ? pos : [pos.pageX, pos.pageY]) : null); - if (!this._pos) { - var browserWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; - var browserHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; - var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft; - var scrollY = document.documentElement.scrollTop || document.body.scrollTop; - this._pos = // should use actual width/height below - [(browserWidth / 2) - 100 + scrollX, (browserHeight / 2) - 150 + scrollY]; - } - - // move input on screen for focus, but hidden behind dialog - this._dialogInput.css('left', this._pos[0] + 'px').css('top', this._pos[1] + 'px'); - inst.settings.onSelect = onSelect; - this._inDialog = true; - this.dpDiv.addClass(this._dialogClass); - this._showDatepicker(this._dialogInput[0]); - if ($.blockUI) - $.blockUI(this.dpDiv); - $.data(this._dialogInput[0], PROP_NAME, inst); - return this; - }, - - /* Detach a datepicker from its control. - @param target element - the target input field or division or span */ - _destroyDatepicker: function(target) { - var $target = $(target); - var inst = $.data(target, PROP_NAME); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - $.removeData(target, PROP_NAME); - if (nodeName == 'input') { - inst.append.remove(); - inst.trigger.remove(); - $target.removeClass(this.markerClassName). - unbind('focus', this._showDatepicker). - unbind('keydown', this._doKeyDown). - unbind('keypress', this._doKeyPress); - } else if (nodeName == 'div' || nodeName == 'span') - $target.removeClass(this.markerClassName).empty(); - }, - - /* Enable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _enableDatepicker: function(target) { - var $target = $(target); - var inst = $.data(target, PROP_NAME); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = false; - inst.trigger.filter('button'). - each(function() { this.disabled = false; }).end(). - filter('img').css({opacity: '1.0', cursor: ''}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().removeClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - }, - - /* Disable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _disableDatepicker: function(target) { - var $target = $(target); - var inst = $.data(target, PROP_NAME); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = true; - inst.trigger.filter('button'). - each(function() { this.disabled = true; }).end(). - filter('img').css({opacity: '0.5', cursor: 'default'}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().addClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - this._disabledInputs[this._disabledInputs.length] = target; - }, - - /* Is the first field in a jQuery collection disabled as a datepicker? - @param target element - the target input field or division or span - @return boolean - true if disabled, false if enabled */ - _isDisabledDatepicker: function(target) { - if (!target) { - return false; - } - for (var i = 0; i < this._disabledInputs.length; i++) { - if (this._disabledInputs[i] == target) - return true; - } - return false; - }, - - /* Retrieve the instance data for the target control. - @param target element - the target input field or division or span - @return object - the associated instance data - @throws error if a jQuery problem getting data */ - _getInst: function(target) { - try { - return $.data(target, PROP_NAME); - } - catch (err) { - throw 'Missing instance data for this datepicker'; - } - }, - - /* Update or retrieve the settings for a date picker attached to an input field or division. - @param target element - the target input field or division or span - @param name object - the new settings to update or - string - the name of the setting to change or retrieve, - when retrieving also 'all' for all instance settings or - 'defaults' for all global defaults - @param value any - the new value for the setting - (omit if above is an object or to retrieve a value) */ - _optionDatepicker: function(target, name, value) { - var inst = this._getInst(target); - if (arguments.length == 2 && typeof name == 'string') { - return (name == 'defaults' ? $.extend({}, $.datepicker._defaults) : - (inst ? (name == 'all' ? $.extend({}, inst.settings) : - this._get(inst, name)) : null)); - } - var settings = name || {}; - if (typeof name == 'string') { - settings = {}; - settings[name] = value; - } - if (inst) { - if (this._curInst == inst) { - this._hideDatepicker(null); - } - var date = this._getDateDatepicker(target); - extendRemove(inst.settings, settings); - this._setDateDatepicker(target, date); - this._updateDatepicker(inst); - } - }, - - // change method deprecated - _changeDatepicker: function(target, name, value) { - this._optionDatepicker(target, name, value); - }, - - /* Redraw the date picker attached to an input field or division. - @param target element - the target input field or division or span */ - _refreshDatepicker: function(target) { - var inst = this._getInst(target); - if (inst) { - this._updateDatepicker(inst); - } - }, - - /* Set the dates for a jQuery selection. - @param target element - the target input field or division or span - @param date Date - the new date - @param endDate Date - the new end date for a range (optional) */ - _setDateDatepicker: function(target, date, endDate) { - var inst = this._getInst(target); - if (inst) { - this._setDate(inst, date, endDate); - this._updateDatepicker(inst); - this._updateAlternate(inst); - } - }, - - /* Get the date(s) for the first entry in a jQuery selection. - @param target element - the target input field or division or span - @return Date - the current date or - Date[2] - the current dates for a range */ - _getDateDatepicker: function(target) { - var inst = this._getInst(target); - if (inst && !inst.inline) - this._setDateFromField(inst); - return (inst ? this._getDate(inst) : null); - }, - - /* Handle keystrokes. */ - _doKeyDown: function(event) { - var inst = $.datepicker._getInst(event.target); - var handled = true; - var isRTL = inst.dpDiv.is('.ui-datepicker-rtl'); - inst._keyEvent = true; - if ($.datepicker._datepickerShowing) - switch (event.keyCode) { - case 9: $.datepicker._hideDatepicker(null, ''); - break; // hide on tab out - case 13: var sel = $('td.' + $.datepicker._dayOverClass + - ', td.' + $.datepicker._currentClass, inst.dpDiv); - if (sel[0]) - $.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]); - else - $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - return false; // don't submit the form - break; // select the value on enter - case 27: $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - break; // hide on escape - case 33: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // previous month/year on page up/+ ctrl - case 34: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // next month/year on page down/+ ctrl - case 35: if (event.ctrlKey || event.metaKey) $.datepicker._clearDate(event.target); - handled = event.ctrlKey || event.metaKey; - break; // clear on ctrl or command +end - case 36: if (event.ctrlKey || event.metaKey) $.datepicker._gotoToday(event.target); - handled = event.ctrlKey || event.metaKey; - break; // current on ctrl or command +home - case 37: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? +1 : -1), 'D'); - handled = event.ctrlKey || event.metaKey; - // -1 day on ctrl or command +left - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +left on Mac - break; - case 38: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, -7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // -1 week on ctrl or command +up - case 39: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? -1 : +1), 'D'); - handled = event.ctrlKey || event.metaKey; - // +1 day on ctrl or command +right - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +right - break; - case 40: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, +7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // +1 week on ctrl or command +down - default: handled = false; - } - else if (event.keyCode == 36 && event.ctrlKey) // display the date picker on ctrl+home - $.datepicker._showDatepicker(this); - else { - handled = false; - } - if (handled) { - event.preventDefault(); - event.stopPropagation(); - } - }, - - /* Filter entered characters - based on date format. */ - _doKeyPress: function(event) { - var inst = $.datepicker._getInst(event.target); - if ($.datepicker._get(inst, 'constrainInput')) { - var chars = $.datepicker._possibleChars($.datepicker._get(inst, 'dateFormat')); - var chr = String.fromCharCode(event.charCode == undefined ? event.keyCode : event.charCode); - return event.ctrlKey || (chr < ' ' || !chars || chars.indexOf(chr) > -1); - } - }, - - /* Pop-up the date picker for a given input field. - @param input element - the input field attached to the date picker or - event - if triggered by focus */ - _showDatepicker: function(input) { - input = input.target || input; - if (input.nodeName.toLowerCase() != 'input') // find from button/image trigger - input = $('input', input.parentNode)[0]; - if ($.datepicker._isDisabledDatepicker(input) || $.datepicker._lastInput == input) // already here - return; - var inst = $.datepicker._getInst(input); - var beforeShow = $.datepicker._get(inst, 'beforeShow'); - extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {})); - $.datepicker._hideDatepicker(null, ''); - $.datepicker._lastInput = input; - $.datepicker._setDateFromField(inst); - if ($.datepicker._inDialog) // hide cursor - input.value = ''; - if (!$.datepicker._pos) { // position below input - $.datepicker._pos = $.datepicker._findPos(input); - $.datepicker._pos[1] += input.offsetHeight; // add the height - } - var isFixed = false; - $(input).parents().each(function() { - isFixed |= $(this).css('position') == 'fixed'; - return !isFixed; - }); - if (isFixed && $.browser.opera) { // correction for Opera when fixed and scrolled - $.datepicker._pos[0] -= document.documentElement.scrollLeft; - $.datepicker._pos[1] -= document.documentElement.scrollTop; - } - var offset = {left: $.datepicker._pos[0], top: $.datepicker._pos[1]}; - $.datepicker._pos = null; - inst.rangeStart = null; - // determine sizing offscreen - inst.dpDiv.css({position: 'absolute', display: 'block', top: '-1000px'}); - $.datepicker._updateDatepicker(inst); - // fix width for dynamic number of date pickers - // and adjust position before showing - offset = $.datepicker._checkOffset(inst, offset, isFixed); - inst.dpDiv.css({position: ($.datepicker._inDialog && $.blockUI ? - 'static' : (isFixed ? 'fixed' : 'absolute')), display: 'none', - left: offset.left + 'px', top: offset.top + 'px'}); - if (!inst.inline) { - var showAnim = $.datepicker._get(inst, 'showAnim') || 'show'; - var duration = $.datepicker._get(inst, 'duration'); - var postProcess = function() { - $.datepicker._datepickerShowing = true; - if ($.browser.msie && parseInt($.browser.version,10) < 7) // fix IE < 7 select problems - $('iframe.ui-datepicker-cover').css({width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}); - }; - if ($.effects && $.effects[showAnim]) - inst.dpDiv.show(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess); - else - inst.dpDiv[showAnim](duration, postProcess); - if (duration == '') - postProcess(); - if (inst.input[0].type != 'hidden') - inst.input[0].focus(); - $.datepicker._curInst = inst; - } - }, - - /* Generate the date picker content. */ - _updateDatepicker: function(inst) { - var dims = {width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}; - var self = this; - inst.dpDiv.empty().append(this._generateHTML(inst)) - .find('iframe.ui-datepicker-cover'). - css({width: dims.width, height: dims.height}) - .end() - .find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a') - .bind('mouseout', function(){ - $(this).removeClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover'); - }) - .bind('mouseover', function(){ - if (!self._isDisabledDatepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) { - $(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover'); - $(this).addClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover'); - } - }) - .end() - .find('.' + this._dayOverClass + ' a') - .trigger('mouseover') - .end(); - var numMonths = this._getNumberOfMonths(inst); - var cols = numMonths[1]; - var width = 17; - if (cols > 1) { - inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em'); - } else { - inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width(''); - } - inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') + - 'Class']('ui-datepicker-multi'); - inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') + - 'Class']('ui-datepicker-rtl'); - if (inst.input && inst.input[0].type != 'hidden' && inst == $.datepicker._curInst) - $(inst.input[0]).focus(); - }, - - /* Check positioning to remain on screen. */ - _checkOffset: function(inst, offset, isFixed) { - var dpWidth = inst.dpDiv.outerWidth(); - var dpHeight = inst.dpDiv.outerHeight(); - var inputWidth = inst.input ? inst.input.outerWidth() : 0; - var inputHeight = inst.input ? inst.input.outerHeight() : 0; - var viewWidth = (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) + $(document).scrollLeft(); - var viewHeight = (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight) + $(document).scrollTop(); - - offset.left -= (this._get(inst, 'isRTL') ? (dpWidth - inputWidth) : 0); - offset.left -= (isFixed && offset.left == inst.input.offset().left) ? $(document).scrollLeft() : 0; - offset.top -= (isFixed && offset.top == (inst.input.offset().top + inputHeight)) ? $(document).scrollTop() : 0; - - // now check if datepicker is showing outside window viewport - move to a better place if so. - offset.left -= (offset.left + dpWidth > viewWidth && viewWidth > dpWidth) ? Math.abs(offset.left + dpWidth - viewWidth) : 0; - offset.top -= (offset.top + dpHeight > viewHeight && viewHeight > dpHeight) ? Math.abs(offset.top + dpHeight + inputHeight*2 - viewHeight) : 0; - - return offset; - }, - - /* Find an object's position on the screen. */ - _findPos: function(obj) { - while (obj && (obj.type == 'hidden' || obj.nodeType != 1)) { - obj = obj.nextSibling; - } - var position = $(obj).offset(); - return [position.left, position.top]; - }, - - /* Hide the date picker from view. - @param input element - the input field attached to the date picker - @param duration string - the duration over which to close the date picker */ - _hideDatepicker: function(input, duration) { - var inst = this._curInst; - if (!inst || (input && inst != $.data(input, PROP_NAME))) - return; - if (inst.stayOpen) - this._selectDate('#' + inst.id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - inst.stayOpen = false; - if (this._datepickerShowing) { - duration = (duration != null ? duration : this._get(inst, 'duration')); - var showAnim = this._get(inst, 'showAnim'); - var postProcess = function() { - $.datepicker._tidyDialog(inst); - }; - if (duration != '' && $.effects && $.effects[showAnim]) - inst.dpDiv.hide(showAnim, $.datepicker._get(inst, 'showOptions'), - duration, postProcess); - else - inst.dpDiv[(duration == '' ? 'hide' : (showAnim == 'slideDown' ? 'slideUp' : - (showAnim == 'fadeIn' ? 'fadeOut' : 'hide')))](duration, postProcess); - if (duration == '') - this._tidyDialog(inst); - var onClose = this._get(inst, 'onClose'); - if (onClose) - onClose.apply((inst.input ? inst.input[0] : null), - [(inst.input ? inst.input.val() : ''), inst]); // trigger custom callback - this._datepickerShowing = false; - this._lastInput = null; - if (this._inDialog) { - this._dialogInput.css({ position: 'absolute', left: '0', top: '-100px' }); - if ($.blockUI) { - $.unblockUI(); - $('body').append(this.dpDiv); - } - } - this._inDialog = false; - } - this._curInst = null; - }, - - /* Tidy up after a dialog display. */ - _tidyDialog: function(inst) { - inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar'); - }, - - /* Close date picker if clicked elsewhere. */ - _checkExternalClick: function(event) { - if (!$.datepicker._curInst) - return; - var $target = $(event.target); - if (($target.parents('#' + $.datepicker._mainDivId).length == 0) && - !$target.hasClass($.datepicker.markerClassName) && - !$target.hasClass($.datepicker._triggerClass) && - $.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI)) - $.datepicker._hideDatepicker(null, ''); - }, - - /* Adjust one of the date sub-fields. */ - _adjustDate: function(id, offset, period) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._isDisabledDatepicker(target[0])) { - return; - } - this._adjustInstDate(inst, offset + - (period == 'M' ? this._get(inst, 'showCurrentAtPos') : 0), // undo positioning - period); - this._updateDatepicker(inst); - }, - - /* Action for current link. */ - _gotoToday: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._get(inst, 'gotoCurrent') && inst.currentDay) { - inst.selectedDay = inst.currentDay; - inst.drawMonth = inst.selectedMonth = inst.currentMonth; - inst.drawYear = inst.selectedYear = inst.currentYear; - } - else { - var date = new Date(); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - } - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Action for selecting a new month/year. */ - _selectMonthYear: function(id, select, period) { - var target = $(id); - var inst = this._getInst(target[0]); - inst._selectingMonthYear = false; - inst['selected' + (period == 'M' ? 'Month' : 'Year')] = - inst['draw' + (period == 'M' ? 'Month' : 'Year')] = - parseInt(select.options[select.selectedIndex].value,10); - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Restore input focus after not changing month/year. */ - _clickMonthYear: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (inst.input && inst._selectingMonthYear && !$.browser.msie) - inst.input[0].focus(); - inst._selectingMonthYear = !inst._selectingMonthYear; - }, - - /* Action for selecting a day. */ - _selectDay: function(id, month, year, td) { - var target = $(id); - if ($(td).hasClass(this._unselectableClass) || this._isDisabledDatepicker(target[0])) { - return; - } - var inst = this._getInst(target[0]); - inst.selectedDay = inst.currentDay = $('a', td).html(); - inst.selectedMonth = inst.currentMonth = month; - inst.selectedYear = inst.currentYear = year; - if (inst.stayOpen) { - inst.endDay = inst.endMonth = inst.endYear = null; - } - this._selectDate(id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - if (inst.stayOpen) { - inst.rangeStart = this._daylightSavingAdjust( - new Date(inst.currentYear, inst.currentMonth, inst.currentDay)); - this._updateDatepicker(inst); - } - }, - - /* Erase the input field and hide the date picker. */ - _clearDate: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - inst.stayOpen = false; - inst.endDay = inst.endMonth = inst.endYear = inst.rangeStart = null; - this._selectDate(target, ''); - }, - - /* Update the input field with the selected date. */ - _selectDate: function(id, dateStr) { - var target = $(id); - var inst = this._getInst(target[0]); - dateStr = (dateStr != null ? dateStr : this._formatDate(inst)); - if (inst.input) - inst.input.val(dateStr); - this._updateAlternate(inst); - var onSelect = this._get(inst, 'onSelect'); - if (onSelect) - onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); // trigger custom callback - else if (inst.input) - inst.input.trigger('change'); // fire the change event - if (inst.inline) - this._updateDatepicker(inst); - else if (!inst.stayOpen) { - this._hideDatepicker(null, this._get(inst, 'duration')); - this._lastInput = inst.input[0]; - if (typeof(inst.input[0]) != 'object') - inst.input[0].focus(); // restore focus - this._lastInput = null; - } - }, - - /* Update any alternate field to synchronise with the main field. */ - _updateAlternate: function(inst) { - var altField = this._get(inst, 'altField'); - if (altField) { // update alternate field too - var altFormat = this._get(inst, 'altFormat') || this._get(inst, 'dateFormat'); - var date = this._getDate(inst); - dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst)); - $(altField).each(function() { $(this).val(dateStr); }); - } - }, - - /* Set as beforeShowDay function to prevent selection of weekends. - @param date Date - the date to customise - @return [boolean, string] - is this date selectable?, what is its CSS class? */ - noWeekends: function(date) { - var day = date.getDay(); - return [(day > 0 && day < 6), '']; - }, - - /* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition. - @param date Date - the date to get the week for - @return number - the number of the week within the year that contains this date */ - iso8601Week: function(date) { - var checkDate = new Date(date.getFullYear(), date.getMonth(), date.getDate()); - var firstMon = new Date(checkDate.getFullYear(), 1 - 1, 4); // First week always contains 4 Jan - var firstDay = firstMon.getDay() || 7; // Day of week: Mon = 1, ..., Sun = 7 - firstMon.setDate(firstMon.getDate() + 1 - firstDay); // Preceding Monday - if (firstDay < 4 && checkDate < firstMon) { // Adjust first three days in year if necessary - checkDate.setDate(checkDate.getDate() - 3); // Generate for previous year - return $.datepicker.iso8601Week(checkDate); - } else if (checkDate > new Date(checkDate.getFullYear(), 12 - 1, 28)) { // Check last three days in year - firstDay = new Date(checkDate.getFullYear() + 1, 1 - 1, 4).getDay() || 7; - if (firstDay > 4 && (checkDate.getDay() || 7) < firstDay - 3) { // Adjust if necessary - return 1; - } - } - return Math.floor(((checkDate - firstMon) / 86400000) / 7) + 1; // Weeks to given date - }, - - /* Parse a string value into a date object. - See formatDate below for the possible formats. - - @param format string - the expected format of the date - @param value string - the date in the above format - @param settings Object - attributes include: - shortYearCutoff number - the cutoff year for determining the century (optional) - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return Date - the extracted date value or null if value is blank */ - parseDate: function (format, value, settings) { - if (format == null || value == null) - throw 'Invalid arguments'; - value = (typeof value == 'object' ? value.toString() : value + ''); - if (value == '') - return null; - var shortYearCutoff = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - var year = -1; - var month = -1; - var day = -1; - var doy = -1; - var literal = false; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Extract a number from the string value - var getNumber = function(match) { - lookAhead(match); - var origSize = (match == '@' ? 14 : (match == 'y' ? 4 : (match == 'o' ? 3 : 2))); - var size = origSize; - var num = 0; - while (size > 0 && iValue < value.length && - value.charAt(iValue) >= '0' && value.charAt(iValue) <= '9') { - num = num * 10 + parseInt(value.charAt(iValue++),10); - size--; - } - if (size == origSize) - throw 'Missing number at position ' + iValue; - return num; - }; - // Extract a name from the string value and convert to an index - var getName = function(match, shortNames, longNames) { - var names = (lookAhead(match) ? longNames : shortNames); - var size = 0; - for (var j = 0; j < names.length; j++) - size = Math.max(size, names[j].length); - var name = ''; - var iInit = iValue; - while (size > 0 && iValue < value.length) { - name += value.charAt(iValue++); - for (var i = 0; i < names.length; i++) - if (name == names[i]) - return i + 1; - size--; - } - throw 'Unknown name at position ' + iInit; - }; - // Confirm that a literal character matches the string value - var checkLiteral = function() { - if (value.charAt(iValue) != format.charAt(iFormat)) - throw 'Unexpected literal at position ' + iValue; - iValue++; - }; - var iValue = 0; - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - checkLiteral(); - else - switch (format.charAt(iFormat)) { - case 'd': - day = getNumber('d'); - break; - case 'D': - getName('D', dayNamesShort, dayNames); - break; - case 'o': - doy = getNumber('o'); - break; - case 'm': - month = getNumber('m'); - break; - case 'M': - month = getName('M', monthNamesShort, monthNames); - break; - case 'y': - year = getNumber('y'); - break; - case '@': - var date = new Date(getNumber('@')); - year = date.getFullYear(); - month = date.getMonth() + 1; - day = date.getDate(); - break; - case "'": - if (lookAhead("'")) - checkLiteral(); - else - literal = true; - break; - default: - checkLiteral(); - } - } - if (year == -1) - year = new Date().getFullYear(); - else if (year < 100) - year += new Date().getFullYear() - new Date().getFullYear() % 100 + - (year <= shortYearCutoff ? 0 : -100); - if (doy > -1) { - month = 1; - day = doy; - do { - var dim = this._getDaysInMonth(year, month - 1); - if (day <= dim) - break; - month++; - day -= dim; - } while (true); - } - var date = this._daylightSavingAdjust(new Date(year, month - 1, day)); - if (date.getFullYear() != year || date.getMonth() + 1 != month || date.getDate() != day) - throw 'Invalid date'; // E.g. 31/02/* - return date; - }, - - /* Standard date formats. */ - ATOM: 'yy-mm-dd', // RFC 3339 (ISO 8601) - COOKIE: 'D, dd M yy', - ISO_8601: 'yy-mm-dd', - RFC_822: 'D, d M y', - RFC_850: 'DD, dd-M-y', - RFC_1036: 'D, d M y', - RFC_1123: 'D, d M yy', - RFC_2822: 'D, d M yy', - RSS: 'D, d M y', // RFC 822 - TIMESTAMP: '@', - W3C: 'yy-mm-dd', // ISO 8601 - - /* Format a date object into a string value. - The format can be combinations of the following: - d - day of month (no leading zero) - dd - day of month (two digit) - o - day of year (no leading zeros) - oo - day of year (three digit) - D - day name short - DD - day name long - m - month of year (no leading zero) - mm - month of year (two digit) - M - month name short - MM - month name long - y - year (two digit) - yy - year (four digit) - @ - Unix timestamp (ms since 01/01/1970) - '...' - literal text - '' - single quote - - @param format string - the desired format of the date - @param date Date - the date value to format - @param settings Object - attributes include: - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return string - the date in the above format */ - formatDate: function (format, date, settings) { - if (!date) - return ''; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Format a number, with leading zero if necessary - var formatNumber = function(match, value, len) { - var num = '' + value; - if (lookAhead(match)) - while (num.length < len) - num = '0' + num; - return num; - }; - // Format a name, short or long as requested - var formatName = function(match, value, shortNames, longNames) { - return (lookAhead(match) ? longNames[value] : shortNames[value]); - }; - var output = ''; - var literal = false; - if (date) - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - output += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': - output += formatNumber('d', date.getDate(), 2); - break; - case 'D': - output += formatName('D', date.getDay(), dayNamesShort, dayNames); - break; - case 'o': - var doy = date.getDate(); - for (var m = date.getMonth() - 1; m >= 0; m--) - doy += this._getDaysInMonth(date.getFullYear(), m); - output += formatNumber('o', doy, 3); - break; - case 'm': - output += formatNumber('m', date.getMonth() + 1, 2); - break; - case 'M': - output += formatName('M', date.getMonth(), monthNamesShort, monthNames); - break; - case 'y': - output += (lookAhead('y') ? date.getFullYear() : - (date.getYear() % 100 < 10 ? '0' : '') + date.getYear() % 100); - break; - case '@': - output += date.getTime(); - break; - case "'": - if (lookAhead("'")) - output += "'"; - else - literal = true; - break; - default: - output += format.charAt(iFormat); - } - } - return output; - }, - - /* Extract all possible characters from the date format. */ - _possibleChars: function (format) { - var chars = ''; - var literal = false; - for (var iFormat = 0; iFormat < format.length; iFormat++) - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - chars += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': case 'm': case 'y': case '@': - chars += '0123456789'; - break; - case 'D': case 'M': - return null; // Accept anything - case "'": - if (lookAhead("'")) - chars += "'"; - else - literal = true; - break; - default: - chars += format.charAt(iFormat); - } - return chars; - }, - - /* Get a setting value, defaulting if necessary. */ - _get: function(inst, name) { - return inst.settings[name] !== undefined ? - inst.settings[name] : this._defaults[name]; - }, - - /* Parse existing date and initialise date picker. */ - _setDateFromField: function(inst) { - var dateFormat = this._get(inst, 'dateFormat'); - var dates = inst.input ? inst.input.val() : null; - inst.endDay = inst.endMonth = inst.endYear = null; - var date = defaultDate = this._getDefaultDate(inst); - var settings = this._getFormatConfig(inst); - try { - date = this.parseDate(dateFormat, dates, settings) || defaultDate; - } catch (event) { - this.log(event); - date = defaultDate; - } - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - inst.currentDay = (dates ? date.getDate() : 0); - inst.currentMonth = (dates ? date.getMonth() : 0); - inst.currentYear = (dates ? date.getFullYear() : 0); - this._adjustInstDate(inst); - }, - - /* Retrieve the default date shown on opening. */ - _getDefaultDate: function(inst) { - var date = this._determineDate(this._get(inst, 'defaultDate'), new Date()); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - return date; - }, - - /* A date may be specified as an exact value or a relative one. */ - _determineDate: function(date, defaultDate) { - var offsetNumeric = function(offset) { - var date = new Date(); - date.setDate(date.getDate() + offset); - return date; - }; - var offsetString = function(offset, getDaysInMonth) { - var date = new Date(); - var year = date.getFullYear(); - var month = date.getMonth(); - var day = date.getDate(); - var pattern = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g; - var matches = pattern.exec(offset); - while (matches) { - switch (matches[2] || 'd') { - case 'd' : case 'D' : - day += parseInt(matches[1],10); break; - case 'w' : case 'W' : - day += parseInt(matches[1],10) * 7; break; - case 'm' : case 'M' : - month += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - case 'y': case 'Y' : - year += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - } - matches = pattern.exec(offset); - } - return new Date(year, month, day); - }; - date = (date == null ? defaultDate : - (typeof date == 'string' ? offsetString(date, this._getDaysInMonth) : - (typeof date == 'number' ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : date))); - date = (date && date.toString() == 'Invalid Date' ? defaultDate : date); - if (date) { - date.setHours(0); - date.setMinutes(0); - date.setSeconds(0); - date.setMilliseconds(0); - } - return this._daylightSavingAdjust(date); - }, - - /* Handle switch to/from daylight saving. - Hours may be non-zero on daylight saving cut-over: - > 12 when midnight changeover, but then cannot generate - midnight datetime, so jump to 1AM, otherwise reset. - @param date (Date) the date to check - @return (Date) the corrected date */ - _daylightSavingAdjust: function(date) { - if (!date) return null; - date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0); - return date; - }, - - /* Set the date(s) directly. */ - _setDate: function(inst, date, endDate) { - var clear = !(date); - var origMonth = inst.selectedMonth; - var origYear = inst.selectedYear; - date = this._determineDate(date, new Date()); - inst.selectedDay = inst.currentDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = inst.currentMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = inst.currentYear = date.getFullYear(); - if (origMonth != inst.selectedMonth || origYear != inst.selectedYear) - this._notifyChange(inst); - this._adjustInstDate(inst); - if (inst.input) { - inst.input.val(clear ? '' : this._formatDate(inst)); - } - }, - - /* Retrieve the date(s) directly. */ - _getDate: function(inst) { - var startDate = (!inst.currentYear || (inst.input && inst.input.val() == '') ? null : - this._daylightSavingAdjust(new Date( - inst.currentYear, inst.currentMonth, inst.currentDay))); - return startDate; - }, - - /* Generate the HTML for the current state of the date picker. */ - _generateHTML: function(inst) { - var today = new Date(); - today = this._daylightSavingAdjust( - new Date(today.getFullYear(), today.getMonth(), today.getDate())); // clear time - var isRTL = this._get(inst, 'isRTL'); - var showButtonPanel = this._get(inst, 'showButtonPanel'); - var hideIfNoPrevNext = this._get(inst, 'hideIfNoPrevNext'); - var navigationAsDateFormat = this._get(inst, 'navigationAsDateFormat'); - var numMonths = this._getNumberOfMonths(inst); - var showCurrentAtPos = this._get(inst, 'showCurrentAtPos'); - var stepMonths = this._get(inst, 'stepMonths'); - var stepBigMonths = this._get(inst, 'stepBigMonths'); - var isMultiMonth = (numMonths[0] != 1 || numMonths[1] != 1); - var currentDate = this._daylightSavingAdjust((!inst.currentDay ? new Date(9999, 9, 9) : - new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - var drawMonth = inst.drawMonth - showCurrentAtPos; - var drawYear = inst.drawYear; - if (drawMonth < 0) { - drawMonth += 12; - drawYear--; - } - if (maxDate) { - var maxDraw = this._daylightSavingAdjust(new Date(maxDate.getFullYear(), - maxDate.getMonth() - numMonths[1] + 1, maxDate.getDate())); - maxDraw = (minDate && maxDraw < minDate ? minDate : maxDraw); - while (this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1)) > maxDraw) { - drawMonth--; - if (drawMonth < 0) { - drawMonth = 11; - drawYear--; - } - } - } - inst.drawMonth = drawMonth; - inst.drawYear = drawYear; - var prevText = this._get(inst, 'prevText'); - prevText = (!navigationAsDateFormat ? prevText : this.formatDate(prevText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)), - this._getFormatConfig(inst))); - var prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ? - '<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#' + inst.id + '\', -' + stepMonths + ', \'M\');"' + - ' title="' + prevText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>' : - (hideIfNoPrevNext ? '' : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+ prevText +'"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>')); - var nextText = this._get(inst, 'nextText'); - nextText = (!navigationAsDateFormat ? nextText : this.formatDate(nextText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)), - this._getFormatConfig(inst))); - var next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ? - '<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#' + inst.id + '\', +' + stepMonths + ', \'M\');"' + - ' title="' + nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>' : - (hideIfNoPrevNext ? '' : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+ nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>')); - var currentText = this._get(inst, 'currentText'); - var gotoDate = (this._get(inst, 'gotoCurrent') && inst.currentDay ? currentDate : today); - currentText = (!navigationAsDateFormat ? currentText : - this.formatDate(currentText, gotoDate, this._getFormatConfig(inst))); - var controls = (!inst.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery.datepicker._hideDatepicker();">' + this._get(inst, 'closeText') + '</button>' : ''); - var buttonPanel = (showButtonPanel) ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (isRTL ? controls : '') + - (this._isInRange(inst, gotoDate) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery.datepicker._gotoToday(\'#' + inst.id + '\');"' + - '>' + currentText + '</button>' : '') + (isRTL ? '' : controls) + '</div>' : ''; - var firstDay = parseInt(this._get(inst, 'firstDay'),10); - firstDay = (isNaN(firstDay) ? 0 : firstDay); - var dayNames = this._get(inst, 'dayNames'); - var dayNamesShort = this._get(inst, 'dayNamesShort'); - var dayNamesMin = this._get(inst, 'dayNamesMin'); - var monthNames = this._get(inst, 'monthNames'); - var monthNamesShort = this._get(inst, 'monthNamesShort'); - var beforeShowDay = this._get(inst, 'beforeShowDay'); - var showOtherMonths = this._get(inst, 'showOtherMonths'); - var calculateWeek = this._get(inst, 'calculateWeek') || this.iso8601Week; - var endDate = inst.endDay ? this._daylightSavingAdjust( - new Date(inst.endYear, inst.endMonth, inst.endDay)) : currentDate; - var defaultDate = this._getDefaultDate(inst); - var html = ''; - for (var row = 0; row < numMonths[0]; row++) { - var group = ''; - for (var col = 0; col < numMonths[1]; col++) { - var selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay)); - var cornerClass = ' ui-corner-all'; - var calender = ''; - if (isMultiMonth) { - calender += '<div class="ui-datepicker-group ui-datepicker-group-'; - switch (col) { - case 0: calender += 'first'; cornerClass = ' ui-corner-' + (isRTL ? 'right' : 'left'); break; - case numMonths[1]-1: calender += 'last'; cornerClass = ' ui-corner-' + (isRTL ? 'left' : 'right'); break; - default: calender += 'middle'; cornerClass = ''; break; - } - calender += '">'; - } - calender += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + cornerClass + '">' + - (/all|left/.test(cornerClass) && row == 0 ? (isRTL ? next : prev) : '') + - (/all|right/.test(cornerClass) && row == 0 ? (isRTL ? prev : next) : '') + - this._generateMonthYearHeader(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, row > 0 || col > 0, monthNames, monthNamesShort) + // draw month headers - '</div><table class="ui-datepicker-calendar"><thead>' + - '<tr>'; - var thead = ''; - for (var dow = 0; dow < 7; dow++) { // days of the week - var day = (dow + firstDay) % 7; - thead += '<th' + ((dow + firstDay + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : '') + '>' + - '<span title="' + dayNames[day] + '">' + dayNamesMin[day] + '</span></th>'; - } - calender += thead + '</tr></thead><tbody>'; - var daysInMonth = this._getDaysInMonth(drawYear, drawMonth); - if (drawYear == inst.selectedYear && drawMonth == inst.selectedMonth) - inst.selectedDay = Math.min(inst.selectedDay, daysInMonth); - var leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7; - var numRows = (isMultiMonth ? 6 : Math.ceil((leadDays + daysInMonth) / 7)); // calculate the number of rows to generate - var printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays)); - for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows - calender += '<tr>'; - var tbody = ''; - for (var dow = 0; dow < 7; dow++) { // create date picker days - var daySettings = (beforeShowDay ? - beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, '']); - var otherMonth = (printDate.getMonth() != drawMonth); - var unselectable = otherMonth || !daySettings[0] || - (minDate && printDate < minDate) || (maxDate && printDate > maxDate); - tbody += '<td class="' + - ((dow + firstDay + 6) % 7 >= 5 ? ' ui-datepicker-week-end' : '') + // highlight weekends - (otherMonth ? ' ui-datepicker-other-month' : '') + // highlight days from other months - ((printDate.getTime() == selectedDate.getTime() && drawMonth == inst.selectedMonth && inst._keyEvent) || // user pressed key - (defaultDate.getTime() == printDate.getTime() && defaultDate.getTime() == selectedDate.getTime()) ? - // or defaultDate is current printedDate and defaultDate is selectedDate - ' ' + this._dayOverClass : '') + // highlight selected day - (unselectable ? ' ' + this._unselectableClass + ' ui-state-disabled': '') + // highlight unselectable days - (otherMonth && !showOtherMonths ? '' : ' ' + daySettings[1] + // highlight custom dates - (printDate.getTime() >= currentDate.getTime() && printDate.getTime() <= endDate.getTime() ? // in current range - ' ' + this._currentClass : '') + // highlight selected day - (printDate.getTime() == today.getTime() ? ' ui-datepicker-today' : '')) + '"' + // highlight today (if different) - ((!otherMonth || showOtherMonths) && daySettings[2] ? ' title="' + daySettings[2] + '"' : '') + // cell title - (unselectable ? '' : ' onclick="DP_jQuery.datepicker._selectDay(\'#' + - inst.id + '\',' + drawMonth + ',' + drawYear + ', this);return false;"') + '>' + // actions - (otherMonth ? (showOtherMonths ? printDate.getDate() : ' ') : // display for other months - (unselectable ? '<span class="ui-state-default">' + printDate.getDate() + '</span>' : '<a class="ui-state-default' + - (printDate.getTime() == today.getTime() ? ' ui-state-highlight' : '') + - (printDate.getTime() >= currentDate.getTime() && printDate.getTime() <= endDate.getTime() ? // in current range - ' ui-state-active' : '') + // highlight selected day - '" href="#">' + printDate.getDate() + '</a>')) + '</td>'; // display for this month - printDate.setDate(printDate.getDate() + 1); - printDate = this._daylightSavingAdjust(printDate); - } - calender += tbody + '</tr>'; - } - drawMonth++; - if (drawMonth > 11) { - drawMonth = 0; - drawYear++; - } - calender += '</tbody></table>' + (isMultiMonth ? '</div>' + - ((numMonths[0] > 0 && col == numMonths[1]-1) ? '<div class="ui-datepicker-row-break"></div>' : '') : ''); - group += calender; - } - html += group; - } - html += buttonPanel + ($.browser.msie && parseInt($.browser.version,10) < 7 && !inst.inline ? - '<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' : ''); - inst._keyEvent = false; - return html; - }, - - /* Generate the month and year header. */ - _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, secondary, monthNames, monthNamesShort) { - minDate = (inst.rangeStart && minDate && selectedDate < minDate ? selectedDate : minDate); - var changeMonth = this._get(inst, 'changeMonth'); - var changeYear = this._get(inst, 'changeYear'); - var showMonthAfterYear = this._get(inst, 'showMonthAfterYear'); - var html = '<div class="ui-datepicker-title">'; - var monthHtml = ''; - // month selection - if (secondary || !changeMonth) - monthHtml += '<span class="ui-datepicker-month">' + monthNames[drawMonth] + '</span> '; - else { - var inMinYear = (minDate && minDate.getFullYear() == drawYear); - var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear); - monthHtml += '<select class="ui-datepicker-month" ' + - 'onchange="DP_jQuery.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'M\');" ' + - 'onclick="DP_jQuery.datepicker._clickMonthYear(\'#' + inst.id + '\');"' + - '>'; - for (var month = 0; month < 12; month++) { - if ((!inMinYear || month >= minDate.getMonth()) && - (!inMaxYear || month <= maxDate.getMonth())) - monthHtml += '<option value="' + month + '"' + - (month == drawMonth ? ' selected="selected"' : '') + - '>' + monthNamesShort[month] + '</option>'; - } - monthHtml += '</select>'; - } - if (!showMonthAfterYear) - html += monthHtml + ((secondary || changeMonth || changeYear) && (!(changeMonth && changeYear)) ? ' ' : ''); - // year selection - if (secondary || !changeYear) - html += '<span class="ui-datepicker-year">' + drawYear + '</span>'; - else { - // determine range of years to display - var years = this._get(inst, 'yearRange').split(':'); - var year = 0; - var endYear = 0; - if (years.length != 2) { - year = drawYear - 10; - endYear = drawYear + 10; - } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') { - year = drawYear + parseInt(years[0], 10); - endYear = drawYear + parseInt(years[1], 10); - } else { - year = parseInt(years[0], 10); - endYear = parseInt(years[1], 10); - } - year = (minDate ? Math.max(year, minDate.getFullYear()) : year); - endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); - html += '<select class="ui-datepicker-year" ' + - 'onchange="DP_jQuery.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' + - 'onclick="DP_jQuery.datepicker._clickMonthYear(\'#' + inst.id + '\');"' + - '>'; - for (; year <= endYear; year++) { - html += '<option value="' + year + '"' + - (year == drawYear ? ' selected="selected"' : '') + - '>' + year + '</option>'; - } - html += '</select>'; - } - if (showMonthAfterYear) - html += (secondary || changeMonth || changeYear ? ' ' : '') + monthHtml; - html += '</div>'; // Close datepicker_header - return html; - }, - - /* Adjust one of the date sub-fields. */ - _adjustInstDate: function(inst, offset, period) { - var year = inst.drawYear + (period == 'Y' ? offset : 0); - var month = inst.drawMonth + (period == 'M' ? offset : 0); - var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + - (period == 'D' ? offset : 0); - var date = this._daylightSavingAdjust(new Date(year, month, day)); - // ensure it is within the bounds set - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - if (period == 'M' || period == 'Y') - this._notifyChange(inst); - }, - - /* Notify change of month/year. */ - _notifyChange: function(inst) { - var onChange = this._get(inst, 'onChangeMonthYear'); - if (onChange) - onChange.apply((inst.input ? inst.input[0] : null), - [inst.selectedYear, inst.selectedMonth + 1, inst]); - }, - - /* Determine the number of months to show. */ - _getNumberOfMonths: function(inst) { - var numMonths = this._get(inst, 'numberOfMonths'); - return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths)); - }, - - /* Determine the current maximum date - ensure no time components are set - may be overridden for a range. */ - _getMinMaxDate: function(inst, minMax, checkRange) { - var date = this._determineDate(this._get(inst, minMax + 'Date'), null); - return (!checkRange || !inst.rangeStart ? date : - (!date || inst.rangeStart > date ? inst.rangeStart : date)); - }, - - /* Find the number of days in a given month. */ - _getDaysInMonth: function(year, month) { - return 32 - new Date(year, month, 32).getDate(); - }, - - /* Find the day of the week of the first of a month. */ - _getFirstDayOfMonth: function(year, month) { - return new Date(year, month, 1).getDay(); - }, - - /* Determines if we should allow a "next/prev" month display change. */ - _canAdjustMonth: function(inst, offset, curYear, curMonth) { - var numMonths = this._getNumberOfMonths(inst); - var date = this._daylightSavingAdjust(new Date( - curYear, curMonth + (offset < 0 ? offset : numMonths[1]), 1)); - if (offset < 0) - date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth())); - return this._isInRange(inst, date); - }, - - /* Is the given date in the accepted range? */ - _isInRange: function(inst, date) { - // during range selection, use minimum of selected date and range start - var newMinDate = (!inst.rangeStart ? null : this._daylightSavingAdjust( - new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay))); - newMinDate = (newMinDate && inst.rangeStart < newMinDate ? inst.rangeStart : newMinDate); - var minDate = newMinDate || this._getMinMaxDate(inst, 'min'); - var maxDate = this._getMinMaxDate(inst, 'max'); - return ((!minDate || date >= minDate) && (!maxDate || date <= maxDate)); - }, - - /* Provide the configuration settings for formatting/parsing. */ - _getFormatConfig: function(inst) { - var shortYearCutoff = this._get(inst, 'shortYearCutoff'); - shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff : - new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10)); - return {shortYearCutoff: shortYearCutoff, - dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'), - monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')}; - }, - - /* Format the given date for display. */ - _formatDate: function(inst, day, month, year) { - if (!day) { - inst.currentDay = inst.selectedDay; - inst.currentMonth = inst.selectedMonth; - inst.currentYear = inst.selectedYear; - } - var date = (day ? (typeof day == 'object' ? day : - this._daylightSavingAdjust(new Date(year, month, day))) : - this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst)); - } -}); - -/* jQuery extend now ignores nulls! */ -function extendRemove(target, props) { - $.extend(target, props); - for (var name in props) - if (props[name] == null || props[name] == undefined) - target[name] = props[name]; - return target; -}; - -/* Determine whether an object is an array. */ -function isArray(a) { - return (a && (($.browser.safari && typeof a == 'object' && a.length) || - (a.constructor && a.constructor.toString().match(/\Array\(\)/)))); -}; - -/* Invoke the datepicker functionality. - @param options string - a command, optionally followed by additional parameters or - Object - settings for attaching new datepicker functionality - @return jQuery object */ -$.fn.datepicker = function(options){ - - /* Initialise the date picker. */ - if (!$.datepicker.initialized) { - $(document).mousedown($.datepicker._checkExternalClick). - find('body').append($.datepicker.dpDiv); - $.datepicker.initialized = true; - } - - var otherArgs = Array.prototype.slice.call(arguments, 1); - if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate')) - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - if (options == 'option' && arguments.length == 2 && typeof arguments[1] == 'string') - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - return this.each(function() { - typeof options == 'string' ? - $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this].concat(otherArgs)) : - $.datepicker._attachDatepicker(this, options); - }); -}; - -$.datepicker = new Datepicker(); // singleton instance -$.datepicker.initialized = false; -$.datepicker.uuid = new Date().getTime(); -$.datepicker.version = "1.7.2"; - -// Workaround for #4055 -// Add another global to avoid noConflict issues with inline event handlers -window.DP_jQuery = $; - -})(jQuery); diff --git a/forum/skins/light/media/js/.svn/text-base/ui.datepicker.min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/ui.datepicker.min.js.svn-base deleted file mode 100755 index 8427ef7d681b8e290855102e14856b19fdd7282a..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/ui.datepicker.min.js.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -/* - * jQuery UI Datepicker 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Datepicker - * - * Depends: - * ui.core.js - */ -(function($){$.extend($.ui,{datepicker:{version:"1.7.2"}});var PROP_NAME="datepicker";function Datepicker(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._datepickerShowing=false;this._inDialog=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass="ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],dateFormat:"mm/dd/yy",firstDay:0,isRTL:false};this._defaults={showOn:"focus",showAnim:"show",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,showMonthAfterYear:false,yearRange:"-10:+10",showOtherMonths:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"normal",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false};$.extend(this._defaults,this.regional[""]);this.dpDiv=$('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>')}$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",log:function(){if(this.debug){console.log.apply("",arguments)}},setDefaults:function(settings){extendRemove(this._defaults,settings||{});return this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase();var inline=(nodeName=="div"||nodeName=="span");if(!target.id){target.id="dp"+(++this.uuid)}var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{});if(nodeName=="input"){this._connectDatepicker(target,inst)}else{if(inline){this._inlineDatepicker(target,inst)}}},_newInst:function(target,inline){var id=target[0].id.replace(/([:\[\]\.])/g,"\\\\$1");return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:$('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}},_connectDatepicker:function(target,inst){var input=$(target);inst.append=$([]);inst.trigger=$([]);if(input.hasClass(this.markerClassName)){return}var appendText=this._get(inst,"appendText");var isRTL=this._get(inst,"isRTL");if(appendText){inst.append=$('<span class="'+this._appendClass+'">'+appendText+"</span>");input[isRTL?"before":"after"](inst.append)}var showOn=this._get(inst,"showOn");if(showOn=="focus"||showOn=="both"){input.focus(this._showDatepicker)}if(showOn=="button"||showOn=="both"){var buttonText=this._get(inst,"buttonText");var buttonImage=this._get(inst,"buttonImage");inst.trigger=$(this._get(inst,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:buttonImage,alt:buttonText,title:buttonText}):$('<button type="button"></button>').addClass(this._triggerClass).html(buttonImage==""?buttonText:$("<img/>").attr({src:buttonImage,alt:buttonText,title:buttonText})));input[isRTL?"before":"after"](inst.trigger);inst.trigger.click(function(){if($.datepicker._datepickerShowing&&$.datepicker._lastInput==target){$.datepicker._hideDatepicker()}else{$.datepicker._showDatepicker(target)}return false})}input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst)},_inlineDatepicker:function(target,inst){var divSpan=$(target);if(divSpan.hasClass(this.markerClassName)){return}divSpan.addClass(this.markerClassName).append(inst.dpDiv).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst);this._setDate(inst,this._getDefaultDate(inst));this._updateDatepicker(inst);this._updateAlternate(inst)},_dialogDatepicker:function(input,dateText,onSelect,settings,pos){var inst=this._dialogInst;if(!inst){var id="dp"+(++this.uuid);this._dialogInput=$('<input type="text" id="'+id+'" size="1" style="position: absolute; top: -100px;"/>');this._dialogInput.keydown(this._doKeyDown);$("body").append(this._dialogInput);inst=this._dialogInst=this._newInst(this._dialogInput,false);inst.settings={};$.data(this._dialogInput[0],PROP_NAME,inst)}extendRemove(inst.settings,settings||{});this._dialogInput.val(dateText);this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);if(!this._pos){var browserWidth=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;var browserHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight;var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY]}this._dialogInput.css("left",this._pos[0]+"px").css("top",this._pos[1]+"px");inst.settings.onSelect=onSelect;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if($.blockUI){$.blockUI(this.dpDiv)}$.data(this._dialogInput[0],PROP_NAME,inst);return this},_destroyDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();$.removeData(target,PROP_NAME);if(nodeName=="input"){inst.append.remove();inst.trigger.remove();$target.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress)}else{if(nodeName=="div"||nodeName=="span"){$target.removeClass(this.markerClassName).empty()}}},_enableDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=false;inst.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().removeClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)})},_disableDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=true;inst.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().addClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)});this._disabledInputs[this._disabledInputs.length]=target},_isDisabledDatepicker:function(target){if(!target){return false}for(var i=0;i<this._disabledInputs.length;i++){if(this._disabledInputs[i]==target){return true}}return false},_getInst:function(target){try{return $.data(target,PROP_NAME)}catch(err){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(target,name,value){var inst=this._getInst(target);if(arguments.length==2&&typeof name=="string"){return(name=="defaults"?$.extend({},$.datepicker._defaults):(inst?(name=="all"?$.extend({},inst.settings):this._get(inst,name)):null))}var settings=name||{};if(typeof name=="string"){settings={};settings[name]=value}if(inst){if(this._curInst==inst){this._hideDatepicker(null)}var date=this._getDateDatepicker(target);extendRemove(inst.settings,settings);this._setDateDatepicker(target,date);this._updateDatepicker(inst)}},_changeDatepicker:function(target,name,value){this._optionDatepicker(target,name,value)},_refreshDatepicker:function(target){var inst=this._getInst(target);if(inst){this._updateDatepicker(inst)}},_setDateDatepicker:function(target,date,endDate){var inst=this._getInst(target);if(inst){this._setDate(inst,date,endDate);this._updateDatepicker(inst);this._updateAlternate(inst)}},_getDateDatepicker:function(target){var inst=this._getInst(target);if(inst&&!inst.inline){this._setDateFromField(inst)}return(inst?this._getDate(inst):null)},_doKeyDown:function(event){var inst=$.datepicker._getInst(event.target);var handled=true;var isRTL=inst.dpDiv.is(".ui-datepicker-rtl");inst._keyEvent=true;if($.datepicker._datepickerShowing){switch(event.keyCode){case 9:$.datepicker._hideDatepicker(null,"");break;case 13:var sel=$("td."+$.datepicker._dayOverClass+", td."+$.datepicker._currentClass,inst.dpDiv);if(sel[0]){$.datepicker._selectDay(event.target,inst.selectedMonth,inst.selectedYear,sel[0])}else{$.datepicker._hideDatepicker(null,$.datepicker._get(inst,"duration"))}return false;break;case 27:$.datepicker._hideDatepicker(null,$.datepicker._get(inst,"duration"));break;case 33:$.datepicker._adjustDate(event.target,(event.ctrlKey?-$.datepicker._get(inst,"stepBigMonths"):-$.datepicker._get(inst,"stepMonths")),"M");break;case 34:$.datepicker._adjustDate(event.target,(event.ctrlKey?+$.datepicker._get(inst,"stepBigMonths"):+$.datepicker._get(inst,"stepMonths")),"M");break;case 35:if(event.ctrlKey||event.metaKey){$.datepicker._clearDate(event.target)}handled=event.ctrlKey||event.metaKey;break;case 36:if(event.ctrlKey||event.metaKey){$.datepicker._gotoToday(event.target)}handled=event.ctrlKey||event.metaKey;break;case 37:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,(isRTL?+1:-1),"D")}handled=event.ctrlKey||event.metaKey;if(event.originalEvent.altKey){$.datepicker._adjustDate(event.target,(event.ctrlKey?-$.datepicker._get(inst,"stepBigMonths"):-$.datepicker._get(inst,"stepMonths")),"M")}break;case 38:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,-7,"D")}handled=event.ctrlKey||event.metaKey;break;case 39:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,(isRTL?-1:+1),"D")}handled=event.ctrlKey||event.metaKey;if(event.originalEvent.altKey){$.datepicker._adjustDate(event.target,(event.ctrlKey?+$.datepicker._get(inst,"stepBigMonths"):+$.datepicker._get(inst,"stepMonths")),"M")}break;case 40:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,+7,"D")}handled=event.ctrlKey||event.metaKey;break;default:handled=false}}else{if(event.keyCode==36&&event.ctrlKey){$.datepicker._showDatepicker(this)}else{handled=false}}if(handled){event.preventDefault();event.stopPropagation()}},_doKeyPress:function(event){var inst=$.datepicker._getInst(event.target);if($.datepicker._get(inst,"constrainInput")){var chars=$.datepicker._possibleChars($.datepicker._get(inst,"dateFormat"));var chr=String.fromCharCode(event.charCode==undefined?event.keyCode:event.charCode);return event.ctrlKey||(chr<" "||!chars||chars.indexOf(chr)>-1)}},_showDatepicker:function(input){input=input.target||input;if(input.nodeName.toLowerCase()!="input"){input=$("input",input.parentNode)[0]}if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input){return}var inst=$.datepicker._getInst(input);var beforeShow=$.datepicker._get(inst,"beforeShow");extendRemove(inst.settings,(beforeShow?beforeShow.apply(input,[input,inst]):{}));$.datepicker._hideDatepicker(null,"");$.datepicker._lastInput=input;$.datepicker._setDateFromField(inst);if($.datepicker._inDialog){input.value=""}if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);$.datepicker._pos[1]+=input.offsetHeight}var isFixed=false;$(input).parents().each(function(){isFixed|=$(this).css("position")=="fixed";return !isFixed});if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;$.datepicker._pos[1]-=document.documentElement.scrollTop}var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null;inst.rangeStart=null;inst.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});$.datepicker._updateDatepicker(inst);offset=$.datepicker._checkOffset(inst,offset,isFixed);inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?"static":(isFixed?"fixed":"absolute")),display:"none",left:offset.left+"px",top:offset.top+"px"});if(!inst.inline){var showAnim=$.datepicker._get(inst,"showAnim")||"show";var duration=$.datepicker._get(inst,"duration");var postProcess=function(){$.datepicker._datepickerShowing=true;if($.browser.msie&&parseInt($.browser.version,10)<7){$("iframe.ui-datepicker-cover").css({width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4})}};if($.effects&&$.effects[showAnim]){inst.dpDiv.show(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[showAnim](duration,postProcess)}if(duration==""){postProcess()}if(inst.input[0].type!="hidden"){inst.input[0].focus()}$.datepicker._curInst=inst}},_updateDatepicker:function(inst){var dims={width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4};var self=this;inst.dpDiv.empty().append(this._generateHTML(inst)).find("iframe.ui-datepicker-cover").css({width:dims.width,height:dims.height}).end().find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout",function(){$(this).removeClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).removeClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).removeClass("ui-datepicker-next-hover")}}).bind("mouseover",function(){if(!self._isDisabledDatepicker(inst.inline?inst.dpDiv.parent()[0]:inst.input[0])){$(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");$(this).addClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).addClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).addClass("ui-datepicker-next-hover")}}}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end();var numMonths=this._getNumberOfMonths(inst);var cols=numMonths[1];var width=17;if(cols>1){inst.dpDiv.addClass("ui-datepicker-multi-"+cols).css("width",(width*cols)+"em")}else{inst.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("")}inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");inst.dpDiv[(this._get(inst,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");if(inst.input&&inst.input[0].type!="hidden"&&inst==$.datepicker._curInst){$(inst.input[0]).focus()}},_checkOffset:function(inst,offset,isFixed){var dpWidth=inst.dpDiv.outerWidth();var dpHeight=inst.dpDiv.outerHeight();var inputWidth=inst.input?inst.input.outerWidth():0;var inputHeight=inst.input?inst.input.outerHeight():0;var viewWidth=(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth)+$(document).scrollLeft();var viewHeight=(window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight)+$(document).scrollTop();offset.left-=(this._get(inst,"isRTL")?(dpWidth-inputWidth):0);offset.left-=(isFixed&&offset.left==inst.input.offset().left)?$(document).scrollLeft():0;offset.top-=(isFixed&&offset.top==(inst.input.offset().top+inputHeight))?$(document).scrollTop():0;offset.left-=(offset.left+dpWidth>viewWidth&&viewWidth>dpWidth)?Math.abs(offset.left+dpWidth-viewWidth):0;offset.top-=(offset.top+dpHeight>viewHeight&&viewHeight>dpHeight)?Math.abs(offset.top+dpHeight+inputHeight*2-viewHeight):0;return offset},_findPos:function(obj){while(obj&&(obj.type=="hidden"||obj.nodeType!=1)){obj=obj.nextSibling}var position=$(obj).offset();return[position.left,position.top]},_hideDatepicker:function(input,duration){var inst=this._curInst;if(!inst||(input&&inst!=$.data(input,PROP_NAME))){return}if(inst.stayOpen){this._selectDate("#"+inst.id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear))}inst.stayOpen=false;if(this._datepickerShowing){duration=(duration!=null?duration:this._get(inst,"duration"));var showAnim=this._get(inst,"showAnim");var postProcess=function(){$.datepicker._tidyDialog(inst)};if(duration!=""&&$.effects&&$.effects[showAnim]){inst.dpDiv.hide(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[(duration==""?"hide":(showAnim=="slideDown"?"slideUp":(showAnim=="fadeIn"?"fadeOut":"hide")))](duration,postProcess)}if(duration==""){this._tidyDialog(inst)}var onClose=this._get(inst,"onClose");if(onClose){onClose.apply((inst.input?inst.input[0]:null),[(inst.input?inst.input.val():""),inst])}this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if($.blockUI){$.unblockUI();$("body").append(this.dpDiv)}}this._inDialog=false}this._curInst=null},_tidyDialog:function(inst){inst.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(event){if(!$.datepicker._curInst){return}var $target=$(event.target);if(($target.parents("#"+$.datepicker._mainDivId).length==0)&&!$target.hasClass($.datepicker.markerClassName)&&!$target.hasClass($.datepicker._triggerClass)&&$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI)){$.datepicker._hideDatepicker(null,"")}},_adjustDate:function(id,offset,period){var target=$(id);var inst=this._getInst(target[0]);if(this._isDisabledDatepicker(target[0])){return}this._adjustInstDate(inst,offset+(period=="M"?this._get(inst,"showCurrentAtPos"):0),period);this._updateDatepicker(inst)},_gotoToday:function(id){var target=$(id);var inst=this._getInst(target[0]);if(this._get(inst,"gotoCurrent")&&inst.currentDay){inst.selectedDay=inst.currentDay;inst.drawMonth=inst.selectedMonth=inst.currentMonth;inst.drawYear=inst.selectedYear=inst.currentYear}else{var date=new Date();inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear()}this._notifyChange(inst);this._adjustDate(target)},_selectMonthYear:function(id,select,period){var target=$(id);var inst=this._getInst(target[0]);inst._selectingMonthYear=false;inst["selected"+(period=="M"?"Month":"Year")]=inst["draw"+(period=="M"?"Month":"Year")]=parseInt(select.options[select.selectedIndex].value,10);this._notifyChange(inst);this._adjustDate(target)},_clickMonthYear:function(id){var target=$(id);var inst=this._getInst(target[0]);if(inst.input&&inst._selectingMonthYear&&!$.browser.msie){inst.input[0].focus()}inst._selectingMonthYear=!inst._selectingMonthYear},_selectDay:function(id,month,year,td){var target=$(id);if($(td).hasClass(this._unselectableClass)||this._isDisabledDatepicker(target[0])){return}var inst=this._getInst(target[0]);inst.selectedDay=inst.currentDay=$("a",td).html();inst.selectedMonth=inst.currentMonth=month;inst.selectedYear=inst.currentYear=year;if(inst.stayOpen){inst.endDay=inst.endMonth=inst.endYear=null}this._selectDate(id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear));if(inst.stayOpen){inst.rangeStart=this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay));this._updateDatepicker(inst)}},_clearDate:function(id){var target=$(id);var inst=this._getInst(target[0]);inst.stayOpen=false;inst.endDay=inst.endMonth=inst.endYear=inst.rangeStart=null;this._selectDate(target,"")},_selectDate:function(id,dateStr){var target=$(id);var inst=this._getInst(target[0]);dateStr=(dateStr!=null?dateStr:this._formatDate(inst));if(inst.input){inst.input.val(dateStr)}this._updateAlternate(inst);var onSelect=this._get(inst,"onSelect");if(onSelect){onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst])}else{if(inst.input){inst.input.trigger("change")}}if(inst.inline){this._updateDatepicker(inst)}else{if(!inst.stayOpen){this._hideDatepicker(null,this._get(inst,"duration"));this._lastInput=inst.input[0];if(typeof(inst.input[0])!="object"){inst.input[0].focus()}this._lastInput=null}}},_updateAlternate:function(inst){var altField=this._get(inst,"altField");if(altField){var altFormat=this._get(inst,"altFormat")||this._get(inst,"dateFormat");var date=this._getDate(inst);dateStr=this.formatDate(altFormat,date,this._getFormatConfig(inst));$(altField).each(function(){$(this).val(dateStr)})}},noWeekends:function(date){var day=date.getDay();return[(day>0&&day<6),""]},iso8601Week:function(date){var checkDate=new Date(date.getFullYear(),date.getMonth(),date.getDate());var firstMon=new Date(checkDate.getFullYear(),1-1,4);var firstDay=firstMon.getDay()||7;firstMon.setDate(firstMon.getDate()+1-firstDay);if(firstDay<4&&checkDate<firstMon){checkDate.setDate(checkDate.getDate()-3);return $.datepicker.iso8601Week(checkDate)}else{if(checkDate>new Date(checkDate.getFullYear(),12-1,28)){firstDay=new Date(checkDate.getFullYear()+1,1-1,4).getDay()||7;if(firstDay>4&&(checkDate.getDay()||7)<firstDay-3){return 1}}}return Math.floor(((checkDate-firstMon)/86400000)/7)+1},parseDate:function(format,value,settings){if(format==null||value==null){throw"Invalid arguments"}value=(typeof value=="object"?value.toString():value+"");if(value==""){return null}var shortYearCutoff=(settings?settings.shortYearCutoff:null)||this._defaults.shortYearCutoff;var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var year=-1;var month=-1;var day=-1;var doy=-1;var literal=false;var lookAhead=function(match){var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);if(matches){iFormat++}return matches};var getNumber=function(match){lookAhead(match);var origSize=(match=="@"?14:(match=="y"?4:(match=="o"?3:2)));var size=origSize;var num=0;while(size>0&&iValue<value.length&&value.charAt(iValue)>="0"&&value.charAt(iValue)<="9"){num=num*10+parseInt(value.charAt(iValue++),10);size--}if(size==origSize){throw"Missing number at position "+iValue}return num};var getName=function(match,shortNames,longNames){var names=(lookAhead(match)?longNames:shortNames);var size=0;for(var j=0;j<names.length;j++){size=Math.max(size,names[j].length)}var name="";var iInit=iValue;while(size>0&&iValue<value.length){name+=value.charAt(iValue++);for(var i=0;i<names.length;i++){if(name==names[i]){return i+1}}size--}throw"Unknown name at position "+iInit};var checkLiteral=function(){if(value.charAt(iValue)!=format.charAt(iFormat)){throw"Unexpected literal at position "+iValue}iValue++};var iValue=0;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{checkLiteral()}}else{switch(format.charAt(iFormat)){case"d":day=getNumber("d");break;case"D":getName("D",dayNamesShort,dayNames);break;case"o":doy=getNumber("o");break;case"m":month=getNumber("m");break;case"M":month=getName("M",monthNamesShort,monthNames);break;case"y":year=getNumber("y");break;case"@":var date=new Date(getNumber("@"));year=date.getFullYear();month=date.getMonth()+1;day=date.getDate();break;case"'":if(lookAhead("'")){checkLiteral()}else{literal=true}break;default:checkLiteral()}}}if(year==-1){year=new Date().getFullYear()}else{if(year<100){year+=new Date().getFullYear()-new Date().getFullYear()%100+(year<=shortYearCutoff?0:-100)}}if(doy>-1){month=1;day=doy;do{var dim=this._getDaysInMonth(year,month-1);if(day<=dim){break}month++;day-=dim}while(true)}var date=this._daylightSavingAdjust(new Date(year,month-1,day));if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day){throw"Invalid date"}return date},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TIMESTAMP:"@",W3C:"yy-mm-dd",formatDate:function(format,date,settings){if(!date){return""}var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var lookAhead=function(match){var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);if(matches){iFormat++}return matches};var formatNumber=function(match,value,len){var num=""+value;if(lookAhead(match)){while(num.length<len){num="0"+num}}return num};var formatName=function(match,value,shortNames,longNames){return(lookAhead(match)?longNames[value]:shortNames[value])};var output="";var literal=false;if(date){for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{output+=format.charAt(iFormat)}}else{switch(format.charAt(iFormat)){case"d":output+=formatNumber("d",date.getDate(),2);break;case"D":output+=formatName("D",date.getDay(),dayNamesShort,dayNames);break;case"o":var doy=date.getDate();for(var m=date.getMonth()-1;m>=0;m--){doy+=this._getDaysInMonth(date.getFullYear(),m)}output+=formatNumber("o",doy,3);break;case"m":output+=formatNumber("m",date.getMonth()+1,2);break;case"M":output+=formatName("M",date.getMonth(),monthNamesShort,monthNames);break;case"y":output+=(lookAhead("y")?date.getFullYear():(date.getYear()%100<10?"0":"")+date.getYear()%100);break;case"@":output+=date.getTime();break;case"'":if(lookAhead("'")){output+="'"}else{literal=true}break;default:output+=format.charAt(iFormat)}}}}return output},_possibleChars:function(format){var chars="";var literal=false;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{chars+=format.charAt(iFormat)}}else{switch(format.charAt(iFormat)){case"d":case"m":case"y":case"@":chars+="0123456789";break;case"D":case"M":return null;case"'":if(lookAhead("'")){chars+="'"}else{literal=true}break;default:chars+=format.charAt(iFormat)}}}return chars},_get:function(inst,name){return inst.settings[name]!==undefined?inst.settings[name]:this._defaults[name]},_setDateFromField:function(inst){var dateFormat=this._get(inst,"dateFormat");var dates=inst.input?inst.input.val():null;inst.endDay=inst.endMonth=inst.endYear=null;var date=defaultDate=this._getDefaultDate(inst);var settings=this._getFormatConfig(inst);try{date=this.parseDate(dateFormat,dates,settings)||defaultDate}catch(event){this.log(event);date=defaultDate}inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();inst.currentDay=(dates?date.getDate():0);inst.currentMonth=(dates?date.getMonth():0);inst.currentYear=(dates?date.getFullYear():0);this._adjustInstDate(inst)},_getDefaultDate:function(inst){var date=this._determineDate(this._get(inst,"defaultDate"),new Date());var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&date<minDate?minDate:date);date=(maxDate&&date>maxDate?maxDate:date);return date},_determineDate:function(date,defaultDate){var offsetNumeric=function(offset){var date=new Date();date.setDate(date.getDate()+offset);return date};var offsetString=function(offset,getDaysInMonth){var date=new Date();var year=date.getFullYear();var month=date.getMonth();var day=date.getDate();var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;var matches=pattern.exec(offset);while(matches){switch(matches[2]||"d"){case"d":case"D":day+=parseInt(matches[1],10);break;case"w":case"W":day+=parseInt(matches[1],10)*7;break;case"m":case"M":month+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break;case"y":case"Y":year+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break}matches=pattern.exec(offset)}return new Date(year,month,day)};date=(date==null?defaultDate:(typeof date=="string"?offsetString(date,this._getDaysInMonth):(typeof date=="number"?(isNaN(date)?defaultDate:offsetNumeric(date)):date)));date=(date&&date.toString()=="Invalid Date"?defaultDate:date);if(date){date.setHours(0);date.setMinutes(0);date.setSeconds(0);date.setMilliseconds(0)}return this._daylightSavingAdjust(date)},_daylightSavingAdjust:function(date){if(!date){return null}date.setHours(date.getHours()>12?date.getHours()+2:0);return date},_setDate:function(inst,date,endDate){var clear=!(date);var origMonth=inst.selectedMonth;var origYear=inst.selectedYear;date=this._determineDate(date,new Date());inst.selectedDay=inst.currentDay=date.getDate();inst.drawMonth=inst.selectedMonth=inst.currentMonth=date.getMonth();inst.drawYear=inst.selectedYear=inst.currentYear=date.getFullYear();if(origMonth!=inst.selectedMonth||origYear!=inst.selectedYear){this._notifyChange(inst)}this._adjustInstDate(inst);if(inst.input){inst.input.val(clear?"":this._formatDate(inst))}},_getDate:function(inst){var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=="")?null:this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return startDate},_generateHTML:function(inst){var today=new Date();today=this._daylightSavingAdjust(new Date(today.getFullYear(),today.getMonth(),today.getDate()));var isRTL=this._get(inst,"isRTL");var showButtonPanel=this._get(inst,"showButtonPanel");var hideIfNoPrevNext=this._get(inst,"hideIfNoPrevNext");var navigationAsDateFormat=this._get(inst,"navigationAsDateFormat");var numMonths=this._getNumberOfMonths(inst);var showCurrentAtPos=this._get(inst,"showCurrentAtPos");var stepMonths=this._get(inst,"stepMonths");var stepBigMonths=this._get(inst,"stepBigMonths");var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);var currentDate=this._daylightSavingAdjust((!inst.currentDay?new Date(9999,9,9):new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");var drawMonth=inst.drawMonth-showCurrentAtPos;var drawYear=inst.drawYear;if(drawMonth<0){drawMonth+=12;drawYear--}if(maxDate){var maxDraw=this._daylightSavingAdjust(new Date(maxDate.getFullYear(),maxDate.getMonth()-numMonths[1]+1,maxDate.getDate()));maxDraw=(minDate&&maxDraw<minDate?minDate:maxDraw);while(this._daylightSavingAdjust(new Date(drawYear,drawMonth,1))>maxDraw){drawMonth--;if(drawMonth<0){drawMonth=11;drawYear--}}}inst.drawMonth=drawMonth;inst.drawYear=drawYear;var prevText=this._get(inst,"prevText");prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,this._daylightSavingAdjust(new Date(drawYear,drawMonth-stepMonths,1)),this._getFormatConfig(inst)));var prev=(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#'+inst.id+"', -"+stepMonths+", 'M');\" title=\""+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"e":"w")+'">'+prevText+"</span></a>":(hideIfNoPrevNext?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"e":"w")+'">'+prevText+"</span></a>"));var nextText=this._get(inst,"nextText");nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,this._daylightSavingAdjust(new Date(drawYear,drawMonth+stepMonths,1)),this._getFormatConfig(inst)));var next=(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#'+inst.id+"', +"+stepMonths+", 'M');\" title=\""+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"w":"e")+'">'+nextText+"</span></a>":(hideIfNoPrevNext?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"w":"e")+'">'+nextText+"</span></a>"));var currentText=this._get(inst,"currentText");var gotoDate=(this._get(inst,"gotoCurrent")&&inst.currentDay?currentDate:today);currentText=(!navigationAsDateFormat?currentText:this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));var controls=(!inst.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery.datepicker._hideDatepicker();">'+this._get(inst,"closeText")+"</button>":"");var buttonPanel=(showButtonPanel)?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(isRTL?controls:"")+(this._isInRange(inst,gotoDate)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery.datepicker._gotoToday(\'#'+inst.id+"');\">"+currentText+"</button>":"")+(isRTL?"":controls)+"</div>":"";var firstDay=parseInt(this._get(inst,"firstDay"),10);firstDay=(isNaN(firstDay)?0:firstDay);var dayNames=this._get(inst,"dayNames");var dayNamesShort=this._get(inst,"dayNamesShort");var dayNamesMin=this._get(inst,"dayNamesMin");var monthNames=this._get(inst,"monthNames");var monthNamesShort=this._get(inst,"monthNamesShort");var beforeShowDay=this._get(inst,"beforeShowDay");var showOtherMonths=this._get(inst,"showOtherMonths");var calculateWeek=this._get(inst,"calculateWeek")||this.iso8601Week;var endDate=inst.endDay?this._daylightSavingAdjust(new Date(inst.endYear,inst.endMonth,inst.endDay)):currentDate;var defaultDate=this._getDefaultDate(inst);var html="";for(var row=0;row<numMonths[0];row++){var group="";for(var col=0;col<numMonths[1];col++){var selectedDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,inst.selectedDay));var cornerClass=" ui-corner-all";var calender="";if(isMultiMonth){calender+='<div class="ui-datepicker-group ui-datepicker-group-';switch(col){case 0:calender+="first";cornerClass=" ui-corner-"+(isRTL?"right":"left");break;case numMonths[1]-1:calender+="last";cornerClass=" ui-corner-"+(isRTL?"left":"right");break;default:calender+="middle";cornerClass="";break}calender+='">'}calender+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+cornerClass+'">'+(/all|left/.test(cornerClass)&&row==0?(isRTL?next:prev):"")+(/all|right/.test(cornerClass)&&row==0?(isRTL?prev:next):"")+this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,row>0||col>0,monthNames,monthNamesShort)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var thead="";for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;thead+="<th"+((dow+firstDay+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+dayNames[day]+'">'+dayNamesMin[day]+"</span></th>"}calender+=thead+"</tr></thead><tbody>";var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth){inst.selectedDay=Math.min(inst.selectedDay,daysInMonth)}var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;var numRows=(isMultiMonth?6:Math.ceil((leadDays+daysInMonth)/7));var printDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,1-leadDays));for(var dRow=0;dRow<numRows;dRow++){calender+="<tr>";var tbody="";for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,""]);var otherMonth=(printDate.getMonth()!=drawMonth);var unselectable=otherMonth||!daySettings[0]||(minDate&&printDate<minDate)||(maxDate&&printDate>maxDate);tbody+='<td class="'+((dow+firstDay+6)%7>=5?" ui-datepicker-week-end":"")+(otherMonth?" ui-datepicker-other-month":"")+((printDate.getTime()==selectedDate.getTime()&&drawMonth==inst.selectedMonth&&inst._keyEvent)||(defaultDate.getTime()==printDate.getTime()&&defaultDate.getTime()==selectedDate.getTime())?" "+this._dayOverClass:"")+(unselectable?" "+this._unselectableClass+" ui-state-disabled":"")+(otherMonth&&!showOtherMonths?"":" "+daySettings[1]+(printDate.getTime()>=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" "+this._currentClass:"")+(printDate.getTime()==today.getTime()?" ui-datepicker-today":""))+'"'+((!otherMonth||showOtherMonths)&&daySettings[2]?' title="'+daySettings[2]+'"':"")+(unselectable?"":" onclick=\"DP_jQuery.datepicker._selectDay('#"+inst.id+"',"+drawMonth+","+drawYear+', this);return false;"')+">"+(otherMonth?(showOtherMonths?printDate.getDate():" "):(unselectable?'<span class="ui-state-default">'+printDate.getDate()+"</span>":'<a class="ui-state-default'+(printDate.getTime()==today.getTime()?" ui-state-highlight":"")+(printDate.getTime()>=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" ui-state-active":"")+'" href="#">'+printDate.getDate()+"</a>"))+"</td>";printDate.setDate(printDate.getDate()+1);printDate=this._daylightSavingAdjust(printDate)}calender+=tbody+"</tr>"}drawMonth++;if(drawMonth>11){drawMonth=0;drawYear++}calender+="</tbody></table>"+(isMultiMonth?"</div>"+((numMonths[0]>0&&col==numMonths[1]-1)?'<div class="ui-datepicker-row-break"></div>':""):"");group+=calender}html+=group}html+=buttonPanel+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':"");inst._keyEvent=false;return html},_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,secondary,monthNames,monthNamesShort){minDate=(inst.rangeStart&&minDate&&selectedDate<minDate?selectedDate:minDate);var changeMonth=this._get(inst,"changeMonth");var changeYear=this._get(inst,"changeYear");var showMonthAfterYear=this._get(inst,"showMonthAfterYear");var html='<div class="ui-datepicker-title">';var monthHtml="";if(secondary||!changeMonth){monthHtml+='<span class="ui-datepicker-month">'+monthNames[drawMonth]+"</span> "}else{var inMinYear=(minDate&&minDate.getFullYear()==drawYear);var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);monthHtml+='<select class="ui-datepicker-month" onchange="DP_jQuery.datepicker._selectMonthYear(\'#'+inst.id+"', this, 'M');\" onclick=\"DP_jQuery.datepicker._clickMonthYear('#"+inst.id+"');\">";for(var month=0;month<12;month++){if((!inMinYear||month>=minDate.getMonth())&&(!inMaxYear||month<=maxDate.getMonth())){monthHtml+='<option value="'+month+'"'+(month==drawMonth?' selected="selected"':"")+">"+monthNamesShort[month]+"</option>"}}monthHtml+="</select>"}if(!showMonthAfterYear){html+=monthHtml+((secondary||changeMonth||changeYear)&&(!(changeMonth&&changeYear))?" ":"")}if(secondary||!changeYear){html+='<span class="ui-datepicker-year">'+drawYear+"</span>"}else{var years=this._get(inst,"yearRange").split(":");var year=0;var endYear=0;if(years.length!=2){year=drawYear-10;endYear=drawYear+10}else{if(years[0].charAt(0)=="+"||years[0].charAt(0)=="-"){year=drawYear+parseInt(years[0],10);endYear=drawYear+parseInt(years[1],10)}else{year=parseInt(years[0],10);endYear=parseInt(years[1],10)}}year=(minDate?Math.max(year,minDate.getFullYear()):year);endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);html+='<select class="ui-datepicker-year" onchange="DP_jQuery.datepicker._selectMonthYear(\'#'+inst.id+"', this, 'Y');\" onclick=\"DP_jQuery.datepicker._clickMonthYear('#"+inst.id+"');\">";for(;year<=endYear;year++){html+='<option value="'+year+'"'+(year==drawYear?' selected="selected"':"")+">"+year+"</option>"}html+="</select>"}if(showMonthAfterYear){html+=(secondary||changeMonth||changeYear?" ":"")+monthHtml}html+="</div>";return html},_adjustInstDate:function(inst,offset,period){var year=inst.drawYear+(period=="Y"?offset:0);var month=inst.drawMonth+(period=="M"?offset:0);var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+(period=="D"?offset:0);var date=this._daylightSavingAdjust(new Date(year,month,day));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&date<minDate?minDate:date);date=(maxDate&&date>maxDate?maxDate:date);inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();if(period=="M"||period=="Y"){this._notifyChange(inst)}},_notifyChange:function(inst){var onChange=this._get(inst,"onChangeMonthYear");if(onChange){onChange.apply((inst.input?inst.input[0]:null),[inst.selectedYear,inst.selectedMonth+1,inst])}},_getNumberOfMonths:function(inst){var numMonths=this._get(inst,"numberOfMonths");return(numMonths==null?[1,1]:(typeof numMonths=="number"?[1,numMonths]:numMonths))},_getMinMaxDate:function(inst,minMax,checkRange){var date=this._determineDate(this._get(inst,minMax+"Date"),null);return(!checkRange||!inst.rangeStart?date:(!date||inst.rangeStart>date?inst.rangeStart:date))},_getDaysInMonth:function(year,month){return 32-new Date(year,month,32).getDate()},_getFirstDayOfMonth:function(year,month){return new Date(year,month,1).getDay()},_canAdjustMonth:function(inst,offset,curYear,curMonth){var numMonths=this._getNumberOfMonths(inst);var date=this._daylightSavingAdjust(new Date(curYear,curMonth+(offset<0?offset:numMonths[1]),1));if(offset<0){date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()))}return this._isInRange(inst,date)},_isInRange:function(inst,date){var newMinDate=(!inst.rangeStart?null:this._daylightSavingAdjust(new Date(inst.selectedYear,inst.selectedMonth,inst.selectedDay)));newMinDate=(newMinDate&&inst.rangeStart<newMinDate?inst.rangeStart:newMinDate);var minDate=newMinDate||this._getMinMaxDate(inst,"min");var maxDate=this._getMinMaxDate(inst,"max");return((!minDate||date>=minDate)&&(!maxDate||date<=maxDate))},_getFormatConfig:function(inst){var shortYearCutoff=this._get(inst,"shortYearCutoff");shortYearCutoff=(typeof shortYearCutoff!="string"?shortYearCutoff:new Date().getFullYear()%100+parseInt(shortYearCutoff,10));return{shortYearCutoff:shortYearCutoff,dayNamesShort:this._get(inst,"dayNamesShort"),dayNames:this._get(inst,"dayNames"),monthNamesShort:this._get(inst,"monthNamesShort"),monthNames:this._get(inst,"monthNames")}},_formatDate:function(inst,day,month,year){if(!day){inst.currentDay=inst.selectedDay;inst.currentMonth=inst.selectedMonth;inst.currentYear=inst.selectedYear}var date=(day?(typeof day=="object"?day:this._daylightSavingAdjust(new Date(year,month,day))):this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return this.formatDate(this._get(inst,"dateFormat"),date,this._getFormatConfig(inst))}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null||props[name]==undefined){target[name]=props[name]}}return target}function isArray(a){return(a&&(($.browser.safari&&typeof a=="object"&&a.length)||(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))}$.fn.datepicker=function(options){if(!$.datepicker.initialized){$(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv);$.datepicker.initialized=true}var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=="string"&&(options=="isDisabled"||options=="getDate")){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}if(options=="option"&&arguments.length==2&&typeof arguments[1]=="string"){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}return this.each(function(){typeof options=="string"?$.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this].concat(otherArgs)):$.datepicker._attachDatepicker(this,options)})};$.datepicker=new Datepicker();$.datepicker.initialized=false;$.datepicker.uuid=new Date().getTime();$.datepicker.version="1.7.2";window.DP_jQuery=$})(jQuery); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/viewbox.css.svn-base b/forum/skins/light/media/js/.svn/text-base/viewbox.css.svn-base deleted file mode 100755 index b563176740c3e2301c80196f7403d3794283a7a9..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/viewbox.css.svn-base +++ /dev/null @@ -1,137 +0,0 @@ -/* Miniatury */ -.thumbdiv { - float:left; - position:relative; -} -.thumbdiv .title { - position:absolute; - padding:2px; - font-size:1.0em; - color:#fff; - background:#000; - border-top:solid 1px #000; - opacity:0.8; - bottom:14px; - left:8px; - right:9px; -} -/* VIEWBOX */ -#viewbox { - position:fixed; - height:100%; - width:100%; - top:0; - left:0; - background:#383739; - z-index:2190; - overflow:auto; -} -.vb_wrap { - position:absolute; - padding:10px; - height:20px; - width:20px; - background-image:url(../images/viewbox/ViewBox_bg.png); - background-color:#0f0e0e; - overflow:visible; - z-index:2200; - margin:0 auto; - top:0; - left:0; - border-radius:10px; - box-shadow: 4px 4px 7px #000; -} -.vb_wrap .content { - position:relative; - overflow:visible; -} -.vb_wrap .number { - position:absolute; - top:-32px; - left:1px; - font-size:0.9em; - color:#0c0c0c; -} -.vb_wrap .close { - position:absolute; - top:-40px; - right:-7px; - background:url(../images/viewbox/viewbox_close.png) top left no-repeat; - height:30px; - width:30px; -} -* html .vb_wrap .close { - top:-26px; - right:7px; -} -.vb_wrap .next { - position:absolute; - right:-60px; - background:url(../images/viewbox/ViewBox_next.png) top left no-repeat; - height:50px; - width:50px; - z-index:2190; -} -.vb_wrap .prev { - position:absolute; - left:-59px; - background:url(../images/viewbox/ViewBox_prev.png) top right no-repeat; - height:50px; - width:50px; - z-index:2190; -} -.vb_wrap .close a, .vb_wrap .next a, .vb_wrap .prev a { - display:block; - height:100%; - width:100%; - text-indent:-777em; - outline:none; -} -.vb_wrap h1 { - margin:5px 0px 8px; - padding-bottom:3px; - letter-spacing:1.3px; - font-family:Arial, Helvetica, sans-serif; - font-size:0.9em; - color:#cdcdcd; - border-bottom:solid 1px #7e7e7e; - -} -.vb_wrap p { - font-family:Arial, Helvetica, sans-serif; - font-size:0.8em; - text-align:justify; - color:#e5e5e5; -} -.vb_wrap .text { - position:absolute; - background: url(../images/viewbox/ViewBox_bg.png) top left repeat; - border-top:solid 1px #121212; - bottom:0; left:0; - padding:5px; - width:99%; - z-index:2110; -} -* html .vb_wrap .text { - background-image:none; - background-color:#0f0e0e; -} -.vb_wrap .image { - z-index:2220; -} -.vb_wrap .text h1 { - margin:2px; - padding:1px; - color:#919191; - z-index:2230; -} -.vb_wrap .text .description { - position:relative; - bottom:0px; - left:0px; - padding:2px 2px; - font-family:Arial, Helvetica, sans-serif; - font-size:0.8em; - z-index:2260; - color:#949494; -} diff --git a/forum/skins/light/media/js/.svn/text-base/viewbox_min.js.svn-base b/forum/skins/light/media/js/.svn/text-base/viewbox_min.js.svn-base deleted file mode 100755 index 4916f875d782503ef45747d2439f31bcf26c9366..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/viewbox_min.js.svn-base +++ /dev/null @@ -1 +0,0 @@ -eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(k($){$.3y.Y=k(g){g=$.4l({G:4j,w:4h,C:4f,r:[],o:0,4d:1,2K:1,32:1,2j:0,2m:0,1W:"#4c",2t:5,2C:1,1T:0,1R:0,2J:0,1N:0,2Q:1,2W:1,2X:1,2Y:"c",34:"p",2b:"n",2k:1},g);B h=$(J);B j;k 2v(){2y(J,h);u 1g}k 2y(a,b){g.r.R=0;g.o=0;m(b.R==1){g.r.2M(1s 1E(a.19("V"),a.19("T"),$(a).13("14").1h("2e")))}M{45(B i=0;i<b.R;i++){g.r.2M(1s 1E(b[i].19("V"),b[i].19("T"),$(b[i]).13("14").1h("2e")))}}44(g.r[g.o][0]!=a.19("V")){g.o++}2r()}k 2r(){$("43").z("<q 2w=\'Y\'></q><q A=\'8\'><q A=\'l\'><q A=\'1V\'><a V=\'#\'>1V</a></q><q A=\'Z\'><a V=\'#\'> 1m</a></q><q A=\'12\'><a V=\'#\'>3Y</a></q></q>");$("#Y, .8, .8 .l, .8 .l .Z, .8 .l .12").O();m(g.2W){1l()}$(".8 .12").1x().1Q("1c",k(){1S();u 1g});$(".8 .Z").1x().1Q("1c",k(){1m();u 1g});36();$("#Y").Q("3U",0.7).17(g.G/1.6,k(){y=1w();m($(P).1r()==0){m(g.w>y[0]*1.3){j=y[0]/9}M{j=y[0]/2.2}}M{j=$(P).1r()+y[0]/2.3}$(".8").Q({U:j+(g.w/2),1k:y[1]});$(".8").17(g.G/1.2,k(){$(J).1J({s:g.w,t:g.C,U:j,1k:y[1]-g.C/2},g.G/1.2,k(){1u();$(".8 .l").11(3P).17(g.G/1.5)})})});$("#Y, .8 .l .1V a").1c(k(){20();u 1g})}k 1u(){m(1F(g.r[g.o][0])){2S(g.r[g.o][0])}m(1G(g.r[g.o][0])){1H(g.r[g.o][0])}m(1I(g.r[g.o][0])){2Z(g.r[g.o][0])}m(1K(g.r[g.o][0])){33(g.r[g.o][0])}m(1L(g.r[g.o][0])){35(g.r[g.o][0])}m(1M(g.r[g.o][0])){38(g.r[g.o][0])}m(3a(g.r[g.o][0])){3b(g.r[g.o][0])}m(3c(g.r[g.o][0])){3d(g.r[g.o][0])}}k 1F(a){u(a.H("3O",".")>0||a.H("3N",".")>0||a.H("3L",".")>0)&&a.H("2c",".")<0}k 1G(a){u a.H("2d",".")>0}k 1I(a){u a.H("1i",".")>0}k 1K(a){u a.H("2c",".")>0||a.H("3H",".")>0||a.H("3F",".")>0}k 1L(a){u a.H("3B","/")>0&&a.H("3A",".")>0}k 1M(a){u g.2j!=0||a.H("1X",".")>0}k 3a(a){u g.2m!=0||a.H("#")>=0}k 3c(a){u g.1T!=0||a.H("3z",".")>0||a.H("4m",".")>0}k 2S(b){$(".8 .l").z("<q A=\'S\'><14 /></q>");$(".8 .S").O();m(g.32){$(".8").z("<q A=\'2n\'></q>")}B c=1s 2o();c.2p=k(){$(".8 .S 14").1h("W",c.W);y=1w();B a,X;m(y[0]*1.4>c.s||y[1]*1.4>c.t){g.w=a=c.s;g.C=X=c.t}M{m(!g.2K){B d=c.t-(y[1]*1.6)-1t;g.w=a=(c.s-d);g.C=X=(c.t-d)}M{m(c.s<c.t){B d=c.t-(y[1]*1.6)-1t;m(c.s>y[0]){B d=c.s-(y[0]*1.6)-1t;g.w=a=(c.s-d);g.C=X=(c.t/(c.s/(c.s-d)))}M{g.w=a=(c.s/(c.t/(c.t-d)));g.C=X=(c.t-d)}}m(c.s>c.t){B d=c.s-(y[0]*1.6)-1t;g.w=a=(c.s-d);g.C=X=(c.t/(c.s/(c.s-d)))}}}2u(a,X);$(".8 .2n").18();c.2p=k(){}};c.W=b;B e=g.r[g.o][2];B f=g.r[g.o][1];2x(f,e)}k 2x(a,b){m(a){$(".8 .l .S").z("<q A=\'16\'><2z>"+a+"</2z></q>");$(".8 .l .16").O();$(".8").2A(k(){$(".8 .l .16").1v(I,I).11(1e).2E(1e)},k(){$(".8 .l .16").1v(I,I).11(1e).2F(3x)})}m(b){$(".8 .l .16").z("<q A=\'3w\'>"+b+"</q>")}u 1g}k 1H(a){$(".8 .l").z("<q A=\'E\'></q>");1O="1P://3v.2d.1d/v/"+a.2O(31,42)+"&3n=1&3m=1&3l=3k&3j=0";$(".8 .E").z("<E t=\'"+g.C+"\' s=\'"+g.w+"\'><F K=\'1z\' L=\'"+1O+"\'></F><F K=\'3i\' L=\'I\'></F><F K=\'1A\' L=\'1B\'></F><15 W=\'"+1O+"\' 1C=\'22/x-23-24\' 1A=\'1B\' 1b=\'I\' t=\'"+g.C+"\' s=\'"+g.w+"\'></15></E>")}k 2Z(a){$(".8 .l").z("<q A=\'E\'></q>");26=a.2O(21,29);$(".8 .E").z("<E t=\'"+g.C+"\' s=\'"+g.w+"\'><F K=\'1b\' L=\'I\' /><F K=\'1A\' L=\'1B\' /><F K=\'1z\' L=\'1P://1i.1d/3g.1a?3f="+26+"&D;30=1i.1d&D;2V=1&D;2U=1&D;2T=0&D;1y=&D;2R=1\' /><15 W=\'1P://1i.1d/3g.1a?3f="+26+"&D;30=1i.1d&D;2V=1&D;2U=1&D;2T=0&D;1y=&D;2R=1\' 1C=\'22/x-23-24\' 1b=\'I\' 1A=\'1B\' t=\'"+g.C+"\' s=\'"+g.w+"\'></15></E>")}k 33(a){$(".8 .l").z("<q A=\'E\'></q>");$(\'.8 .E\').z("<E 2w=\'N\' 3o=\'3p:3q-3r-3s-3t-3u\' K=\'N\' t=\'"+g.C+"\' s=\'"+g.w+"\'> <F K=\'1z\' L=\'N/N.1a\' /><F K=\'1b\' L=\'I\' /> <F K=\'2P\' L=\'2N="+a+"&D;2L=N/2H.2G\' /> <E 1C=\'22/x-23-24\' 2l=\'N/N.1a\' t=\'"+g.C+"\' s=\'"+g.w+"\'> <F K=\'1z\' L=\'N/N.1a\' /> <F K=\'1b\' L=\'I\' /> <F K=\'2P\' L=\'2N="+a+"&D;2L=N/2H.2G\' /></E>")}k 35(a){$(".8 .l").z("<1q t="+g.C+" s="+g.w+" 2i=\'0\' 2h=\'3C\' 3D=\'0\' 3E=\'0\' W=\'"+a+"&D;2g=15\'></1q><3G /><2f><a V=\'"+a+"&D;2g=15\' 3I=\'1y:#3J;16-3K:1k\' ></2f>")}k 38(a){$(".8 .l").z("<q A=\'l\'></q>");$(".8 .l .l").Q("1U",g.1W).O();$(".8 .l .l").z("<1q 3M=\'0\' W=\'"+a+"\' 2h=\'2a\' 2i=\'0\' s=\'"+g.w+"\' t=\'"+g.C+"\' ></1q>")}k 1l(){m(g.o!=0){$(".8 .12").Q("U",g.w/2).3h()}M{$(".8 .12").O()}m(g.o!=g.r.R-1){$(".8 .Z").Q("U",g.w/2).3h()}M{$(".8 .Z").O()}1o()}k 3b(a){25();$(".8 .l .l").z($(a).1X())}k 3d(b){25();$.1T({1C:(!g.1R)?"3Q":g.1R,3R:b,2l:g.2J,3S:(!g.1N)?(k(a){$("8 .l .l").1X(a)}):g.1N})}k 25(){$(".8").Q("1U-1y","3T");$(".8 .l .28").O();B a=(g.2C)?"2a":"3V";$(".8 .l").z("<q A=\'l\'></q>");$(".8 .l .l").Q({1U:g.1W,3W:g.2t,3X:a});$(".8 .l .l").s(g.w-10)}k 36(){m(g.2X){$(P.1n).1x().1Q("3Z",k(a){m($.40.41){1Y=a.1j}M{1Y=a.1j}1p=46.47(1Y).48();m(a.1j==37||1p==g.34){1S()}m(a.1j==39||1p==g.2b){1m()}m(a.1j==27||1p==g.2Y){20()}})}}k 1S(){m(g.o!=0){$(".8 .l").1f(g.G/1.4,k(){$(".8 .l .S, .l .E").18();g.o=g.o-1;1o();1u();$(J).17(g.G/1.2);1l()})}}k 1m(){m(g.o!=g.r.R-1){$(".8 .l").1f(g.G/1.4,k(){$(".8 .l .S, .8 .l .E").18();g.o=g.o+1;1o();1u();$(J).17(g.G/1.2);1l()})}}k 1o(){m(g.2k){$(".8 .l .28").18();m(g.r.R!=0){k 3e(){m(1F(g.r[g.o][0])){u"2o "}m(1G(g.r[g.o][0])||1I(g.r[g.o][0])){u"1H "}m(1K(g.r[g.o][0])){u"49 "}m(1L(g.r[g.o][0])){u"4a "}m(1M(g.r[g.o][0])){u"4b "}}$(".8 .l").z("<q A=\'28\'>"+3e()+(g.o+1)+" / "+g.r.R+"</q>")}}}k 2u(a,b,c){B d=$(".8").s();B e=$(".8").t();$(".8").1J({1k:P.1n.2s/2-b/2,U:2D(a,b),t:b,s:a},g.G/1.5);$(".8 14").1h({s:a,t:b});$(".8 .S").O().11(g.G/1.1).17(4e);$(".8 .Z, .8 .12").Q("U",a/2)}k 2D(a,b){m(a+y[0]/2.3>y[0]*2){u $(P).1r()+(y[0]/9)}M{u $(P).1r()+(y[0]/2)}}k 20(){B a=1w();g.r.R=0;g.o=0;$(".8 .l").1f(g.G/1.6,k(){$(".8").1J({1k:a[1],U:a[0]/2+j,s:2B,t:2B},g.G/1.3,k(){$(J).1f(g.G/1.2,k(){$(J).18();$("#Y").1f(g.G/1.5,k(){$("#Y").18()})})})})}k 1w(){B a=1s 1E;a[0]=P.1n.4g/2;a[1]=P.1n.2s/2;u a}m(g.2Q){2I.4i(h,k(){B a=$(J).1h("T");m(a!=""){$(J).13("14").1Z("a").4k("<q A=\'1D\'></q>");$(J).1Z(".1D").z("<q A=\'T\'>"+a+"</q>");$(J).1Z(".1D").13(".T").O()}});$(".1D").2A(k(){$(J).13(".T").1v(I,I).11(2q).2E(1e)},k(){$(J).13(".T").1v(I,I).11(2q).2F(1e)})}u J.1x(\'1c\').1c(2v)}})(2I);',62,271,'||||||||vb_wrap||||||||||||function|content|if||arrayActEl||div|arrayEl|height|width|return||heightWindow||arraySizeBrowser|append|class|var|widthWindow|amp|object|param|Speed|indexOf|true|this|name|value|else|player|hide|document|css|length|image|title|top|href|src|Width|viewbox|next||delay|prev|children|img|embed|text|fadeIn|remove|getAttribute|swf|allowfullscreen|click|com|200|fadeOut|false|attr|vimeo|keyCode|left|NextAndPrev|Next|documentElement|NumberElement|KeyCode|iframe|scrollTop|new|65|setElement|stop|sizeBrowser|unbind|color|movie|allowscriptaccess|always|type|thumbdiv|Array|nImg|nYT|Film|nV|animate|nPlayer|nMaps|nFrame|ajaxSuccess|hrefY|http|bind|ajaxType|Prev|ajax|background|close|inlineBg|html|codeAscii|parent|closeWindow||application|shockwave|flash|ChangeStyle|hrefV||number||auto|keyNext|mp3|youtube|alt|small|output|scrolling|frameborder|frame|numberEl|data|inline|preloader|Image|onload|150|createView|clientWidth|inlinePadding|resizeWindow|_clickEl|id|Description|_viewbox|h1|hover|50|inlineScroll|topToresize|slideDown|slideUp|zip|modieus|jQuery|ajaxData|visibleIMG|skin|push|file|substring|flashvars|titleThumb|fullscreen|Img|show_portrait|show_byline|show_title|navigation|keyboard|keyClose|Vimeo|server||preloaderIMG|Player|keyPrev|GoogleMaps|keyboardNav||FrameObj||nInline|Inline|nAjax|Ajax|Words|clip_id|moogaloop|show|allowFullScreen|showsearch|related|feature|loop|autoplay|classid|clsid|D27CDB6E|AE6D|11cf|96B8|444553540000|www|description|180|fn|txt|google|map|no|marginheight|marginwidth|avi|br|vmw|style|0000FF|align|gif|hspace|png|jpg|290|GET|url|success|transparent|opacity|hidden|padding|overflow|Previous|keyup|browser|msie||body|while|for|String|fromCharCode|toLowerCase|Item|Map|Page|fff|IMG|300|650|clientHeight|450|each|400|wrap|extend|js'.split('|'),0,{})) \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/youtube.js.svn-base b/forum/skins/light/media/js/.svn/text-base/youtube.js.svn-base deleted file mode 100755 index 07c1fbef97844ce7921eac81f60122a5a35a2237..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/.svn/text-base/youtube.js.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -$(document).ready(function(){ - // Embed YouTube videos - $('a[href*=".youtube.com"]').viewbox({ - widthWindow: 900 - }); -}); \ No newline at end of file diff --git a/forum/skins/light/media/js/.svn/text-base/yuicompressor-2.4.2.jar.svn-base b/forum/skins/light/media/js/.svn/text-base/yuicompressor-2.4.2.jar.svn-base deleted file mode 100755 index c29470bd0d0175ddd98e7f82079a9566c2aebf4c..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/.svn/text-base/yuicompressor-2.4.2.jar.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/.svn/all-wcprops b/forum/skins/light/media/js/wmd/.svn/all-wcprops deleted file mode 100755 index dc9b4f4ee4ca618b52d45226d7a27474f64bea7b..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/media/js/wmd -END -wmd.js -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1231/osqa/trunk/forum/skins/default/media/js/wmd/wmd.js -END -showdown.js -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/media/js/wmd/showdown.js -END -wmd-test.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/wmd/wmd-test.html -END -wmd.css -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1118/osqa/trunk/forum/skins/default/media/js/wmd/wmd.css -END diff --git a/forum/skins/light/media/js/wmd/.svn/entries b/forum/skins/light/media/js/wmd/.svn/entries deleted file mode 100755 index 629806419663d19c6bc7341515736ec188db6b91..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/.svn/entries +++ /dev/null @@ -1,167 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/js/wmd -http://svn.osqa.net/svnroot - - - -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -wmd.css -file - - - - -2012-07-01T12:37:36.029376Z -983fdb5fadc714d994f759023d1d33f3 -2011-07-13T16:00:24.687039Z -1118 -jordan - - - - - - - - - - - - - - - - - - - - - -2658 - -wmd.js -file - - - - -2012-07-01T12:37:36.029376Z -a15990e4bf0d8768b54b39408f42e815 -2012-03-13T13:39:40.918967Z -1231 -jordan - - - - - - - - - - - - - - - - - - - - - -71940 - -showdown.js -file - - - - -2012-07-01T12:37:36.029376Z -a90c2361dcad149ceeaba738abdbfbe9 -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -35661 - -images -dir - -wmd-test.html -file - - - - -2012-07-01T12:37:36.029376Z -36ed32144cab8c1f8cf58cc97080d211 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -3419 - diff --git a/forum/skins/light/media/js/wmd/.svn/text-base/showdown.js.svn-base b/forum/skins/light/media/js/wmd/.svn/text-base/showdown.js.svn-base deleted file mode 100755 index c87fd45018de05ca2214eecfc7b8c6cfa79f5625..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/.svn/text-base/showdown.js.svn-base +++ /dev/null @@ -1,1331 +0,0 @@ -// -// showdown.js -- A javascript port of Markdown. -// -// Copyright (c) 2007 John Fraser. -// -// Original Markdown Copyright (c) 2004-2005 John Gruber -// <http://daringfireball.net/projects/markdown/> -// -// The full source distribution is at: -// -// A A L -// T C A -// T K B -// -// <http://www.attacklab.net/> -// - -// -// Wherever possible, Showdown is a straight, line-by-line port -// of the Perl version of Markdown. -// -// This is not a normal parser design; it's basically just a -// series of string substitutions. It's hard to read and -// maintain this way, but keeping Showdown close to the original -// design makes it easier to port new features. -// -// More importantly, Showdown behaves like markdown.pl in most -// edge cases. So web applications can do client-side preview -// in Javascript, and then build identical HTML on the server. -// -// This port needs the new RegExp functionality of ECMA 262, -// 3rd Edition (i.e. Javascript 1.5). Most modern web browsers -// should do fine. Even with the new regular expression features, -// We do a lot of work to emulate Perl's regex functionality. -// The tricky changes in this file mostly have the "attacklab:" -// label. Major or self-explanatory changes don't. -// -// Smart diff tools like Araxis Merge will be able to match up -// this file with markdown.pl in a useful way. A little tweaking -// helps: in a copy of markdown.pl, replace "#" with "//" and -// replace "$text" with "text". Be sure to ignore whitespace -// and line endings. -// - - -// -// Showdown usage: -// -// var text = "Markdown *rocks*."; -// -// var converter = new Attacklab.showdown.converter(); -// var html = converter.makeHtml(text); -// -// alert(html); -// -// Note: move the sample code to the bottom of this -// file before uncommenting it. -// - - -// -// Attacklab namespace -// -var Attacklab = Attacklab || {} - -// -// Showdown namespace -// -Attacklab.showdown = Attacklab.showdown || {} - -// -// converter -// -// Wraps all "globals" so that the only thing -// exposed is makeHtml(). -// -Attacklab.showdown.converter = function() { - - -// g_urls and g_titles allow arbitrary user-entered strings as keys. This -// caused an exception (and hence stopped the rendering) when the user entered -// e.g. [push] or [__proto__]. Adding a prefix to the actual key prevents this -// (since no builtin property starts with "s_"). See -// http://meta.stackoverflow.com/questions/64655/strange-wmd-bug -// (granted, switching from Array() to Object() alone would have left only __proto__ -// to be a problem) -var SaveHash = function () { - this.set = function (key, value) { - this["s_" + key] = value; - } - this.get = function (key) { - return this["s_" + key]; - } -} - -// -// Globals: -// - -// Global hashes, used by various utility routines -var g_urls; -var g_titles; -var g_html_blocks; - -// Used to track when we're inside an ordered or unordered list -// (see _ProcessListItems() for details): -var g_list_level = 0; - - -this.makeHtml = function(text) { -// -// Main function. The order in which other subs are called here is -// essential. Link and image substitutions need to happen before -// _EscapeSpecialCharsWithinTagAttributes(), so that any *'s or _'s in the <a> -// and <img> tags get encoded. -// - text = html_sanitize(text, function(url) {return url;}, function(id) {return id;}); - - // Clear the global hashes. If we don't clear these, you get conflicts - // from other articles when generating a page which contains more than - // one article (e.g. an index page that shows the N most recent - // articles): - g_urls = new SaveHash(); - g_titles = new SaveHash(); - g_html_blocks = new Array(); - - // attacklab: Replace ~ with ~T - // This lets us use tilde as an escape char to avoid md5 hashes - // The choice of character is arbitray; anything that isn't - // magic in Markdown will work. - text = text.replace(/~/g,"~T"); - - // attacklab: Replace $ with ~D - // RegExp interprets $ as a special character - // when it's in a replacement string - text = text.replace(/\$/g,"~D"); - - // Standardize line endings - text = text.replace(/\r\n/g,"\n"); // DOS to Unix - text = text.replace(/\r/g,"\n"); // Mac to Unix - - // Make sure text begins and ends with a couple of newlines: - text = "\n\n" + text + "\n\n"; - - // Convert all tabs to spaces. - text = _Detab(text); - - // Strip any lines consisting only of spaces and tabs. - // This makes subsequent regexen easier to write, because we can - // match consecutive blank lines with /\n+/ instead of something - // contorted like /[ \t]*\n+/ . - text = text.replace(/^[ \t]+$/mg,""); - - // Turn block-level HTML blocks into hash entries - text = _HashHTMLBlocks(text); - - // Strip link definitions, store in hashes. - text = _StripLinkDefinitions(text); - - text = _RunBlockGamut(text); - - text = _UnescapeSpecialChars(text); - - // attacklab: Restore dollar signs - text = text.replace(/~D/g,"$$"); - - // attacklab: Restore tildes - text = text.replace(/~T/g,"~"); - - return text; -} - -var _StripLinkDefinitions = function(text) { -// -// Strips link definitions from text, stores the URLs and titles in -// hash references. -// - - // Link defs are in the form: ^[id]: url "optional title" - - /* - var text = text.replace(/ - ^[ ]{0,3}\[(.+)\]: // id = $1 attacklab: g_tab_width - 1 - [ \t]* - \n? // maybe *one* newline - [ \t]* - <?(\S+?)>? // url = $2 - (?=\s|$) // lookahead for whitespace instead of the lookbehind removed below - [ \t]* - \n? // maybe one newline - [ \t]* - ( // (potential) title = $3 - (\n*) // any lines skipped = $4 attacklab: lookbehind removed - [ \t]+ - ["(] - (.+?) // title = $5 - [")] - [ \t]* - )? // title is optional - (?:\n+|$) - /gm, - function(){...}); - */ - var text = text.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*<?(\S+?)>?(?=\s|$)[ \t]*\n?[ \t]*((\n*)["(](.+?)[")][ \t]*)?(?:\n+)/gm, - function (wholeMatch,m1,m2,m3,m4,m5) { - m1 = m1.toLowerCase(); - g_urls.set(m1, _EncodeAmpsAndAngles(m2)); // Link IDs are case-insensitive - if (m4) { - // Oops, found blank lines, so it's not a title. - // Put back the parenthetical statement we stole. - return m3; - } else if (m5) { - g_titles.set(m1, m5.replace(/"/g,""")); - } - - // Completely remove the definition from the text - return ""; - } - ); - - return text; -} - -var _HashHTMLBlocks = function(text) { - - // Hashify HTML blocks: - // We only want to do this for block-level HTML tags, such as headers, - // lists, and tables. That's because we still want to wrap <p>s around - // "paragraphs" that are wrapped in non-block-level tags, such as anchors, - // phrase emphasis, and spans. The list of tags we're looking for is - // hard-coded: - var block_tags_a = "p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del" - var block_tags_b = "p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math" - - // First, look for nested blocks, e.g.: - // <div> - // <div> - // tags for inner block must be indented. - // </div> - // </div> - // - // The outermost tags must start at the left margin for this to match, and - // the inner nested divs must be indented. - // We need to do this before the next, more liberal match, because the next - // match will start at the first `<div>` and stop at the first `</div>`. - - // attacklab: This regex can be expensive when it fails. - /* - var text = text.replace(/ - ( // save in $1 - ^ // start of line (with /m) - <($block_tags_a) // start tag = $2 - \b // word break - // attacklab: hack around khtml/pcre bug... - [^\r]*?\n // any number of lines, minimally matching - </\2> // the matching end tag - [ \t]* // trailing spaces/tabs - (?=\n+) // followed by a newline - ) // attacklab: there are sentinel newlines at end of document - /gm,function(){...}}; - */ - text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\b[^\r]*?\n<\/\2>[ \t]*(?=\n+))/gm,hashElement); - - // - // Now match more liberally, simply from `\n<tag>` to `</tag>\n` - // - - /* - var text = text.replace(/ - ( // save in $1 - ^ // start of line (with /m) - <($block_tags_b) // start tag = $2 - \b // word break - // attacklab: hack around khtml/pcre bug... - [^\r]*? // any number of lines, minimally matching - .*</\2> // the matching end tag - [ \t]* // trailing spaces/tabs - (?=\n+) // followed by a newline - ) // attacklab: there are sentinel newlines at end of document - /gm,function(){...}}; - */ - text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math)\b[^\r]*?.*<\/\2>[ \t]*(?=\n+)\n)/gm,hashElement); - - // Special case just for <hr />. It was easier to make a special case than - // to make the other regex more complicated. - - /* - text = text.replace(/ - \n // Starting after a blank line - [ ]{0,3} - ( // save in $1 - (<(hr) // start tag = $2 - \b // word break - ([^<>])*? // - \/?>) // the matching end tag - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/\n[ ]{0,3}((<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,hashElement); - - // Special case for standalone HTML comments: - - /* - text = text.replace(/ - \n\n // Starting after a blank line - [ ]{0,3} // attacklab: g_tab_width - 1 - ( // save in $1 - <! - (--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--) // see http://www.w3.org/TR/html-markup/syntax.html#comments - > - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/\n\n[ ]{0,3}(<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>[ \t]*(?=\n{2,}))/g, hashElement); - - // PHP and ASP-style processor instructions (<?...?> and <%...%>) - - /* - text = text.replace(/ - (?: - \n\n // Starting after a blank line - ) - ( // save in $1 - [ ]{0,3} // attacklab: g_tab_width - 1 - (?: - <([?%]) // $2 - [^\r]*? - \2> - ) - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,hashElement); - - return text; -} - -var hashElement = function(wholeMatch,m1) { - var blockText = m1; - - // Undo double lines - blockText = blockText.replace(/^\n+/,""); - - // strip trailing blank lines - blockText = blockText.replace(/\n+$/g,""); - - // Replace the element text with a marker ("~KxK" where x is its key) - blockText = "\n\n~K" + (g_html_blocks.push(blockText)-1) + "K\n\n"; - - return blockText; -}; - -var _RunBlockGamut = function(text, doNotUnhash) { -// -// These are all the transformations that form block-level -// tags like paragraphs, headers, and list items. -// - text = _DoHeaders(text); - - // Do Horizontal Rules: - var key = hashBlock("<hr />"); - text = text.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,key); - text = text.replace(/^[ ]{0,2}([ ]?-[ ]?){3,}[ \t]*$/gm,key); - text = text.replace(/^[ ]{0,2}([ ]?_[ ]?){3,}[ \t]*$/gm,key); - - text = _DoLists(text); - text = _DoCodeBlocks(text); - text = _DoBlockQuotes(text); - - // We already ran _HashHTMLBlocks() before, in Markdown(), but that - // was to escape raw HTML in the original Markdown source. This time, - // we're escaping the markup we've just created, so that we don't wrap - // <p> tags around block-level tags. - text = _HashHTMLBlocks(text); - text = _FormParagraphs(text, doNotUnhash); - - return text; -} - - -var _RunSpanGamut = function(text) { -// -// These are all the transformations that occur *within* block-level -// tags like paragraphs, headers, and list items. -// - - text = _DoCodeSpans(text); - text = _EscapeSpecialCharsWithinTagAttributes(text); - text = _EncodeBackslashEscapes(text); - - // Process anchor and image tags. Images must come first, - // because ![foo][f] looks like an anchor. - text = _DoImages(text); - text = _DoAnchors(text); - - // Make links out of things like `<http://example.com/>` - // Must come after _DoAnchors(), because you can use < and > - // delimiters in inline links like [this](<url>). - text = _DoAutoLinks(text); - text = _EncodeAmpsAndAngles(text); - text = _DoItalicsAndBold(text); - - // Do hard breaks: - text = text.replace(/ +\n/g," <br />\n"); - - return text; -} - -var _EscapeSpecialCharsWithinTagAttributes = function(text) { -// -// Within tags -- meaning between < and > -- encode [\ ` * _] so they -// don't conflict with their use in Markdown for code, italics and strong. -// - - // Build a regex to find HTML tags and comments. See Friedl's - // "Mastering Regular Expressions", 2nd Ed., pp. 200-201. - - // SE: changed the comment part of the regex - - var regex = /(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>)/gi; - - text = text.replace(regex, function(wholeMatch) { - var tag = wholeMatch.replace(/(.)<\/?code>(?=.)/g,"$1`"); - tag = escapeCharacters(tag,"\\`*_"); - return tag; - }); - - return text; -} - -var _DoAnchors = function(text) { -// -// Turn Markdown link shortcuts into XHTML <a> tags. -// - // - // First, handle reference-style links: [link text] [id] - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ( - (?: - \[[^\]]*\] // allow brackets nested one level - | - [^\[] // or anything else - )* - ) - \] - - [ ]? // one optional space - (?:\n[ ]*)? // one optional newline followed by spaces - - \[ - (.*?) // id = $3 - \] - )()()()() // pad remaining backreferences - /g,_DoAnchors_callback); - */ - text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,writeAnchorTag); - - // - // Next, inline-style links: [link text](url "optional title") - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ( - (?: - \[[^\]]*\] // allow brackets nested one level - | - [^\[\]] // or anything else - )* - ) - \] - \( // literal paren - [ \t]* - () // no id, so leave $3 empty - <?( // href = $4 - (?: - \([^)]*\) // allow one level of (correctly nested) parens (think MSDN) - | - [^()] - )*? - )>? - [ \t]* - ( // $5 - (['"]) // quote char = $6 - (.*?) // Title = $7 - \6 // matching quote - [ \t]* // ignore any spaces/tabs between closing quote and ) - )? // title is optional - \) - ) - /g,writeAnchorTag); - */ - - text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()<?((?:\([^)]*\)|[^()])*?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,writeAnchorTag); - - // - // Last, handle reference-style shortcuts: [link text] - // These must come last in case you've also got [link test][1] - // or [link test](/foo) - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ([^\[\]]+) // link text = $2; can't contain '[' or ']' - \] - )()()()()() // pad rest of backreferences - /g, writeAnchorTag); - */ - text = text.replace(/(\[([^\[\]]+)\])()()()()()/g, writeAnchorTag); - - return text; -} - -var writeAnchorTag = function(wholeMatch,m1,m2,m3,m4,m5,m6,m7) { - if (m7 == undefined) m7 = ""; - var whole_match = m1; - var link_text = m2; - var link_id = m3.toLowerCase(); - var url = m4; - var title = m7; - - if (url == "") { - if (link_id == "") { - // lower-case and turn embedded newlines into spaces - link_id = link_text.toLowerCase().replace(/ ?\n/g," "); - } - url = "#"+link_id; - - if (g_urls.get(link_id) != undefined) { - url = g_urls.get(link_id); - if (g_titles.get(link_id) != undefined) { - title = g_titles.get(link_id); - } - } - else { - if (whole_match.search(/\(\s*\)$/m)>-1) { - // Special case for explicit empty url - url = ""; - } else { - return whole_match; - } - } - } - - url = escapeCharacters(url,"*_"); - var result = "<a href=\"" + url + "\""; - - if (title != "") { - title = title.replace(/"/g,"""); - title = escapeCharacters(title,"*_"); - result += " title=\"" + title + "\""; - } - - result += ">" + link_text + "</a>"; - - return result; -} - - -var _DoImages = function(text) { -// -// Turn Markdown image shortcuts into <img> tags. -// - - // - // First, handle reference-style labeled images: ![alt text][id] - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - !\[ - (.*?) // alt text = $2 - \] - - [ ]? // one optional space - (?:\n[ ]*)? // one optional newline followed by spaces - - \[ - (.*?) // id = $3 - \] - )()()()() // pad rest of backreferences - /g,writeImageTag); - */ - text = text.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,writeImageTag); - - // - // Next, handle inline images:  - // Don't forget: encode * and _ - - /* - text = text.replace(/ - ( // wrap whole match in $1 - !\[ - (.*?) // alt text = $2 - \] - \s? // One optional whitespace character - \( // literal paren - [ \t]* - () // no id, so leave $3 empty - <?(\S+?)>? // src url = $4 - [ \t]* - ( // $5 - (['"]) // quote char = $6 - (.*?) // title = $7 - \6 // matching quote - [ \t]* - )? // title is optional - \) - ) - /g,writeImageTag); - */ - text = text.replace(/(!\[(.*?)\]\s?\([ \t]*()<?(\S+?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,writeImageTag); - - return text; -} - -var writeImageTag = function(wholeMatch,m1,m2,m3,m4,m5,m6,m7) { - var whole_match = m1; - var alt_text = m2; - var link_id = m3.toLowerCase(); - var url = m4; - var title = m7; - - if (!title) title = ""; - - if (url == "") { - if (link_id == "") { - // lower-case and turn embedded newlines into spaces - link_id = alt_text.toLowerCase().replace(/ ?\n/g," "); - } - url = "#"+link_id; - - if (g_urls.get(link_id) != undefined) { - url = g_urls.get(link_id); - if (g_titles.get(link_id) != undefined) { - title = g_titles.get(link_id); - } - } - else { - return whole_match; - } - } - - alt_text = alt_text.replace(/"/g,"""); - url = escapeCharacters(url,"*_"); - var result = "<img src=\"" + url + "\" alt=\"" + alt_text + "\""; - - // attacklab: Markdown.pl adds empty title attributes to images. - // Replicate this bug. - - //if (title != "") { - title = title.replace(/"/g,"""); - title = escapeCharacters(title,"*_"); - result += " title=\"" + title + "\""; - //} - - result += " />"; - - return result; -} - - -var _DoHeaders = function(text) { - - // Setext-style headers: - // Header 1 - // ======== - // - // Header 2 - // -------- - // - text = text.replace(/^(.+)[ \t]*\n=+[ \t]*\n+/gm, - function(wholeMatch,m1){return "<h1>" + _RunSpanGamut(m1) + "</h1>\n\n";}); - - text = text.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm, - function(matchFound,m1){return "<h2>" + _RunSpanGamut(m1) + "</h2>\n\n";}); - - // atx-style headers: - // # Header 1 - // ## Header 2 - // ## Header 2 with closing hashes ## - // ... - // ###### Header 6 - // - - /* - text = text.replace(/ - ^(\#{1,6}) // $1 = string of #'s - [ \t]* - (.+?) // $2 = Header text - [ \t]* - \#* // optional closing #'s (not counted) - \n+ - /gm, function() {...}); - */ - - text = text.replace(/^(\#{1,6})[ \t]*(.+?)[ \t]*\#*\n+/gm, - function(wholeMatch,m1,m2) { - var h_level = m1.length; - return "<h" + h_level + ">" + _RunSpanGamut(m2) + "</h" + h_level + ">\n\n"; - }); - - return text; -} - -// This declaration keeps Dojo compressor from outputting garbage: -var _ProcessListItems; - -var _DoLists = function(text) { -// -// Form HTML ordered (numbered) and unordered (bulleted) lists. -// - - // attacklab: add sentinel to hack around khtml/safari bug: - // http://bugs.webkit.org/show_bug.cgi?id=11231 - text += "~0"; - - // Re-usable pattern to match any entirel ul or ol list: - - /* - var whole_list = / - ( // $1 = whole list - ( // $2 - [ ]{0,3} // attacklab: g_tab_width - 1 - ([*+-]|\d+[.]) // $3 = first list item marker - [ \t]+ - ) - [^\r]+? - ( // $4 - ~0 // sentinel for workaround; should be $ - | - \n{2,} - (?=\S) - (?! // Negative lookahead for another list item marker - [ \t]* - (?:[*+-]|\d+[.])[ \t]+ - ) - ) - )/g - */ - var whole_list = /^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm; - - if (g_list_level) { - text = text.replace(whole_list,function(wholeMatch,m1,m2) { - var list = m1; - var list_type = (m2.search(/[*+-]/g)>-1) ? "ul" : "ol"; - - var result = _ProcessListItems(list, list_type); - - // Trim any trailing whitespace, to put the closing `</$list_type>` - // up on the preceding line, to get it past the current stupid - // HTML block parser. This is a hack to work around the terrible - // hack that is the HTML block parser. - result = result.replace(/\s+$/,""); - result = "<"+list_type+">" + result + "</"+list_type+">\n"; - return result; - }); - } else { - whole_list = /(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/g; - text = text.replace(whole_list,function(wholeMatch,m1,m2,m3) { - var runup = m1; - var list = m2; - - var list_type = (m3.search(/[*+-]/g)>-1) ? "ul" : "ol"; - var result = _ProcessListItems(list, list_type); - result = runup + "<"+list_type+">\n" + result + "</"+list_type+">\n"; - return result; - }); - } - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -} - -var _listItemMarkers = { ol: "\\d+[.]", ul: "[*+-]" }; - -_ProcessListItems = function(list_str, list_type) { -// -// Process the contents of a single ordered or unordered list, splitting it -// into individual list items. -// -// list_type is either "ul" or "ol". - - // The $g_list_level global keeps track of when we're inside a list. - // Each time we enter a list, we increment it; when we leave a list, - // we decrement. If it's zero, we're not in a list anymore. - // - // We do this because when we're not inside a list, we want to treat - // something like this: - // - // I recommend upgrading to version - // 8. Oops, now this line is treated - // as a sub-list. - // - // As a single paragraph, despite the fact that the second line starts - // with a digit-period-space sequence. - // - // Whereas when we're inside a list (or sub-list), that line will be - // treated as the start of a sub-list. What a kludge, huh? This is - // an aspect of Markdown's syntax that's hard to parse perfectly - // without resorting to mind-reading. Perhaps the solution is to - // change the syntax rules such that sub-lists must start with a - // starting cardinal number; e.g. "1." or "a.". - - g_list_level++; - - // trim trailing blank lines: - list_str = list_str.replace(/\n{2,}$/,"\n"); - - // attacklab: add sentinel to emulate \z - list_str += "~0"; - - // In the original attacklab WMD, list_type was not given to this function, and anything - // that matched /[*+-]|\d+[.]/ would just create the next <li>, causing this mismatch: - // - // Markdown rendered by WMD rendered by MarkdownSharp - // ------------------------------------------------------------------ - // 1. first 1. first 1. first - // 2. second 2. second 2. second - // - third 3. third * third - // - // We changed this to behave identical to MarkdownSharp. This is the constructed RegEx, - // with {MARKER} being one of \d+[.] or [*+-], depending on list_type: - /* - list_str = list_str.replace(/ - (^[ \t]*) // leading whitespace = $1 - ({MARKER}) [ \t]+ // list marker = $2 - ([^\r]+? // list item text = $3 - (\n+)) - (?= (~0 | \2 ({MARKER}) [ \t]+)) - /gm, function(){...}); - */ - - var marker = _listItemMarkers[list_type]; - var re = new RegExp("(^[ \\t]*)(" + marker + ")[ \\t]+([^\\r]+?(\\n+))(?=(~0|\\1(" + marker + ")[ \\t]+))", "gm"); - var last_item_had_a_double_newline = false; - list_str = list_str.replace(re, - function(wholeMatch,m1,m2,m3){ - var item = m3; - var leading_space = m1; - var ends_with_double_newline = /\n\n$/.test(item); - var contains_double_newline = ends_with_double_newline || item.search(/\n{2,}/)>-1; - - if (contains_double_newline || last_item_had_a_double_newline) { - item = _RunBlockGamut(_Outdent(item), /* doNotUnhash = */ true); - } - else { - // Recursion for sub-lists: - item = _DoLists(_Outdent(item)); - item = item.replace(/\n$/,""); // chomp(item) - item = _RunSpanGamut(item); - } - last_item_had_a_double_newline = ends_with_double_newline; - return "<li>" + item + "</li>\n"; - } - ); - - // attacklab: strip sentinel - list_str = list_str.replace(/~0/g,""); - - g_list_level--; - return list_str; -} - - -var _DoCodeBlocks = function(text) { -// -// Process Markdown `<pre><code>` blocks. -// - - /* - text = text.replace(text, - /(?:\n\n|^) - ( // $1 = the code block -- one or more lines, starting with a space/tab - (?: - (?:[ ]{4}|\t) // Lines must start with a tab or a tab-width of spaces - attacklab: g_tab_width - .*\n+ - )+ - ) - (\n*[ ]{0,3}[^ \t\n]|(?=~0)) // attacklab: g_tab_width - /g,function(){...}); - */ - - // attacklab: sentinel workarounds for lack of \A and \Z, safari\khtml bug - text += "~0"; - - text = text.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g, - function(wholeMatch,m1,m2) { - var codeblock = m1; - var nextChar = m2; - - codeblock = _EncodeCode( _Outdent(codeblock)); - codeblock = _Detab(codeblock); - codeblock = codeblock.replace(/^\n+/g,""); // trim leading newlines - codeblock = codeblock.replace(/\n+$/g,""); // trim trailing whitespace - - codeblock = "<pre><code>" + codeblock + "\n</code></pre>"; - - return "\n\n" + codeblock + "\n\n" + nextChar; - } - ); - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -} - -var hashBlock = function(text) { - text = text.replace(/(^\n+|\n+$)/g,""); - return "\n\n~K" + (g_html_blocks.push(text)-1) + "K\n\n"; -} - - -var _DoCodeSpans = function(text) { -// -// * Backtick quotes are used for <code></code> spans. -// -// * You can use multiple backticks as the delimiters if you want to -// include literal backticks in the code span. So, this input: -// -// Just type ``foo `bar` baz`` at the prompt. -// -// Will translate to: -// -// <p>Just type <code>foo `bar` baz</code> at the prompt.</p> -// -// There's no arbitrary limit to the number of backticks you -// can use as delimters. If you need three consecutive backticks -// in your code, use four for delimiters, etc. -// -// * You can use spaces to get literal backticks at the edges: -// -// ... type `` `bar` `` ... -// -// Turns to: -// -// ... type <code>`bar`</code> ... -// - - /* - text = text.replace(/ - (^|[^\\]) // Character before opening ` can't be a backslash - (`+) // $2 = Opening run of ` - ( // $3 = The code block - [^\r]*? - [^`] // attacklab: work around lack of lookbehind - ) - \2 // Matching closer - (?!`) - /gm, function(){...}); - */ - - text = text.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm, - function(wholeMatch,m1,m2,m3,m4) { - var c = m3; - c = c.replace(/^([ \t]*)/g,""); // leading whitespace - c = c.replace(/[ \t]*$/g,""); // trailing whitespace - c = _EncodeCode(c); - return m1+"<code>"+c+"</code>"; - }); - - return text; -} - - -var _EncodeCode = function(text) { -// -// Encode/escape certain characters inside Markdown code runs. -// The point is that in code, these characters are literals, -// and lose their special Markdown meanings. -// - // Encode all ampersands; HTML entities are not - // entities within a Markdown code span. - text = text.replace(/&/g,"&"); - - // Do the angle bracket song and dance: - text = text.replace(/</g,"<"); - text = text.replace(/>/g,">"); - - // Now, escape characters that are magic in Markdown: - text = escapeCharacters(text,"\*_{}[]\\",false); - -// jj the line above breaks this: -//--- - -//* Item - -// 1. Subitem - -// special char: * -//--- - - return text; -} - - -var _DoItalicsAndBold = function(text) { - - // <strong> must go first: - text = text.replace(/(\*\*|__)(?=\S)([^\r]*?\S[\*_]*)\1/g, - "<strong>$2</strong>"); - - text = text.replace(/(\*|_)(?=\S)([^\r]*?\S)\1/g, - "<em>$2</em>"); - - return text; -} - - -var _DoBlockQuotes = function(text) { - - /* - text = text.replace(/ - ( // Wrap whole match in $1 - ( - ^[ \t]*>[ \t]? // '>' at the start of a line - .+\n // rest of the first line - (.+\n)* // subsequent consecutive lines - \n* // blanks - )+ - ) - /gm, function(){...}); - */ - - text = text.replace(/((^[ \t]*>[ \t]?.+\n(.+\n)*\n*)+)/gm, - function(wholeMatch,m1) { - var bq = m1; - - // attacklab: hack around Konqueror 3.5.4 bug: - // "----------bug".replace(/^-/g,"") == "bug" - - bq = bq.replace(/^[ \t]*>[ \t]?/gm,"~0"); // trim one level of quoting - - // attacklab: clean up hack - bq = bq.replace(/~0/g,""); - - bq = bq.replace(/^[ \t]+$/gm,""); // trim whitespace-only lines - bq = _RunBlockGamut(bq); // recurse - - bq = bq.replace(/(^|\n)/g,"$1 "); - // These leading spaces screw with <pre> content, so we need to fix that: - bq = bq.replace( - /(\s*<pre>[^\r]+?<\/pre>)/gm, - function(wholeMatch,m1) { - var pre = m1; - // attacklab: hack around Konqueror 3.5.4 bug: - pre = pre.replace(/^ /mg,"~0"); - pre = pre.replace(/~0/g,""); - return pre; - }); - - return hashBlock("<blockquote>\n" + bq + "\n</blockquote>"); - }); - return text; -} - - -var _FormParagraphs = function(text, doNotUnhash) { -// -// Params: -// $text - string to process with html <p> tags -// - - // Strip leading and trailing lines: - text = text.replace(/^\n+/g,""); - text = text.replace(/\n+$/g,""); - - var grafs = text.split(/\n{2,}/g); - var grafsOut = new Array(); - - // - // Wrap <p> tags. - // - var end = grafs.length; - for (var i=0; i<end; i++) { - var str = grafs[i]; - - // if this is an HTML marker, copy it - if (str.search(/~K(\d+)K/g) >= 0) { - grafsOut.push(str); - } - else if (str.search(/\S/) >= 0) { - str = _RunSpanGamut(str); - str = str.replace(/^([ \t]*)/g,"<p>"); - str += "</p>" - grafsOut.push(str); - } - - } - // - // Unhashify HTML blocks - // - if (!doNotUnhash) { - end = grafsOut.length; - for (var i=0; i<end; i++) { - // if this is a marker for an html block... - while (grafsOut[i].search(/~K(\d+)K/) >= 0) { - var blockText = g_html_blocks[RegExp.$1]; - blockText = blockText.replace(/\$/g,"$$$$"); // Escape any dollar signs - grafsOut[i] = grafsOut[i].replace(/~K\d+K/,blockText); - } - } - } - return grafsOut.join("\n\n"); -} - - -var _EncodeAmpsAndAngles = function(text) { -// Smart processing for ampersands and angle brackets that need to be encoded. - - // Ampersand-encoding based entirely on Nat Irons's Amputator MT plugin: - // http://bumppo.net/projects/amputator/ - text = text.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&"); - - // Encode naked <'s - text = text.replace(/<(?![a-z\/?\$!])/gi,"<"); - - return text; -} - - -var _EncodeBackslashEscapes = function(text) { -// -// Parameter: String. -// Returns: The string, with after processing the following backslash -// escape sequences. -// - - // attacklab: The polite way to do this is with the new - // escapeCharacters() function: - // - // text = escapeCharacters(text,"\\",true); - // text = escapeCharacters(text,"`*_{}[]()>#+-.!",true); - // - // ...but we're sidestepping its use of the (slow) RegExp constructor - // as an optimization for Firefox. This function gets called a LOT. - - text = text.replace(/\\(\\)/g,escapeCharacters_callback); - text = text.replace(/\\([`*_{}\[\]()>#+-.!])/g,escapeCharacters_callback); - return text; -} - - -var _DoAutoLinks = function(text) { - - text = text.replace(/<((https?|ftp|dict):[^'">\s]+)>/gi,"<a href=\"$1\">$1</a>"); - - // Email addresses: <address@domain.foo> - - /* - text = text.replace(/ - < - (?:mailto:)? - ( - [-.\w]+ - \@ - [-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+ - ) - > - /gi, _DoAutoLinks_callback()); - */ - text = text.replace(/<(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi, - function(wholeMatch,m1) { - return _EncodeEmailAddress( _UnescapeSpecialChars(m1) ); - } - ); - - return text; -} - - -var _EncodeEmailAddress = function(addr) { -// -// Input: an email address, e.g. "foo@example.com" -// -// Output: the email address as a mailto link, with each character -// of the address encoded as either a decimal or hex entity, in -// the hopes of foiling most address harvesting spam bots. E.g.: -// -// <a href="mailto:foo@e -// xample.com">foo -// @example.com</a> -// -// Based on a filter by Matthew Wickline, posted to the BBEdit-Talk -// mailing list: <http://tinyurl.com/yu7ue> -// - - // attacklab: why can't javascript speak hex? - function char2hex(ch) { - var hexDigits = '0123456789ABCDEF'; - var dec = ch.charCodeAt(0); - return(hexDigits.charAt(dec>>4) + hexDigits.charAt(dec&15)); - } - - var encode = [ - function(ch){return "&#"+ch.charCodeAt(0)+";";}, - function(ch){return "&#x"+char2hex(ch)+";";}, - function(ch){return ch;} - ]; - - addr = "mailto:" + addr; - - addr = addr.replace(/./g, function(ch) { - if (ch == "@") { - // this *must* be encoded. I insist. - ch = encode[Math.floor(Math.random()*2)](ch); - } else if (ch !=":") { - // leave ':' alone (to spot mailto: later) - var r = Math.random(); - // roughly 10% raw, 45% hex, 45% dec - ch = ( - r > .9 ? encode[2](ch) : - r > .45 ? encode[1](ch) : - encode[0](ch) - ); - } - return ch; - }); - - addr = "<a href=\"" + addr + "\">" + addr + "</a>"; - addr = addr.replace(/">.+:/g,"\">"); // strip the mailto: from the visible part - - return addr; -} - - -var _UnescapeSpecialChars = function(text) { -// -// Swap back in all the special characters we've hidden. -// - text = text.replace(/~E(\d+)E/g, - function(wholeMatch,m1) { - var charCodeToReplace = parseInt(m1); - return String.fromCharCode(charCodeToReplace); - } - ); - return text; -} - - -var _Outdent = function(text) { -// -// Remove one level of line-leading tabs or spaces -// - - // attacklab: hack around Konqueror 3.5.4 bug: - // "----------bug".replace(/^-/g,"") == "bug" - - text = text.replace(/^(\t|[ ]{1,4})/gm,"~0"); // attacklab: g_tab_width - - // attacklab: clean up hack - text = text.replace(/~0/g,"") - - return text; -} - -var _Detab = function (text) { - if (!/\t/.test(text)) - return text; - - var spaces = [" ", " ", " ", " "], - skew = 0, - v; - - return text.replace(/[\n\t]/g, function (match, offset) { - if (match === "\n") { - skew = offset + 1; - return match; - } - v = (offset - skew) % 4; - skew = offset + 1; - return spaces[v]; - }); -} - -// -// attacklab: Utility functions -// - - -var escapeCharacters = function(text, charsToEscape, afterBackslash) { - // First we have to escape the escape characters so that - // we can build a character class out of them - var regexString = "([" + charsToEscape.replace(/([\[\]\\])/g,"\\$1") + "])"; - - if (afterBackslash) { - regexString = "\\\\" + regexString; - } - - var regex = new RegExp(regexString,"g"); - text = text.replace(regex,escapeCharacters_callback); - - return text; -} - - -var escapeCharacters_callback = function(wholeMatch,m1) { - var charCodeToEscape = m1.charCodeAt(0); - return "~E"+charCodeToEscape+"E"; -} - -} // end of Attacklab.showdown.converter - - -// Version 0.9 used the Showdown namespace instead of Attacklab.showdown -// The old namespace is deprecated, but we'll support it for now: -var Showdown = Attacklab.showdown; - -// If anyone's interested, tell the world that this file's been loaded -if (Attacklab.fileLoaded) { - Attacklab.fileLoaded("showdown.js"); -} \ No newline at end of file diff --git a/forum/skins/light/media/js/wmd/.svn/text-base/wmd-test.html.svn-base b/forum/skins/light/media/js/wmd/.svn/text-base/wmd-test.html.svn-base deleted file mode 100755 index d748501a5bebca30536efb3a828d3f0faa335743..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/.svn/text-base/wmd-test.html.svn-base +++ /dev/null @@ -1,158 +0,0 @@ -<!DOCTYPE html> -<html> - - <head> - <title>Test WMD Page</title> - - <link rel="stylesheet" type="text/css" href="wmd.css" /> - - <meta http-equiv="pragma" content="no-cache"> - <meta http-equiv="cache-control" content="no-cache"> - <meta http-equiv="pragma-directive" content="no-cache"> - <meta http-equiv="cache-directive" content="no-cache"> - <meta http-equiv="expires" content="0"> - - <script type="text/javascript" src="jQuery/jquery-1.2.6.js"></script> - <script type="text/javascript" src="showdown.js"></script> - </head> - - <body> - <div id="wmd-button-bar" class="wmd-panel"></div> - <br/> - <textarea id="editor" class="wmd-panel"></textarea> - <br/> - <div id="previewer" class="wmd-panel"></div> - <br/> - <div id="wmd-output" class="wmd-panel"></div> - - <p>To test that page up/down and arrow keys work, copy this above the WMD - control.</p> - - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - Scroll Down!<br/> - - <script type="text/javascript" src="wmd.js"></script> - </body> -</html> \ No newline at end of file diff --git a/forum/skins/light/media/js/wmd/.svn/text-base/wmd.css.svn-base b/forum/skins/light/media/js/wmd/.svn/text-base/wmd.css.svn-base deleted file mode 100755 index 2508c7417f94e97f4b087bca83b11e42e14232ae..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/.svn/text-base/wmd.css.svn-base +++ /dev/null @@ -1,117 +0,0 @@ -body -{ - background-color: White -} - -#wmd-editor -{ - background-color: Aquamarine; -} - -#wmd-preview -{ - background-color: LightSkyBlue; -} - -#wmd-output -{ - background-color: Pink; -} - -#wmd-button-row -{ - position: relative; - margin-left: 5px; - margin-right: 5px; - margin-bottom: 5px; - margin-top: 10px; - padding: 0px; - height: 20px; -} - -.wmd-spacer -{ - width: 1px; - height: 20px; - margin-left: 14px; - - position: absolute; - background-color: Silver; - display: inline-block; - list-style: none; -} - -.wmd-button -{ - width: 20px; - height: 20px; - margin-left: 5px; - margin-right: 5px; - - position: absolute; - background-image: url(images/wmd-buttons.png); - background-repeat: no-repeat; - background-position: 0px 0px; - display: inline-block; - list-style: none; -} - -.wmd-button > a -{ - width: 20px; - height: 20px; - margin-left: 5px; - margin-right: 5px; - - position: absolute; - display: inline-block; -} - - -/* sprite button slicing style information */ -#wmd-button-bar #wmd-bold-button {left: 0px; background-position: 0px 0;} -#wmd-button-bar #wmd-italic-button {left: 25px; background-position: -20px 0;} -#wmd-button-bar #wmd-spacer1 {left: 50px;} -#wmd-button-bar #wmd-link-button {left: 75px; background-position: -40px 0;} -#wmd-button-bar #wmd-quote-button {left: 100px; background-position: -60px 0;} -#wmd-button-bar #wmd-code-button {left: 125px; background-position: -80px 0;} -#wmd-button-bar #wmd-image-button {left: 150px; background-position: -100px 0;} -#wmd-button-bar #wmd-spacer2 {left: 175px;} -#wmd-button-bar #wmd-olist-button {left: 200px; background-position: -120px 0;} -#wmd-button-bar #wmd-ulist-button {left: 225px; background-position: -140px 0;} -#wmd-button-bar #wmd-heading-button {left: 250px; background-position: -160px 0;} -#wmd-button-bar #wmd-hr-button {left: 275px; background-position: -180px 0;} -#wmd-button-bar #wmd-spacer3 {left: 300px;} -#wmd-button-bar #wmd-undo-button {left: 325px; background-position: -200px 0;} -#wmd-button-bar #wmd-redo-button {left: 350px; background-position: -220px 0;} -#wmd-button-bar #wmd-help-button {right: 0px; background-position: -240px 0;} - - -.wmd-prompt-background -{ - background-color: Black; -} - -.wmd-prompt-dialog -{ - border: 1px solid #999999; - background-color: #F5F5F5; -} - -.wmd-prompt-dialog > div { - font-size: 0.8em; - font-family: arial, helvetica, sans-serif; -} - - -.wmd-prompt-dialog > form > input[type="text"] { - border: 1px solid #999999; - color: black; -} - -.wmd-prompt-dialog > form > input[type="button"]{ - border: 1px solid #888888; - font-family: trebuchet MS, helvetica, sans-serif; - font-size: 0.8em; - font-weight: bold; -} diff --git a/forum/skins/light/media/js/wmd/.svn/text-base/wmd.js.svn-base b/forum/skins/light/media/js/wmd/.svn/text-base/wmd.js.svn-base deleted file mode 100755 index fd429a4b241445b9ea532bc22ca6bc5705e29c38..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/.svn/text-base/wmd.js.svn-base +++ /dev/null @@ -1,2503 +0,0 @@ -jQuery.extend({createUploadIframe:function(d,b){var a="jUploadFrame"+d;if(window.ActiveXObject){var c=document.createElement('<iframe id="'+a+'" name="'+a+'" />');if(typeof b=="boolean"){c.src="javascript:false"}else{if(typeof b=="string"){c.src=b}}}else{var c=document.createElement("iframe");c.id=a;c.name=a}c.style.position="absolute";c.style.top="-1000px";c.style.left="-1000px";document.body.appendChild(c);return c},createUploadForm:function(g,b){var e="jUploadForm"+g;var a="jUploadFile"+g;var d=$('<form action="" method="POST" name="'+e+'" id="'+e+'" enctype="multipart/form-data"></form>');var c=$("#"+b);var f=$(c).clone();$(c).attr("id",a);$(c).before(f);$(c).appendTo(d);$(d).css("position","absolute");$(d).css("top","-1200px");$(d).css("left","-1200px");$(d).appendTo("body");return d},ajaxFileUpload:function(k){k=jQuery.extend({},jQuery.ajaxSettings,k);var a=new Date().getTime();var b=jQuery.createUploadForm(a,k.fileElementId);var i=jQuery.createUploadIframe(a,k.secureuri);var h="jUploadFrame"+a;var j="jUploadForm"+a;if(k.global&&!jQuery.active++){jQuery.event.trigger("ajaxStart")}var c=false;var f={};if(k.global){jQuery.event.trigger("ajaxSend",[f,k])}var d=function(l){var p=document.getElementById(h);try{if(p.contentWindow){f.responseText=p.contentWindow.document.body?p.contentWindow.document.body.innerText:null;f.responseXML=p.contentWindow.document.XMLDocument?p.contentWindow.document.XMLDocument:p.contentWindow.document}else{if(p.contentDocument){f.responseText=p.contentDocument.document.body?p.contentDocument.document.body.textContent||document.body.innerText:null;f.responseXML=p.contentDocument.document.XMLDocument?p.contentDocument.document.XMLDocument:p.contentDocument.document}}}catch(o){jQuery.handleError(k,f,null,o)}if(f||l=="timeout"){c=true;var m;try{m=l!="timeout"?"success":"error";if(m!="error"){var n=jQuery.uploadHttpData(f,k.dataType);if(k.success){k.success(n,m)}if(k.global){jQuery.event.trigger("ajaxSuccess",[f,k])}}else{jQuery.handleError(k,f,m)}}catch(o){m="error";jQuery.handleError(k,f,m,o)}if(k.global){jQuery.event.trigger("ajaxComplete",[f,k])}if(k.global&&!--jQuery.active){jQuery.event.trigger("ajaxStop")}if(k.complete){k.complete(f,m)}jQuery(p).unbind();setTimeout(function(){try{$(p).remove();$(b).remove()}catch(q){jQuery.handleError(k,f,null,q)}},100);f=null}};if(k.timeout>0){setTimeout(function(){if(!c){d("timeout")}},k.timeout)}try{var b=$("#"+j);$(b).attr("action",k.url);$(b).attr("method","POST");$(b).attr("target",h);if(b.encoding){b.encoding="multipart/form-data"}else{b.enctype="multipart/form-data"}$(b).submit()}catch(g){jQuery.handleError(k,f,null,g)}if(window.attachEvent){document.getElementById(h).attachEvent("onload",d)}else{document.getElementById(h).addEventListener("load",d,false)}return{abort:function(){}}},uploadHttpData:function(r,type){var data=!type;data=type=="xml"||data?r.responseXML:r.responseText;if(type=="script"){jQuery.globalEval(data)}if(type=="json"){eval("data = "+data)}if(type=="html"){jQuery("<div>").html(data).evalScripts()}return data}}); -/*Upload call*/ -function ajaxFileUpload(imageUrl) -{ - $("#loading").ajaxStart(function(){ - $(this).show(); - }).ajaxComplete(function(){ - $(this).hide(); - }); - - $("#upload").ajaxStart(function(){ - $(this).hide(); - }).ajaxComplete(function(){ - $(this).show(); - }); - - $.ajaxFileUpload - ( - { - url: scriptUrl+'upload/', - secureuri:false, - fileElementId:'file-upload', - dataType: 'xml', - success: function (data, status) - { - var fileURL = $(data).find('file_url').text(); - var error = $(data).find('error').text(); - if(error != ''){ - alert(error); - }else{ - imageUrl.attr('value', appUrl + fileURL); - } - - }, - error: function (data, status, e) - { - alert(e); - } - } - ); - - return false; -} - -var Attacklab = Attacklab || {}; - -Attacklab.wmdBase = function(){ - - // A few handy aliases for readability. - var wmd = top.Attacklab; - var doc = top.document; - var re = top.RegExp; - var nav = top.navigator; - - // Some namespaces. - wmd.Util = {}; - wmd.Position = {}; - wmd.Command = {}; - wmd.Global = {}; - - var util = wmd.Util; - var position = wmd.Position; - var command = wmd.Command; - var global = wmd.Global; - - - // Used to work around some browser bugs where we can't use feature testing. - global.isIE = /msie/.test(nav.userAgent.toLowerCase()); - global.isIE_5or6 = /msie 6/.test(nav.userAgent.toLowerCase()) || /msie 5/.test(nav.userAgent.toLowerCase()); - global.isIE_7plus = global.isIE && !global.isIE_5or6; - global.isOpera = /opera/.test(nav.userAgent.toLowerCase()); - global.isKonqueror = /konqueror/.test(nav.userAgent.toLowerCase()); - - - // ------------------------------------------------------------------- - // YOUR CHANGES GO HERE - // - // I've tried to localize the things you are likely to change to - // this area. - // ------------------------------------------------------------------- - - // The text that appears on the upper part of the dialog box when - // entering links. - var imageDialogText = "<p style='margin-top: 0px'>" + $.i18n._('enter image url') + "</p>"; - var linkDialogText = "<p style='margin-top: 0px'>" + $.i18n._('enter url') + "</p>"; - var uploadImageHTML ="<div>" + $.i18n._('upload image') + "</div>" + - "<input type=\"file\" name=\"file-upload\" id=\"file-upload\" size=\"26\" "+ - "onchange=\"return ajaxFileUpload($('#image-url'));\"/><br>" + - "<img id=\"loading\" src=\"" + mediaUrl("media/images/indicator.gif") + "\" style=\"display:none;\"/>"; - - // The default text that appears in the dialog input box when entering - // links. - var imageDefaultText = "http://"; - var linkDefaultText = "http://"; - - // The location of your button images relative to the base directory. - var imageDirectory = "images/"; - - // Some intervals in ms. These can be adjusted to reduce the control's load. - var previewPollInterval = 500; - var pastePollInterval = 100; - - // The link and title for the help button - var helpLink = "http://daringfireball.net/projects/markdown/syntax"; - var helpHoverTitle = "MarkDown Syntax"; - var helpTarget = "_blank"; - - // ------------------------------------------------------------------- - // END OF YOUR CHANGES - // ------------------------------------------------------------------- - - // A collection of the important regions on the page. - // Cached so we don't have to keep traversing the DOM. - wmd.PanelCollection = function(){ - this.buttonBar = doc.getElementById("wmd-button-bar"); - this.preview = doc.getElementById("previewer"); - this.output = doc.getElementById("wmd-output"); - this.input = doc.getElementById("editor"); - }; - - // This PanelCollection object can't be filled until after the page - // has loaded. - wmd.panels = undefined; - - // Internet explorer has problems with CSS sprite buttons that use HTML - // lists. When you click on the background image "button", IE will - // select the non-existent link text and discard the selection in the - // textarea. The solution to this is to cache the textarea selection - // on the button's mousedown event and set a flag. In the part of the - // code where we need to grab the selection, we check for the flag - // and, if it's set, use the cached area instead of querying the - // textarea. - // - // This ONLY affects Internet Explorer (tested on versions 6, 7 - // and 8) and ONLY on button clicks. Keyboard shortcuts work - // normally since the focus never leaves the textarea. - wmd.ieCachedRange = null; // cached textarea selection - wmd.ieRetardedClick = false; // flag - - // Returns true if the DOM element is visible, false if it's hidden. - // Checks if display is anything other than none. - util.isVisible = function (elem) { - - if (window.getComputedStyle) { - // Most browsers - return window.getComputedStyle(elem, null).getPropertyValue("display") !== "none"; - } - else if (elem.currentStyle) { - // IE - return elem.currentStyle["display"] !== "none"; - } - }; - - - // Adds a listener callback to a DOM element which is fired on a specified - // event. - util.addEvent = function(elem, event, listener){ - if (elem.attachEvent) { - // IE only. The "on" is mandatory. - elem.attachEvent("on" + event, listener); - } - else { - // Other browsers. - elem.addEventListener(event, listener, false); - } - }; - - - // Removes a listener callback from a DOM element which is fired on a specified - // event. - util.removeEvent = function(elem, event, listener){ - if (elem.detachEvent) { - // IE only. The "on" is mandatory. - elem.detachEvent("on" + event, listener); - } - else { - // Other browsers. - elem.removeEventListener(event, listener, false); - } - }; - - // Converts \r\n and \r to \n. - util.fixEolChars = function(text){ - text = text.replace(/\r\n/g, "\n"); - text = text.replace(/\r/g, "\n"); - return text; - }; - - // Extends a regular expression. Returns a new RegExp - // using pre + regex + post as the expression. - // Used in a few functions where we have a base - // expression and we want to pre- or append some - // conditions to it (e.g. adding "$" to the end). - // The flags are unchanged. - // - // regex is a RegExp, pre and post are strings. - util.extendRegExp = function(regex, pre, post){ - - if (pre === null || pre === undefined) - { - pre = ""; - } - if(post === null || post === undefined) - { - post = ""; - } - - var pattern = regex.toString(); - var flags = ""; - - // Replace the flags with empty space and store them. - // Technically, this can match incorrect flags like "gmm". - var result = pattern.match(/\/([gim]*)$/); - if (result === null) { - flags = result[0]; - } - else { - flags = ""; - } - - // Remove the flags and slash delimiters from the regular expression. - pattern = pattern.replace(/(^\/|\/[gim]*$)/g, ""); - pattern = pre + pattern + post; - - return new RegExp(pattern, flags); - } - - - // Sets the image for a button passed to the WMD editor. - // Returns a new element with the image attached. - // Adds several style properties to the image. - util.createImage = function(img){ - - var imgPath = imageDirectory + img; - - var elem = doc.createElement("img"); - elem.className = "wmd-button"; - elem.src = imgPath; - - return elem; - }; - - - // This simulates a modal dialog box and asks for the URL when you - // click the hyperlink or image buttons. - // - // text: The html for the input box. - // defaultInputText: The default value that appears in the input box. - // makeLinkMarkdown: The function which is executed when the prompt is dismissed, either via OK or Cancel - util.prompt = function(text, defaultInputText, makeLinkMarkdown){ - - // These variables need to be declared at this level since they are used - // in multiple functions. - var dialog; // The dialog box. - var background; // The background beind the dialog box. - var input; // The text box where you enter the hyperlink. - var type = 0; - // The dialog box type(0: Link, 1: Image) - if(arguments.length == 4){ - type = arguments[3]; - } - - if (defaultInputText === undefined) { - defaultInputText = ""; - } - - // Used as a keydown event handler. Esc dismisses the prompt. - // Key code 27 is ESC. - var checkEscape = function(key){ - var code = (key.charCode || key.keyCode); - if (code === 27) { - close(true); - } - }; - - // Dismisses the hyperlink input box. - // isCancel is true if we don't care about the input text. - // isCancel is false if we are going to keep the text. - var close = function(isCancel){ - util.removeEvent(doc.body, "keydown", checkEscape); - var text = input.value; - - if (isCancel){ - text = null; - } - else{ - // Fixes common pasting errors. - text = text.replace('http://http://', 'http://'); - text = text.replace('http://https://', 'https://'); - text = text.replace('http://ftp://', 'ftp://'); - - if (text.indexOf('http://') === -1 && text.indexOf('ftp://') === -1 && text.indexOf('https://') === -1) { - text = 'http://' + text; - } - } - - dialog.parentNode.removeChild(dialog); - background.parentNode.removeChild(background); - makeLinkMarkdown(text); - return false; - }; - - // Creates the background behind the hyperlink text entry box. - // Most of this has been moved to CSS but the div creation and - // browser-specific hacks remain here. - var createBackground = function(){ - - background = doc.createElement("div"); - background.className = "wmd-prompt-background"; - style = background.style; - style.position = "absolute"; - style.top = "0"; - - style.zIndex = "1000"; - - // Some versions of Konqueror don't support transparent colors - // so we make the whole window transparent. - // - // Is this necessary on modern konqueror browsers? - if (global.isKonqueror){ - style.backgroundColor = "transparent"; - } - else if (global.isIE){ - style.filter = "alpha(opacity=50)"; - } - else { - style.opacity = "0.5"; - } - - var pageSize = position.getPageSize(); - style.height = pageSize[1] + "px"; - - if(global.isIE){ - style.left = doc.documentElement.scrollLeft; - style.width = doc.documentElement.clientWidth; - } - else { - style.left = "0"; - style.width = "100%"; - } - - doc.body.appendChild(background); - }; - - // Create the text input box form/window. - var createDialog = function(){ - - // The main dialog box. - dialog = doc.createElement("div"); - dialog.className = "wmd-prompt-dialog"; - dialog.style.padding = "10px;"; - dialog.style.position = "fixed"; - dialog.style.width = "400px"; - dialog.style.zIndex = "1001"; - - // The dialog text. - var question = doc.createElement("div"); - question.innerHTML = text; - question.style.padding = "5px"; - dialog.appendChild(question); - - // The web form container for the text box and buttons. - var form = doc.createElement("form"); - form.onsubmit = function(){ return close(false); }; - style = form.style; - style.padding = "0"; - style.margin = "0"; - style.cssFloat = "left"; - style.width = "100%"; - style.textAlign = "center"; - style.position = "relative"; - dialog.appendChild(form); - - // The input text box - input = doc.createElement("input"); - input.id = "image-url"; - input.type = "text"; - input.value = defaultInputText; - style = input.style; - style.display = "block"; - style.width = "80%"; - style.marginLeft = style.marginRight = "auto"; - form.appendChild(input); - - // The upload file input - var upload = doc.createElement("div"); - upload.innerHTML = uploadImageHTML; - upload.style.padding = "5px"; - form.appendChild(upload); - - // The ok button - var okButton = doc.createElement("input"); - okButton.type = "button"; - okButton.onclick = function(){ return close(false); }; - okButton.value = "OK"; - style = okButton.style; - style.margin = "10px"; - style.display = "inline"; - style.width = "7em"; - - - // The cancel button - var cancelButton = doc.createElement("input"); - cancelButton.type = "button"; - cancelButton.onclick = function(){ return close(true); }; - cancelButton.value = "Cancel"; - style = cancelButton.style; - style.margin = "10px"; - style.display = "inline"; - style.width = "7em"; - - // The order of these buttons is different on macs. - if (/mac/.test(nav.platform.toLowerCase())) { - form.appendChild(cancelButton); - form.appendChild(okButton); - } - else { - form.appendChild(okButton); - form.appendChild(cancelButton); - } - - util.addEvent(doc.body, "keydown", checkEscape); - dialog.style.top = "50%"; - dialog.style.left = "50%"; - dialog.style.display = "block"; - if(global.isIE_5or6){ - dialog.style.position = "absolute"; - dialog.style.top = doc.documentElement.scrollTop + 200 + "px"; - dialog.style.left = "50%"; - } - doc.body.appendChild(dialog); - - // This has to be done AFTER adding the dialog to the form if you - // want it to be centered. - dialog.style.marginTop = -(position.getHeight(dialog) / 2) + "px"; - dialog.style.marginLeft = -(position.getWidth(dialog) / 2) + "px"; - - }; - - createBackground(); - - // Why is this in a zero-length timeout? - // Is it working around a browser bug? - top.setTimeout(function(){ - - createDialog(); - - var defTextLen = defaultInputText.length; - if (input.selectionStart !== undefined) { - input.selectionStart = 0; - input.selectionEnd = defTextLen; - } - else if (input.createTextRange) { - var range = input.createTextRange(); - range.collapse(false); - range.moveStart("character", -defTextLen); - range.moveEnd("character", defTextLen); - range.select(); - } - - input.focus(); - }, 0); - }; - - - // UNFINISHED - // The assignment in the while loop makes jslint cranky. - // I'll change it to a better loop later. - position.getTop = function(elem, isInner){ - var result = elem.offsetTop; - if (!isInner) { - while (elem = elem.offsetParent) { - result += elem.offsetTop; - } - } - return result; - }; - - position.getHeight = function (elem) { - return elem.offsetHeight || elem.scrollHeight; - }; - - position.getWidth = function (elem) { - return elem.offsetWidth || elem.scrollWidth; - }; - - position.getPageSize = function(){ - - var scrollWidth, scrollHeight; - var innerWidth, innerHeight; - - // It's not very clear which blocks work with which browsers. - if(self.innerHeight && self.scrollMaxY){ - scrollWidth = doc.body.scrollWidth; - scrollHeight = self.innerHeight + self.scrollMaxY; - } - else if(doc.body.scrollHeight > doc.body.offsetHeight){ - scrollWidth = doc.body.scrollWidth; - scrollHeight = doc.body.scrollHeight; - } - else{ - scrollWidth = doc.body.offsetWidth; - scrollHeight = doc.body.offsetHeight; - } - - if(self.innerHeight){ - // Non-IE browser - innerWidth = self.innerWidth; - innerHeight = self.innerHeight; - } - else if(doc.documentElement && doc.documentElement.clientHeight){ - // Some versions of IE (IE 6 w/ a DOCTYPE declaration) - innerWidth = doc.documentElement.clientWidth; - innerHeight = doc.documentElement.clientHeight; - } - else if(doc.body){ - // Other versions of IE - innerWidth = doc.body.clientWidth; - innerHeight = doc.body.clientHeight; - } - - var maxWidth = Math.max(scrollWidth, innerWidth); - var maxHeight = Math.max(scrollHeight, innerHeight); - return [maxWidth, maxHeight, innerWidth, innerHeight]; - }; - - // Watches the input textarea, polling at an interval and runs - // a callback function if anything has changed. - wmd.inputPoller = function(callback, interval){ - - var pollerObj = this; - var inputArea = wmd.panels.input; - - // Stored start, end and text. Used to see if there are changes to the input. - var lastStart; - var lastEnd; - var markdown; - - var killHandle; // Used to cancel monitoring on destruction. - // Checks to see if anything has changed in the textarea. - // If so, it runs the callback. - this.tick = function(){ - - if (!util.isVisible(inputArea)) { - return; - } - - // Update the selection start and end, text. - if (inputArea.selectionStart || inputArea.selectionStart === 0) { - var start = inputArea.selectionStart; - var end = inputArea.selectionEnd; - if (start != lastStart || end != lastEnd) { - lastStart = start; - lastEnd = end; - - if (markdown != inputArea.value) { - markdown = inputArea.value; - return true; - } - } - } - return false; - }; - - - var doTickCallback = function(){ - - if (!util.isVisible(inputArea)) { - return; - } - - // If anything has changed, call the function. - if (pollerObj.tick()) { - callback(); - } - }; - - // Set how often we poll the textarea for changes. - var assignInterval = function(){ - // previewPollInterval is set at the top of the namespace. - killHandle = top.setInterval(doTickCallback, interval); - }; - - this.destroy = function(){ - top.clearInterval(killHandle); - }; - - assignInterval(); - }; - - // Handles pushing and popping TextareaStates for undo/redo commands. - // I should rename the stack variables to list. - wmd.undoManager = function(callback){ - - var undoObj = this; - var undoStack = []; // A stack of undo states - var stackPtr = 0; // The index of the current state - var mode = "none"; - var lastState; // The last state - var poller; - var timer; // The setTimeout handle for cancelling the timer - var inputStateObj; - - // Set the mode for later logic steps. - var setMode = function(newMode, noSave){ - - if (mode != newMode) { - mode = newMode; - if (!noSave) { - saveState(); - } - } - - if (!global.isIE || mode != "moving") { - timer = top.setTimeout(refreshState, 1); - } - else { - inputStateObj = null; - } - }; - - var refreshState = function(){ - inputStateObj = new wmd.TextareaState(); - poller.tick(); - timer = undefined; - }; - - this.setCommandMode = function(){ - mode = "command"; - saveState(); - timer = top.setTimeout(refreshState, 0); - }; - - this.canUndo = function(){ - return stackPtr > 1; - }; - - this.canRedo = function(){ - if (undoStack[stackPtr + 1]) { - return true; - } - return false; - }; - - // Removes the last state and restores it. - this.undo = function(){ - - if (undoObj.canUndo()) { - if (lastState) { - // What about setting state -1 to null or checking for undefined? - lastState.restore(); - lastState = null; - } - else { - undoStack[stackPtr] = new wmd.TextareaState(); - undoStack[--stackPtr].restore(); - - if (callback) { - callback(); - } - } - } - - mode = "none"; - wmd.panels.input.focus(); - refreshState(); - }; - - // Redo an action. - this.redo = function(){ - - if (undoObj.canRedo()) { - - undoStack[++stackPtr].restore(); - - if (callback) { - callback(); - } - } - - mode = "none"; - wmd.panels.input.focus(); - refreshState(); - }; - - // Push the input area state to the stack. - var saveState = function(){ - - var currState = inputStateObj || new wmd.TextareaState(); - - if (!currState) { - return false; - } - if (mode == "moving") { - if (!lastState) { - lastState = currState; - } - return; - } - if (lastState) { - if (undoStack[stackPtr - 1].text != lastState.text) { - undoStack[stackPtr++] = lastState; - } - lastState = null; - } - undoStack[stackPtr++] = currState; - undoStack[stackPtr + 1] = null; - if (callback) { - callback(); - } - }; - - var handleCtrlYZ = function(event){ - - var handled = false; - - if (event.ctrlKey || event.metaKey) { - - // IE and Opera do not support charCode. - var keyCode = event.charCode || event.keyCode; - var keyCodeChar = String.fromCharCode(keyCode); - - switch (keyCodeChar) { - - case "y": - undoObj.redo(); - handled = true; - break; - - case "z": - if (!event.shiftKey) { - undoObj.undo(); - } - else { - undoObj.redo(); - } - handled = true; - break; - } - } - - if (handled) { - if (event.preventDefault) { - event.preventDefault(); - } - if (top.event) { - top.event.returnValue = false; - } - return; - } - }; - - // Set the mode depending on what is going on in the input area. - var handleModeChange = function(event){ - - if (!event.ctrlKey && !event.metaKey) { - - var keyCode = event.keyCode; - - if ((keyCode >= 33 && keyCode <= 40) || (keyCode >= 63232 && keyCode <= 63235)) { - // 33 - 40: page up/dn and arrow keys - // 63232 - 63235: page up/dn and arrow keys on safari - setMode("moving"); - } - else if (keyCode == 8 || keyCode == 46 || keyCode == 127) { - // 8: backspace - // 46: delete - // 127: delete - setMode("deleting"); - } - else if (keyCode == 13) { - // 13: Enter - setMode("newlines"); - } - else if (keyCode == 27) { - // 27: escape - setMode("escape"); - } - else if ((keyCode < 16 || keyCode > 20) && keyCode != 91) { - // 16-20 are shift, etc. - // 91: left window key - // I think this might be a little messed up since there are - // a lot of nonprinting keys above 20. - setMode("typing"); - } - } - }; - - var setEventHandlers = function(){ - - util.addEvent(wmd.panels.input, "keypress", function(event){ - // keyCode 89: y - // keyCode 90: z - if ((event.ctrlKey || event.metaKey) && (event.keyCode == 89 || event.keyCode == 90)) { - event.preventDefault(); - } - }); - - var handlePaste = function(){ - if (global.isIE || (inputStateObj && inputStateObj.text != wmd.panels.input.value)) { - if (timer == undefined) { - mode = "paste"; - saveState(); - refreshState(); - } - } - }; - - // pastePollInterval is specified at the beginning of this namespace. - poller = new wmd.inputPoller(handlePaste, pastePollInterval); - - util.addEvent(wmd.panels.input, "keydown", handleCtrlYZ); - util.addEvent(wmd.panels.input, "keydown", handleModeChange); - - util.addEvent(wmd.panels.input, "mousedown", function(){ - setMode("moving"); - }); - wmd.panels.input.onpaste = handlePaste; - wmd.panels.input.ondrop = handlePaste; - }; - - var init = function(){ - setEventHandlers(); - refreshState(); - saveState(); - }; - - this.destroy = function(){ - if (poller) { - poller.destroy(); - } - }; - - init(); - }; - - // I think my understanding of how the buttons and callbacks are stored in the array is incomplete. - wmd.editor = function(previewRefreshCallback){ - - if (!previewRefreshCallback) { - previewRefreshCallback = function(){}; - } - - var inputBox = wmd.panels.input; - - var offsetHeight = 0; - - var editObj = this; - - var mainDiv; - var mainSpan; - - var div; // This name is pretty ambiguous. I should rename this. - - // Used to cancel recurring events from setInterval. - var creationHandle; - - var undoMgr; // The undo manager - - // Perform the button's action. - var doClick = function(button){ - - inputBox.focus(); - - if (button.textOp) { - - if (undoMgr) { - undoMgr.setCommandMode(); - } - - var state = new wmd.TextareaState(); - - if (!state) { - return; - } - - var chunks = state.getChunks(); - - // Some commands launch a "modal" prompt dialog. Javascript - // can't really make a modal dialog box and the WMD code - // will continue to execute while the dialog is displayed. - // This prevents the dialog pattern I'm used to and means - // I can't do something like this: - // - // var link = CreateLinkDialog(); - // makeMarkdownLink(link); - // - // Instead of this straightforward method of handling a - // dialog I have to pass any code which would execute - // after the dialog is dismissed (e.g. link creation) - // in a function parameter. - // - // Yes this is awkward and I think it sucks, but there's - // no real workaround. Only the image and link code - // create dialogs and require the function pointers. - var fixupInputArea = function(){ - - inputBox.focus(); - - if (chunks) { - state.setChunks(chunks); - } - - state.restore(); - previewRefreshCallback(); - }; - - var useDefaultText = true; - var noCleanup = button.textOp(chunks, fixupInputArea, useDefaultText); - - if(!noCleanup) { - fixupInputArea(); - } - - } - - if (button.execute) { - button.execute(editObj); - } - }; - - var setUndoRedoButtonStates = function(){ - if(undoMgr){ - setupButton(document.getElementById("wmd-undo-button"), undoMgr.canUndo()); - setupButton(document.getElementById("wmd-redo-button"), undoMgr.canRedo()); - } - }; - - var setupButton = function(button, isEnabled) { - - var normalYShift = "0px"; - var disabledYShift = "-20px"; - var highlightYShift = "-40px"; - - if(isEnabled) { - button.style.backgroundPosition = button.XShift + " " + normalYShift; - button.onmouseover = function(){ - this.style.backgroundPosition = this.XShift + " " + highlightYShift; - }; - - button.onmouseout = function(){ - this.style.backgroundPosition = this.XShift + " " + normalYShift; - }; - - // IE tries to select the background image "button" text (it's - // implemented in a list item) so we have to cache the selection - // on mousedown. - if(global.isIE) { - button.onmousedown = function() { - wmd.ieRetardedClick = true; - wmd.ieCachedRange = document.selection.createRange(); - }; - } - - if (!button.isHelp) - { - button.onclick = function() { - if (this.onmouseout) { - this.onmouseout(); - } - doClick(this); - return false; - } - } - } - else { - button.style.backgroundPosition = button.XShift + " " + disabledYShift; - button.onmouseover = button.onmouseout = button.onclick = function(){}; - } - } - - var makeSpritedButtonRow = function(){ - - var buttonBar = document.getElementById("wmd-button-bar"); - - var normalYShift = "0px"; - var disabledYShift = "-20px"; - var highlightYShift = "-40px"; - - var buttonRow = document.createElement("ul"); - buttonRow.id = "wmd-button-row"; - buttonRow = buttonBar.appendChild(buttonRow); - - - var boldButton = document.createElement("li"); - boldButton.className = "wmd-button"; - boldButton.id = "wmd-bold-button"; - boldButton.title = "Strong <strong> Ctrl+B"; - boldButton.XShift = "0px"; - boldButton.textOp = command.doBold; - setupButton(boldButton, true); - buttonRow.appendChild(boldButton); - - var italicButton = document.createElement("li"); - italicButton.className = "wmd-button"; - italicButton.id = "wmd-italic-button"; - italicButton.title = "Emphasis <em> Ctrl+I"; - italicButton.XShift = "-20px"; - italicButton.textOp = command.doItalic; - setupButton(italicButton, true); - buttonRow.appendChild(italicButton); - - var spacer1 = document.createElement("li"); - spacer1.className = "wmd-spacer"; - spacer1.id = "wmd-spacer1"; - buttonRow.appendChild(spacer1); - - var linkButton = document.createElement("li"); - linkButton.className = "wmd-button"; - linkButton.id = "wmd-link-button"; - linkButton.title = "Hyperlink <a> Ctrl+L"; - linkButton.XShift = "-40px"; - linkButton.textOp = function(chunk, postProcessing, useDefaultText){ - return command.doLinkOrImage(chunk, postProcessing, false); - }; - setupButton(linkButton, true); - buttonRow.appendChild(linkButton); - - var quoteButton = document.createElement("li"); - quoteButton.className = "wmd-button"; - quoteButton.id = "wmd-quote-button"; - quoteButton.title = "Blockquote <blockquote> Ctrl+Q"; - quoteButton.XShift = "-60px"; - quoteButton.textOp = command.doBlockquote; - setupButton(quoteButton, true); - buttonRow.appendChild(quoteButton); - - var codeButton = document.createElement("li"); - codeButton.className = "wmd-button"; - codeButton.id = "wmd-code-button"; - codeButton.title = "Code Sample <pre><code> Ctrl+K"; - codeButton.XShift = "-80px"; - codeButton.textOp = command.doCode; - setupButton(codeButton, true); - buttonRow.appendChild(codeButton); - - var imageButton = document.createElement("li"); - imageButton.className = "wmd-button"; - imageButton.id = "wmd-image-button"; - imageButton.title = "Image <img> Ctrl+G"; - imageButton.XShift = "-100px"; - imageButton.textOp = function(chunk, postProcessing, useDefaultText){ - return command.doLinkOrImage(chunk, postProcessing, true); - }; - setupButton(imageButton, true); - buttonRow.appendChild(imageButton); - - var spacer2 = document.createElement("li"); - spacer2.className = "wmd-spacer"; - spacer2.id = "wmd-spacer2"; - buttonRow.appendChild(spacer2); - - var olistButton = document.createElement("li"); - olistButton.className = "wmd-button"; - olistButton.id = "wmd-olist-button"; - olistButton.title = "Numbered List <ol> Ctrl+O"; - olistButton.XShift = "-120px"; - olistButton.textOp = function(chunk, postProcessing, useDefaultText){ - command.doList(chunk, postProcessing, true, useDefaultText); - }; - setupButton(olistButton, true); - buttonRow.appendChild(olistButton); - - var ulistButton = document.createElement("li"); - ulistButton.className = "wmd-button"; - ulistButton.id = "wmd-ulist-button"; - ulistButton.title = "Bulleted List <ul> Ctrl+U"; - ulistButton.XShift = "-140px"; - ulistButton.textOp = function(chunk, postProcessing, useDefaultText){ - command.doList(chunk, postProcessing, false, useDefaultText); - }; - setupButton(ulistButton, true); - buttonRow.appendChild(ulistButton); - - var headingButton = document.createElement("li"); - headingButton.className = "wmd-button"; - headingButton.id = "wmd-heading-button"; - headingButton.title = "Heading <h1>/<h2> Ctrl+H"; - headingButton.XShift = "-160px"; - headingButton.textOp = command.doHeading; - setupButton(headingButton, true); - buttonRow.appendChild(headingButton); - - var hrButton = document.createElement("li"); - hrButton.className = "wmd-button"; - hrButton.id = "wmd-hr-button"; - hrButton.title = "Horizontal Rule <hr> Ctrl+R"; - hrButton.XShift = "-180px"; - hrButton.textOp = command.doHorizontalRule; - setupButton(hrButton, true); - buttonRow.appendChild(hrButton); - - var spacer3 = document.createElement("li"); - spacer3.className = "wmd-spacer"; - spacer3.id = "wmd-spacer3"; - buttonRow.appendChild(spacer3); - - var undoButton = document.createElement("li"); - undoButton.className = "wmd-button"; - undoButton.id = "wmd-undo-button"; - undoButton.title = "Undo - Ctrl+Z"; - undoButton.XShift = "-200px"; - undoButton.execute = function(manager){ - manager.undo(); - }; - setupButton(undoButton, true); - buttonRow.appendChild(undoButton); - - var redoButton = document.createElement("li"); - redoButton.className = "wmd-button"; - redoButton.id = "wmd-redo-button"; - redoButton.title = "Redo - Ctrl+Y"; - if (/win/.test(nav.platform.toLowerCase())) { - redoButton.title = "Redo - Ctrl+Y"; - } - else { - // mac and other non-Windows platforms - redoButton.title = "Redo - Ctrl+Shift+Z"; - } - redoButton.XShift = "-220px"; - redoButton.execute = function(manager){ - manager.redo(); - }; - setupButton(redoButton, true); - buttonRow.appendChild(redoButton); - - var helpButton = document.createElement("li"); - helpButton.className = "wmd-button"; - helpButton.id = "wmd-help-button"; - helpButton.XShift = "-240px"; - helpButton.isHelp = true; - - var helpAnchor = document.createElement("a"); - helpAnchor.href = helpLink; - helpAnchor.target = helpTarget - helpAnchor.title = helpHoverTitle; - helpButton.appendChild(helpAnchor); - - setupButton(helpButton, true); - buttonRow.appendChild(helpButton); - - setUndoRedoButtonStates(); - } - - var setupEditor = function(){ - - if (/\?noundo/.test(doc.location.href)) { - wmd.nativeUndo = true; - } - - if (!wmd.nativeUndo) { - undoMgr = new wmd.undoManager(function(){ - previewRefreshCallback(); - setUndoRedoButtonStates(); - }); - } - - makeSpritedButtonRow(); - - - var keyEvent = "keydown"; - if (global.isOpera) { - keyEvent = "keypress"; - } - - util.addEvent(inputBox, keyEvent, function(key){ - - // Check to see if we have a button key and, if so execute the callback. - if (key.ctrlKey || key.metaKey) { - - var keyCode = key.charCode || key.keyCode; - var keyCodeStr = String.fromCharCode(keyCode).toLowerCase(); - - switch(keyCodeStr) { - case "b": - doClick(document.getElementById("wmd-bold-button")); - break; - case "i": - doClick(document.getElementById("wmd-italic-button")); - break; - case "l": - doClick(document.getElementById("wmd-link-button")); - break; - case "q": - doClick(document.getElementById("wmd-quote-button")); - break; - case "k": - doClick(document.getElementById("wmd-code-button")); - break; - case "g": - doClick(document.getElementById("wmd-image-button")); - break; - case "o": - doClick(document.getElementById("wmd-olist-button")); - break; - case "u": - doClick(document.getElementById("wmd-ulist-button")); - break; - case "h": - doClick(document.getElementById("wmd-heading-button")); - break; - case "r": - doClick(document.getElementById("wmd-hr-button")); - break; - case "y": - doClick(document.getElementById("wmd-redo-button")); - break; - case "z": - if(key.shiftKey) { - doClick(document.getElementById("wmd-redo-button")); - } - else { - doClick(document.getElementById("wmd-undo-button")); - } - break; - default: - return; - } - - - if (key.preventDefault) { - key.preventDefault(); - } - - if (top.event) { - top.event.returnValue = false; - } - } - }); - - // Auto-continue lists, code blocks and block quotes when - // the enter key is pressed. - util.addEvent(inputBox, "keyup", function(key){ - if (!key.shiftKey && !key.ctrlKey && !key.metaKey) { - var keyCode = key.charCode || key.keyCode; - // Key code 13 is Enter - if (keyCode === 13) { - fakeButton = {}; - fakeButton.textOp = command.doAutoindent; - doClick(fakeButton); - } - } - }); - - // Disable ESC clearing the input textarea on IE - if (global.isIE) { - util.addEvent(inputBox, "keydown", function(key){ - var code = key.keyCode; - // Key code 27 is ESC - if (code === 27) { - return false; - } - }); - } - - if (inputBox.form) { - var submitCallback = inputBox.form.onsubmit; - inputBox.form.onsubmit = function(){ - convertToHtml(); - if (submitCallback) { - return submitCallback.apply(this, arguments); - } - }; - } - }; - - // Convert the contents of the input textarea to HTML in the output/preview panels. - var convertToHtml = function(){ - - if (wmd.showdown) { - var markdownConverter = new wmd.showdown.converter(); - } - var text = inputBox.value; - - var callback = function(){ - inputBox.value = text; - }; - - if (!/markdown/.test(wmd.wmd_env.output.toLowerCase())) { - if (markdownConverter) { - inputBox.value = markdownConverter.makeHtml(text); - top.setTimeout(callback, 0); - } - } - return true; - }; - - - this.undo = function(){ - if (undoMgr) { - undoMgr.undo(); - } - }; - - this.redo = function(){ - if (undoMgr) { - undoMgr.redo(); - } - }; - - // This is pretty useless. The setupEditor function contents - // should just be copied here. - var init = function(){ - setupEditor(); - }; - - this.destroy = function(){ - if (undoMgr) { - undoMgr.destroy(); - } - if (div.parentNode) { - div.parentNode.removeChild(div); - } - if (inputBox) { - inputBox.style.marginTop = ""; - } - top.clearInterval(creationHandle); - }; - - init(); - }; - - // The input textarea state/contents. - // This is used to implement undo/redo by the undo manager. - wmd.TextareaState = function(){ - - // Aliases - var stateObj = this; - var inputArea = wmd.panels.input; - - this.init = function() { - - if (!util.isVisible(inputArea)) { - return; - } - - this.setInputAreaSelectionStartEnd(); - this.scrollTop = inputArea.scrollTop; - if (!this.text && inputArea.selectionStart || inputArea.selectionStart === 0) { - this.text = inputArea.value; - } - - } - - // Sets the selected text in the input box after we've performed an - // operation. - this.setInputAreaSelection = function(){ - - if (!util.isVisible(inputArea)) { - return; - } - - if (inputArea.selectionStart !== undefined && !global.isOpera) { - - inputArea.focus(); - inputArea.selectionStart = stateObj.start; - inputArea.selectionEnd = stateObj.end; - inputArea.scrollTop = stateObj.scrollTop; - } - else if (doc.selection) { - - if (doc.activeElement && doc.activeElement !== inputArea) { - return; - } - - inputArea.focus(); - var range = inputArea.createTextRange(); - range.moveStart("character", -inputArea.value.length); - range.moveEnd("character", -inputArea.value.length); - range.moveEnd("character", stateObj.end); - range.moveStart("character", stateObj.start); - range.select(); - } - }; - - this.setInputAreaSelectionStartEnd = function(){ - - if (inputArea.selectionStart || inputArea.selectionStart === 0) { - - stateObj.start = inputArea.selectionStart; - stateObj.end = inputArea.selectionEnd; - } - else if (doc.selection) { - - stateObj.text = util.fixEolChars(inputArea.value); - - // IE loses the selection in the textarea when buttons are - // clicked. On IE we cache the selection and set a flag - // which we check for here. - var range; - if(wmd.ieRetardedClick && wmd.ieCachedRange) { - range = wmd.ieCachedRange; - wmd.ieRetardedClick = false; - } - else { - range = doc.selection.createRange(); - } - - var fixedRange = util.fixEolChars(range.text); - var marker = "\x07"; - var markedRange = marker + fixedRange + marker; - range.text = markedRange; - var inputText = util.fixEolChars(inputArea.value); - - range.moveStart("character", -markedRange.length); - range.text = fixedRange; - - stateObj.start = inputText.indexOf(marker); - stateObj.end = inputText.lastIndexOf(marker) - marker.length; - - var len = stateObj.text.length - util.fixEolChars(inputArea.value).length; - - if (len) { - range.moveStart("character", -fixedRange.length); - while (len--) { - fixedRange += "\n"; - stateObj.end += 1; - } - range.text = fixedRange; - } - - this.setInputAreaSelection(); - } - }; - - // Restore this state into the input area. - this.restore = function(){ - - if (stateObj.text != undefined && stateObj.text != inputArea.value) { - inputArea.value = stateObj.text; - } - this.setInputAreaSelection(); - inputArea.scrollTop = stateObj.scrollTop; - }; - - // Gets a collection of HTML chunks from the inptut textarea. - this.getChunks = function(){ - - var chunk = new wmd.Chunks(); - - chunk.before = util.fixEolChars(stateObj.text.substring(0, stateObj.start)); - chunk.startTag = ""; - chunk.selection = util.fixEolChars(stateObj.text.substring(stateObj.start, stateObj.end)); - chunk.endTag = ""; - chunk.after = util.fixEolChars(stateObj.text.substring(stateObj.end)); - chunk.scrollTop = stateObj.scrollTop; - - return chunk; - }; - - // Sets the TextareaState properties given a chunk of markdown. - this.setChunks = function(chunk){ - - chunk.before = chunk.before + chunk.startTag; - chunk.after = chunk.endTag + chunk.after; - - if (global.isOpera) { - chunk.before = chunk.before.replace(/\n/g, "\r\n"); - chunk.selection = chunk.selection.replace(/\n/g, "\r\n"); - chunk.after = chunk.after.replace(/\n/g, "\r\n"); - } - - this.start = chunk.before.length; - this.end = chunk.before.length + chunk.selection.length; - this.text = chunk.before + chunk.selection + chunk.after; - this.scrollTop = chunk.scrollTop; - }; - - this.init(); - }; - - // before: contains all the text in the input box BEFORE the selection. - // after: contains all the text in the input box AFTER the selection. - wmd.Chunks = function(){ - }; - - // startRegex: a regular expression to find the start tag - // endRegex: a regular expresssion to find the end tag - wmd.Chunks.prototype.findTags = function(startRegex, endRegex){ - - var chunkObj = this; - var regex; - - if (startRegex) { - - regex = util.extendRegExp(startRegex, "", "$"); - - this.before = this.before.replace(regex, - function(match){ - chunkObj.startTag = chunkObj.startTag + match; - return ""; - }); - - regex = util.extendRegExp(startRegex, "^", ""); - - this.selection = this.selection.replace(regex, - function(match){ - chunkObj.startTag = chunkObj.startTag + match; - return ""; - }); - } - - if (endRegex) { - - regex = util.extendRegExp(endRegex, "", "$"); - - this.selection = this.selection.replace(regex, - function(match){ - chunkObj.endTag = match + chunkObj.endTag; - return ""; - }); - - regex = util.extendRegExp(endRegex, "^", ""); - - this.after = this.after.replace(regex, - function(match){ - chunkObj.endTag = match + chunkObj.endTag; - return ""; - }); - } - }; - - // If remove is false, the whitespace is transferred - // to the before/after regions. - // - // If remove is true, the whitespace disappears. - wmd.Chunks.prototype.trimWhitespace = function(remove){ - - this.selection = this.selection.replace(/^(\s*)/, ""); - - if (!remove) { - this.before += re.$1; - } - - this.selection = this.selection.replace(/(\s*)$/, ""); - - if (!remove) { - this.after = re.$1 + this.after; - } - }; - - - wmd.Chunks.prototype.addBlankLines = function(nLinesBefore, nLinesAfter, findExtraNewlines){ - - if (nLinesBefore === undefined) { - nLinesBefore = 1; - } - - if (nLinesAfter === undefined) { - nLinesAfter = 1; - } - - nLinesBefore++; - nLinesAfter++; - - var regexText; - var replacementText; - - if (navigator.userAgent.match(/Chrome/)) { - "X".match(/()./) - } - - this.selection = this.selection.replace(/(^\n*)/, ""); - this.startTag = this.startTag + re.$1; - this.selection = this.selection.replace(/(\n*$)/, ""); - this.endTag = this.endTag + re.$1; - this.startTag = this.startTag.replace(/(^\n*)/, ""); - this.before = this.before + re.$1; - this.endTag = this.endTag.replace(/(\n*$)/, ""); - this.after = this.after + re.$1; - - if (this.before) { - - regexText = replacementText = ""; - - while (nLinesBefore--) { - regexText += "\\n?"; - replacementText += "\n"; - } - - if (findExtraNewlines) { - regexText = "\\n*"; - } - this.before = this.before.replace(new re(regexText + "$", ""), replacementText); - } - - if (this.after) { - - regexText = replacementText = ""; - - while (nLinesAfter--) { - regexText += "\\n?"; - replacementText += "\n"; - } - if (findExtraNewlines) { - regexText = "\\n*"; - } - - this.after = this.after.replace(new re(regexText, ""), replacementText); - } - }; - - // The markdown symbols - 4 spaces = code, > = blockquote, etc. - command.prefixes = "(?:\\s{4,}|\\s*>|\\s*-\\s+|\\s*\\d+\\.|=|\\+|-|_|\\*|#|\\s*\\[[^\n]]+\\]:)"; - - // Remove markdown symbols from the chunk selection. - command.unwrap = function(chunk){ - var txt = new re("([^\\n])\\n(?!(\\n|" + command.prefixes + "))", "g"); - chunk.selection = chunk.selection.replace(txt, "$1 $2"); - }; - - command.wrap = function(chunk, len){ - command.unwrap(chunk); - var regex = new re("(.{1," + len + "})( +|$\\n?)", "gm"); - - chunk.selection = chunk.selection.replace(regex, function(line, marked){ - if (new re("^" + command.prefixes, "").test(line)) { - return line; - } - return marked + "\n"; - }); - - chunk.selection = chunk.selection.replace(/\s+$/, ""); - }; - - command.doBold = function(chunk, postProcessing, useDefaultText){ - return command.doBorI(chunk, 2, "strong text"); - }; - - command.doItalic = function(chunk, postProcessing, useDefaultText){ - return command.doBorI(chunk, 1, "emphasized text"); - }; - - // chunk: The selected region that will be enclosed with */** - // nStars: 1 for italics, 2 for bold - // insertText: If you just click the button without highlighting text, this gets inserted - command.doBorI = function(chunk, nStars, insertText){ - - // Get rid of whitespace and fix up newlines. - chunk.trimWhitespace(); - chunk.selection = chunk.selection.replace(/\n{2,}/g, "\n"); - - // Look for stars before and after. Is the chunk already marked up? - chunk.before.search(/(\**$)/); - var starsBefore = re.$1; - - chunk.after.search(/(^\**)/); - var starsAfter = re.$1; - - var prevStars = Math.min(starsBefore.length, starsAfter.length); - - // Remove stars if we have to since the button acts as a toggle. - if ((prevStars >= nStars) && (prevStars != 2 || nStars != 1)) { - chunk.before = chunk.before.replace(re("[*]{" + nStars + "}$", ""), ""); - chunk.after = chunk.after.replace(re("^[*]{" + nStars + "}", ""), ""); - } - else if (!chunk.selection && starsAfter) { - // It's not really clear why this code is necessary. It just moves - // some arbitrary stuff around. - chunk.after = chunk.after.replace(/^([*_]*)/, ""); - chunk.before = chunk.before.replace(/(\s?)$/, ""); - var whitespace = re.$1; - chunk.before = chunk.before + starsAfter + whitespace; - } - else { - - // In most cases, if you don't have any selected text and click the button - // you'll get a selected, marked up region with the default text inserted. - if (!chunk.selection && !starsAfter) { - chunk.selection = insertText; - } - - // Add the true markup. - var markup = nStars <= 1 ? "*" : "**"; // shouldn't the test be = ? - chunk.before = chunk.before + markup; - chunk.after = markup + chunk.after; - } - - return; - }; - - command.stripLinkDefs = function(text, defsToAdd){ - - text = text.replace(/^[ ]{0,3}\[(\d+)\]:[ \t]*\n?[ \t]*<?(\S+?)>?[ \t]*\n?[ \t]*(?:(\n*)["(](.+?)[")][ \t]*)?(?:\n+|$)/gm, - function(totalMatch, id, link, newlines, title){ - defsToAdd[id] = totalMatch.replace(/\s*$/, ""); - if (newlines) { - // Strip the title and return that separately. - defsToAdd[id] = totalMatch.replace(/["(](.+?)[")]$/, ""); - return newlines + title; - } - return ""; - }); - - return text; - }; - - command.addLinkDef = function(chunk, linkDef){ - - var refNumber = 0; // The current reference number - var defsToAdd = {}; // - // Start with a clean slate by removing all previous link definitions. - chunk.before = command.stripLinkDefs(chunk.before, defsToAdd); - chunk.selection = command.stripLinkDefs(chunk.selection, defsToAdd); - chunk.after = command.stripLinkDefs(chunk.after, defsToAdd); - - var defs = ""; - var regex = /(\[)((?:\[[^\]]*\]|[^\[\]])*)(\][ ]?(?:\n[ ]*)?\[)(\d+)(\])/g; - - - - var addDefNumber = function(def){ - refNumber++; - def = def.replace(/^[ ]{0,3}\[(\d+)\]:/, " [" + refNumber + "]:"); - defs += "\n" + def; - }; - - // note that - // a) the recursive call to getLink cannot go infinite, because by definition - // of regex, inner is always a proper substring of wholeMatch, and - // b) more than one level of nesting is neither supported by the regex - // nor making a lot of sense (the only use case for nesting is a linked image) - var getLink = function (wholeMatch, before, inner, afterInner, id, end) { - inner = inner.replace(regex, getLink); - if (defsToAdd[id]) { - addDefNumber(defsToAdd[id]); - return before + inner + afterInner + refNumber + end; - - } - return wholeMatch; - }; - - chunk.before = chunk.before.replace(regex, getLink); - - if (linkDef) { - addDefNumber(linkDef); - } - else { - chunk.selection = chunk.selection.replace(regex, getLink); - } - - var refOut = refNumber; - - chunk.after = chunk.after.replace(regex, getLink); - - if (chunk.after) { - chunk.after = chunk.after.replace(/\n*$/, ""); - } - if (!chunk.after) { - chunk.selection = chunk.selection.replace(/\n*$/, ""); - } - - chunk.after += "\n\n" + defs; - - return refOut; - }; - - command.doLinkOrImage = function(chunk, postProcessing, isImage){ - - chunk.trimWhitespace(); - chunk.findTags(/\s*!?\[/, /\][ ]?(?:\n[ ]*)?(\[.*?\])?/); - - if (chunk.endTag.length > 1) { - - chunk.startTag = chunk.startTag.replace(/!?\[/, ""); - chunk.endTag = ""; - command.addLinkDef(chunk, null); - - } - else { - - if (/\n\n/.test(chunk.selection)) { - command.addLinkDef(chunk, null); - return; - } - - // The function to be executed when you enter a link and press OK or Cancel. - // Marks up the link and adds the ref. - var makeLinkMarkdown = function(link){ - - if (link !== null) { - - chunk.startTag = chunk.endTag = ""; - var linkDef = " [999]: " + link; - - var num = command.addLinkDef(chunk, linkDef); - chunk.startTag = isImage ? "![" : "["; - chunk.endTag = "][" + num + "]"; - - if (!chunk.selection) { - if (isImage) { - chunk.selection = "alt text"; - } - else { - chunk.selection = "link text"; - } - } - } - postProcessing(); - }; - - if (isImage) { - util.prompt(imageDialogText, imageDefaultText, makeLinkMarkdown); - } - else { - util.prompt(linkDialogText, linkDefaultText, makeLinkMarkdown); - } - return true; - } - }; - - util.makeAPI = function(){ - wmd.wmd = {}; - wmd.wmd.editor = wmd.editor; - wmd.wmd.previewManager = wmd.previewManager; - }; - - util.startEditor = function(){ - - if (wmd.wmd_env.autostart === false) { - util.makeAPI(); - return; - } - - var edit; // The editor (buttons + input + outputs) - the main object. - var previewMgr; // The preview manager. - - // Fired after the page has fully loaded. - var loadListener = function(){ - - wmd.panels = new wmd.PanelCollection(); - - previewMgr = new wmd.previewManager(); - var previewRefreshCallback = previewMgr.refresh; - - edit = new wmd.editor(previewRefreshCallback); - - previewMgr.refresh(true); - - }; - - util.addEvent(top, "load", loadListener); - }; - - wmd.previewManager = function(){ - - var managerObj = this; - var converter; - var poller; - var timeout; - var elapsedTime; - var oldInputText; - var htmlOut; - var maxDelay = 3000; - var startType = "delayed"; // The other legal value is "manual" - - // Adds event listeners to elements and creates the input poller. - var setupEvents = function(inputElem, listener){ - - util.addEvent(inputElem, "input", listener); - inputElem.onpaste = listener; - inputElem.ondrop = listener; - - util.addEvent(inputElem, "keypress", listener); - util.addEvent(inputElem, "keydown", listener); - // previewPollInterval is set at the top of this file. - poller = new wmd.inputPoller(listener, previewPollInterval); - }; - - var getDocScrollTop = function(){ - - var result = 0; - - if (top.innerHeight) { - result = top.pageYOffset; - } - else - if (doc.documentElement && doc.documentElement.scrollTop) { - result = doc.documentElement.scrollTop; - } - else - if (doc.body) { - result = doc.body.scrollTop; - } - - return result; - }; - - var makePreviewHtml = function(){ - - // If there are no registered preview and output panels - // there is nothing to do. - if (!wmd.panels.preview && !wmd.panels.output) { - return; - } - - var text = wmd.panels.input.value; - if (text && text == oldInputText) { - return; // Input text hasn't changed. - } - else { - oldInputText = text; - } - - var prevTime = new Date().getTime(); - - if (!converter && wmd.showdown) { - converter = new wmd.showdown.converter(); - } - - if (converter) { - text = converter.makeHtml(text); - } - - // Calculate the processing time of the HTML creation. - // It's used as the delay time in the event listener. - var currTime = new Date().getTime(); - elapsedTime = currTime - prevTime; - - pushPreviewHtml(text); - htmlOut = text; - }; - - // setTimeout is already used. Used as an event listener. - var applyTimeout = function(){ - - if (timeout) { - top.clearTimeout(timeout); - timeout = undefined; - } - - if (startType !== "manual") { - - var delay = 0; - - if (startType === "delayed") { - delay = elapsedTime; - } - - if (delay > maxDelay) { - delay = maxDelay; - } - timeout = top.setTimeout(makePreviewHtml, delay); - } - }; - - var getScaleFactor = function(panel){ - if (panel.scrollHeight <= panel.clientHeight) { - return 1; - } - return panel.scrollTop / (panel.scrollHeight - panel.clientHeight); - }; - - var setPanelScrollTops = function(){ - - if (wmd.panels.preview) { - wmd.panels.preview.scrollTop = (wmd.panels.preview.scrollHeight - wmd.panels.preview.clientHeight) * getScaleFactor(wmd.panels.preview); - ; - } - - if (wmd.panels.output) { - wmd.panels.output.scrollTop = (wmd.panels.output.scrollHeight - wmd.panels.output.clientHeight) * getScaleFactor(wmd.panels.output); - ; - } - }; - - this.refresh = function(requiresRefresh){ - - if (requiresRefresh) { - oldInputText = ""; - makePreviewHtml(); - } - else { - applyTimeout(); - } - }; - - this.processingTime = function(){ - return elapsedTime; - }; - - // The output HTML - this.output = function(){ - return htmlOut; - }; - - // The mode can be "manual" or "delayed" - this.setUpdateMode = function(mode){ - startType = mode; - managerObj.refresh(); - }; - - var isFirstTimeFilled = true; - - var pushPreviewHtml = function(text){ - - var emptyTop = position.getTop(wmd.panels.input) - getDocScrollTop(); - - // Send the encoded HTML to the output textarea/div. - if (wmd.panels.output) { - // The value property is only defined if the output is a textarea. - if (wmd.panels.output.value !== undefined) { - wmd.panels.output.value = text; - wmd.panels.output.readOnly = true; - } - // Otherwise we are just replacing the text in a div. - // Send the HTML wrapped in <pre><code> - else { - var newText = text.replace(/&/g, "&"); - newText = newText.replace(/</g, "<"); - wmd.panels.output.innerHTML = "<pre><code>" + newText + "</code></pre>"; - } - } - - if (wmd.panels.preview) { - wmd.panels.preview.innerHTML = text; - } - - setPanelScrollTops(); - - if (isFirstTimeFilled) { - isFirstTimeFilled = false; - return; - } - - var fullTop = position.getTop(wmd.panels.input) - getDocScrollTop(); - - if (global.isIE) { - top.setTimeout(function(){ - top.scrollBy(0, fullTop - emptyTop); - }, 0); - } - else { - top.scrollBy(0, fullTop - emptyTop); - } - }; - - var init = function(){ - - setupEvents(wmd.panels.input, applyTimeout); - makePreviewHtml(); - - if (wmd.panels.preview) { - wmd.panels.preview.scrollTop = 0; - } - if (wmd.panels.output) { - wmd.panels.output.scrollTop = 0; - } - }; - - this.destroy = function(){ - if (poller) { - poller.destroy(); - } - }; - - init(); - }; - - // Moves the cursor to the next line and continues lists, quotes and code. - command.doAutoindent = function(chunk, postProcessing, useDefaultText){ - - chunk.before = chunk.before.replace(/(\n|^)[ ]{0,3}([*+-]|\d+[.])[ \t]*\n$/, "\n\n"); - chunk.before = chunk.before.replace(/(\n|^)[ ]{0,3}>[ \t]*\n$/, "\n\n"); - chunk.before = chunk.before.replace(/(\n|^)[ \t]+\n$/, "\n\n"); - - useDefaultText = false; - - if(/(\n|^)[ ]{0,3}([*+-])[ \t]+.*\n$/.test(chunk.before)){ - if(command.doList){ - command.doList(chunk, postProcessing, false, true); - } - } - if(/(\n|^)[ ]{0,3}(\d+[.])[ \t]+.*\n$/.test(chunk.before)){ - if(command.doList){ - command.doList(chunk, postProcessing, true, true); - } - } - if(/(\n|^)[ ]{0,3}>[ \t]+.*\n$/.test(chunk.before)){ - if(command.doBlockquote){ - command.doBlockquote(chunk, postProcessing, useDefaultText); - } - } - if(/(\n|^)(\t|[ ]{4,}).*\n$/.test(chunk.before)){ - if(command.doCode){ - command.doCode(chunk, postProcessing, useDefaultText); - } - } - }; - - command.doBlockquote = function(chunk, postProcessing, useDefaultText){ - - chunk.selection = chunk.selection.replace(/^(\n*)([^\r]+?)(\n*)$/, - function(totalMatch, newlinesBefore, text, newlinesAfter){ - chunk.before += newlinesBefore; - chunk.after = newlinesAfter + chunk.after; - return text; - }); - - chunk.before = chunk.before.replace(/(>[ \t]*)$/, - function(totalMatch, blankLine){ - chunk.selection = blankLine + chunk.selection; - return ""; - }); - - var defaultText = useDefaultText ? "Blockquote" : ""; - chunk.selection = chunk.selection.replace(/^(\s|>)+$/ ,""); - chunk.selection = chunk.selection || defaultText; - - // The original code uses a regular expression to find out how much of the - // text *directly before* the selection already was a blockquote: - /* - if(chunk.before){ - chunk.before = chunk.before.replace(/\n?$/,"\n"); - } - chunk.before = chunk.before.replace(/(((\n|^)(\n[ \t]*)*>(.+\n)*.*)+(\n[ \t]*)*$)/, - function (totalMatch) { - chunk.startTag = totalMatch; - return ""; - }); - */ - // This comes down to: - // Go backwards as many lines a possible, such that each line - // a) starts with ">", or - // b) is almost empty, except for whitespace, or - // c) is preceeded by an unbroken chain of non-empty lines - // leading up to a line that starts with ">" and at least one more character - // and in addition - // d) at least one line fulfills a) - // - // Since this is essentially a backwards-moving regex, it's susceptible to - // catstrophic backtracking and can cause the browser to hang; - // see e.g. http://meta.stackoverflow.com/questions/9807. - // - // Hence we replaced this by a simple state machine that just goes through the - // lines and checks for a), b), and c). - - var match = ""; - var leftOver = ""; - if (chunk.before) { - var lines = chunk.before.replace(/\n$/, "").split("\n"); - var inChain = false; - for (var i in lines) { - var good = false; - line = lines[i]; - inChain = inChain && line.length > 0; // c) any non-empty line continues the chain - if (/^>/.test(line)) { // a) - good = true; - if (!inChain && line.length > 1) // c) any line that starts with ">" and has at least one more character starts the chain - inChain = true; - } else if (/^[ \t]*$/.test(line)) { // b) - good = true; - } else { - good = inChain; // c) the line is not empty and does not start with ">", so it matches if and only if we're in the chain - } - if (good) { - match += line + "\n"; - } else { - leftOver += match + line; - match = "\n"; - } - } - if (!/(^|\n)>/.test(match)) { // d) - leftOver += match; - match = ""; - } - } - - chunk.startTag = match; - chunk.before = leftOver; - - // end of change - - if(chunk.after){ - chunk.after = chunk.after.replace(/^\n?/,"\n"); - } - - chunk.after = chunk.after.replace(/^(((\n|^)(\n[ \t]*)*>(.+\n)*.*)+(\n[ \t]*)*)/, - function(totalMatch){ - chunk.endTag = totalMatch; - return ""; - }); - - var replaceBlanksInTags = function(useBracket){ - - var replacement = useBracket ? "> " : ""; - - if(chunk.startTag){ - chunk.startTag = chunk.startTag.replace(/\n((>|\s)*)\n$/, - function(totalMatch, markdown){ - return "\n" + markdown.replace(/^[ ]{0,3}>?[ \t]*$/gm, replacement) + "\n"; - }); - } - if(chunk.endTag){ - chunk.endTag = chunk.endTag.replace(/^\n((>|\s)*)\n/, - function(totalMatch, markdown){ - return "\n" + markdown.replace(/^[ ]{0,3}>?[ \t]*$/gm, replacement) + "\n"; - }); - } - }; - - if(/^(?![ ]{0,3}>)/m.test(chunk.selection)){ - command.wrap(chunk, wmd.wmd_env.lineLength - 2); - chunk.selection = chunk.selection.replace(/^/gm, "> "); - replaceBlanksInTags(true); - chunk.addBlankLines(); - } - else{ - chunk.selection = chunk.selection.replace(/^[ ]{0,3}> ?/gm, ""); - command.unwrap(chunk); - replaceBlanksInTags(false); - - if(!/^(\n|^)[ ]{0,3}>/.test(chunk.selection) && chunk.startTag){ - chunk.startTag = chunk.startTag.replace(/\n{0,2}$/, "\n\n"); - } - - if(!/(\n|^)[ ]{0,3}>.*$/.test(chunk.selection) && chunk.endTag){ - chunk.endTag=chunk.endTag.replace(/^\n{0,2}/, "\n\n"); - } - } - - if(!/\n/.test(chunk.selection)){ - chunk.selection = chunk.selection.replace(/^(> *)/, - function(wholeMatch, blanks){ - chunk.startTag += blanks; - return ""; - }); - } - }; - - command.doCode = function(chunk, postProcessing, useDefaultText){ - - var hasTextBefore = /\S[ ]*$/.test(chunk.before); - var hasTextAfter = /^[ ]*\S/.test(chunk.after); - - // Use 'four space' markdown if the selection is on its own - // line or is multiline. - if((!hasTextAfter && !hasTextBefore) || /\n/.test(chunk.selection)){ - - chunk.before = chunk.before.replace(/[ ]{4}$/, - function(totalMatch){ - chunk.selection = totalMatch + chunk.selection; - return ""; - }); - - var nLinesBefore = 1; - var nLinesAfter = 1; - - - if(/\n(\t|[ ]{4,}).*\n$/.test(chunk.before) || chunk.after === ""){ - nLinesBefore = 0; - } - if(/^\n(\t|[ ]{4,})/.test(chunk.after)){ - nLinesAfter = 0; // This needs to happen on line 1 - } - - chunk.addBlankLines(nLinesBefore, nLinesAfter); - - if(!chunk.selection){ - chunk.startTag = " "; - chunk.selection = useDefaultText ? "enter code here" : ""; - } - else { - if(/^[ ]{0,3}\S/m.test(chunk.selection)){ - chunk.selection = chunk.selection.replace(/^/gm, " "); - } - else{ - chunk.selection = chunk.selection.replace(/^[ ]{4}/gm, ""); - } - } - } - else{ - // Use backticks (`) to delimit the code block. - - chunk.trimWhitespace(); - chunk.findTags(/`/, /`/); - - if(!chunk.startTag && !chunk.endTag){ - chunk.startTag = chunk.endTag="`"; - if(!chunk.selection){ - chunk.selection = useDefaultText ? "enter code here" : ""; - } - } - else if(chunk.endTag && !chunk.startTag){ - chunk.before += chunk.endTag; - chunk.endTag = ""; - } - else{ - chunk.startTag = chunk.endTag=""; - } - } - }; - - command.doList = function(chunk, postProcessing, isNumberedList, useDefaultText){ - - // These are identical except at the very beginning and end. - // Should probably use the regex extension function to make this clearer. - var previousItemsRegex = /(\n|^)(([ ]{0,3}([*+-]|\d+[.])[ \t]+.*)(\n.+|\n{2,}([*+-].*|\d+[.])[ \t]+.*|\n{2,}[ \t]+\S.*)*)\n*$/; - var nextItemsRegex = /^\n*(([ ]{0,3}([*+-]|\d+[.])[ \t]+.*)(\n.+|\n{2,}([*+-].*|\d+[.])[ \t]+.*|\n{2,}[ \t]+\S.*)*)\n*/; - - // The default bullet is a dash but others are possible. - // This has nothing to do with the particular HTML bullet, - // it's just a markdown bullet. - var bullet = "-"; - - // The number in a numbered list. - var num = 1; - - // Get the item prefix - e.g. " 1. " for a numbered list, " - " for a bulleted list. - var getItemPrefix = function(){ - var prefix; - if(isNumberedList){ - prefix = " " + num + ". "; - num++; - } - else{ - prefix = " " + bullet + " "; - } - return prefix; - }; - - // Fixes the prefixes of the other list items. - var getPrefixedItem = function(itemText){ - - // The numbering flag is unset when called by autoindent. - if(isNumberedList === undefined){ - isNumberedList = /^\s*\d/.test(itemText); - } - - // Renumber/bullet the list element. - itemText = itemText.replace(/^[ ]{0,3}([*+-]|\d+[.])\s/gm, - function( _ ){ - return getItemPrefix(); - }); - - return itemText; - }; - - chunk.findTags(/(\n|^)*[ ]{0,3}([*+-]|\d+[.])\s+/, null); - - if(chunk.before && !/\n$/.test(chunk.before) && !/^\n/.test(chunk.startTag)){ - chunk.before += chunk.startTag; - chunk.startTag = ""; - } - - if(chunk.startTag){ - - var hasDigits = /\d+[.]/.test(chunk.startTag); - chunk.startTag = ""; - chunk.selection = chunk.selection.replace(/\n[ ]{4}/g, "\n"); - command.unwrap(chunk); - chunk.addBlankLines(); - - if(hasDigits){ - // Have to renumber the bullet points if this is a numbered list. - chunk.after = chunk.after.replace(nextItemsRegex, getPrefixedItem); - } - if(isNumberedList == hasDigits){ - return; - } - } - - var nLinesBefore = 1; - - chunk.before = chunk.before.replace(previousItemsRegex, - function(itemText){ - if(/^\s*([*+-])/.test(itemText)){ - bullet = re.$1; - } - nLinesBefore = /[^\n]\n\n[^\n]/.test(itemText) ? 1 : 0; - return getPrefixedItem(itemText); - }); - - if(!chunk.selection){ - chunk.selection = useDefaultText ? "List item" : " "; - } - - var prefix = getItemPrefix(); - - var nLinesAfter = 1; - - chunk.after = chunk.after.replace(nextItemsRegex, - function(itemText){ - nLinesAfter = /[^\n]\n\n[^\n]/.test(itemText) ? 1 : 0; - return getPrefixedItem(itemText); - }); - - chunk.trimWhitespace(true); - chunk.addBlankLines(nLinesBefore, nLinesAfter, true); - chunk.startTag = prefix; - var spaces = prefix.replace(/./g, " "); - command.wrap(chunk, wmd.wmd_env.lineLength - spaces.length); - chunk.selection = chunk.selection.replace(/\n/g, "\n" + spaces); - - }; - - command.doHeading = function(chunk, postProcessing, useDefaultText){ - - // Remove leading/trailing whitespace and reduce internal spaces to single spaces. - chunk.selection = chunk.selection.replace(/\s+/g, " "); - chunk.selection = chunk.selection.replace(/(^\s+|\s+$)/g, ""); - - // If we clicked the button with no selected text, we just - // make a level 2 hash header around some default text. - if(!chunk.selection){ - chunk.startTag = "## "; - chunk.selection = "Heading"; - chunk.endTag = " ##"; - return; - } - - var headerLevel = 0; // The existing header level of the selected text. - - // Remove any existing hash heading markdown and save the header level. - chunk.findTags(/#+[ ]*/, /[ ]*#+/); - if(/#+/.test(chunk.startTag)){ - headerLevel = re.lastMatch.length; - } - chunk.startTag = chunk.endTag = ""; - - // Try to get the current header level by looking for - and = in the line - // below the selection. - chunk.findTags(null, /\s?(-+|=+)/); - if(/=+/.test(chunk.endTag)){ - headerLevel = 1; - } - if(/-+/.test(chunk.endTag)){ - headerLevel = 2; - } - - // Skip to the next line so we can create the header markdown. - chunk.startTag = chunk.endTag = ""; - chunk.addBlankLines(1, 1); - - // We make a level 2 header if there is no current header. - // If there is a header level, we substract one from the header level. - // If it's already a level 1 header, it's removed. - var headerLevelToCreate = headerLevel == 0 ? 2 : headerLevel - 1; - - if(headerLevelToCreate > 0){ - - // The button only creates level 1 and 2 underline headers. - // Why not have it iterate over hash header levels? Wouldn't that be easier and cleaner? - var headerChar = headerLevelToCreate >= 2 ? "-" : "="; - var len = chunk.selection.length; - if(len > wmd.wmd_env.lineLength){ - len = wmd.wmd_env.lineLength; - } - chunk.endTag = "\n"; - while(len--){ - chunk.endTag += headerChar; - } - } - }; - - command.doHorizontalRule = function(chunk, postProcessing, useDefaultText){ - chunk.startTag = "----------\n"; - chunk.selection = ""; - chunk.addBlankLines(2, 1, true); - } -}; - - -Attacklab.wmd_env = {}; -Attacklab.account_options = {}; -Attacklab.wmd_defaults = {version:1, output:"HTML", lineLength:40, delayLoad:false}; - -if(!Attacklab.wmd) -{ - Attacklab.wmd = function() - { - Attacklab.loadEnv = function() - { - var mergeEnv = function(env) - { - if(!env) - { - return; - } - - for(var key in env) - { - Attacklab.wmd_env[key] = env[key]; - } - }; - - mergeEnv(Attacklab.wmd_defaults); - mergeEnv(Attacklab.account_options); - mergeEnv(top["wmd_options"]); - Attacklab.full = true; - - var defaultButtons = "bold italic link blockquote code image ol ul heading hr"; - Attacklab.wmd_env.buttons = Attacklab.wmd_env.buttons || defaultButtons; - }; - Attacklab.loadEnv(); - - }; - - Attacklab.wmd(); - Attacklab.wmdBase(); - Attacklab.Util.startEditor(); -}; - diff --git a/forum/skins/light/media/js/wmd/images/.svn/all-wcprops b/forum/skins/light/media/js/wmd/images/.svn/all-wcprops deleted file mode 100755 index 70ac8bf4bde9c38e10631bea28761e9cdcf6ae47..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/all-wcprops +++ /dev/null @@ -1,119 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images -END -wmd-buttons.psd -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd-buttons.psd -END -wmd.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd.png -END -bg.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/bg.png -END -redo.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/redo.png -END -link.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/link.png -END -separator.png -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/separator.png -END -wmd-on.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd-on.png -END -undo.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/undo.png -END -italic.png -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/italic.png -END -h1.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/h1.png -END -blockquote.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/blockquote.png -END -hr.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/hr.png -END -ol.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/ol.png -END -code.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/code.png -END -img.png -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/img.png -END -bg-fill.png -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/bg-fill.png -END -ul.png -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/ul.png -END -bold.png -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/559/osqa/trunk/forum/skins/default/media/js/wmd/images/bold.png -END -wmd-buttons.png -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/js/wmd/images/wmd-buttons.png -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/entries b/forum/skins/light/media/js/wmd/images/.svn/entries deleted file mode 100755 index 63ba34a691e337ebe50865405bbb717ab06f531d..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/entries +++ /dev/null @@ -1,674 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/js/wmd/images -http://svn.osqa.net/svnroot - - - -2010-08-18T17:11:19.434296Z -559 -court - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -ol.png -file - - - - -2012-07-01T12:37:36.025376Z -438f40ffe3553e7e880cbb802c64e69d -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -215 - -code.png -file - - - - -2012-07-01T12:37:36.025376Z -3d74a58ca89139123b466ee8b34794e3 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -214 - -img.png -file - - - - -2012-07-01T12:37:36.025376Z -15a0132a55cbab85d11b654d8e1ce371 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -447 - -bg-fill.png -file - - - - -2012-07-01T12:37:36.025376Z -c72ec596602b1830a6e433823f66124f -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -177 - -ul.png -file - - - - -2012-07-01T12:37:36.025376Z -0a164ac02e04d8410300f8d7251a1bb7 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -172 - -bold.png -file - - - - -2012-07-01T12:37:36.025376Z -2372ab7b3343bb0be16d5a6d479463e9 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -255 - -wmd-buttons.png -file - - - - -2012-07-01T12:37:36.025376Z -235c6a346ad74ce19e94ae5895d330f7 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -7465 - -wmd-buttons.psd -file - - - - -2012-07-01T12:37:36.025376Z -70878e8a40c65dae64d5fa5580d203ff -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -61236 - -wmd.png -file - - - - -2012-07-01T12:37:36.025376Z -97b2202006b39b7b1eefc8b73bf1fde3 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -518 - -bg.png -file - - - - -2012-07-01T12:37:36.025376Z -c4e9571610d631879fec1ead708df0a8 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -1814 - -redo.png -file - - - - -2012-07-01T12:37:36.025376Z -e9ccb05b9d605daabb2ab3d7dd3ab1d9 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -669 - -link.png -file - - - - -2012-07-01T12:37:36.021376Z -b4587a6d9da8d796c134a6c53319afe4 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -1079 - -separator.png -file - - - - -2012-07-01T12:37:36.021376Z -2f9b84a8176f9c9240bf426b60f6a4b2 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -210 - -wmd-on.png -file - - - - -2012-07-01T12:37:36.021376Z -caf6e32d8f1f3e0d5f68aaefec01b90e -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -477 - -undo.png -file - - - - -2012-07-01T12:37:36.021376Z -bb47fa6e5a8358c3ae1e01de52199fe6 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -651 - -italic.png -file - - - - -2012-07-01T12:37:36.021376Z -3bf7831adb1602b7f96ec48f272324ea -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -247 - -h1.png -file - - - - -2012-07-01T12:37:36.025376Z -3ad50a82af1dab5154fcbbca299a4927 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -203 - -blockquote.png -file - - - - -2012-07-01T12:37:36.021376Z -f4200a028db71995a8e390c95654b836 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -284 - -hr.png -file - - - - -2012-07-01T12:37:36.025376Z -0e224193ad91f84c41bed48da2323704 -2010-08-18T17:11:19.434296Z -559 -court -has-props - - - - - - - - - - - - - - - - - - - - -218 - diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/bg-fill.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/bg-fill.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/bg-fill.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/bg.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/bg.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/bg.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/blockquote.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/blockquote.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/blockquote.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/bold.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/bold.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/bold.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/code.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/code.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/code.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/h1.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/h1.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/h1.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/hr.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/hr.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/hr.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/img.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/img.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/img.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/italic.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/italic.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/italic.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/link.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/link.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/link.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/ol.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/ol.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/ol.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/redo.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/redo.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/redo.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/separator.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/separator.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/separator.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/ul.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/ul.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/ul.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/undo.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/undo.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/undo.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-buttons.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-buttons.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-buttons.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-buttons.psd.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-buttons.psd.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-buttons.psd.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-on.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-on.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd-on.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd.png.svn-base deleted file mode 100755 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/js/wmd/images/.svn/prop-base/wmd.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/bg-fill.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/bg-fill.png.svn-base deleted file mode 100755 index ec503ce588b66f85975bbffad24e18a9f87c2d2c..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/bg-fill.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/bg.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/bg.png.svn-base deleted file mode 100755 index bcaed31b1fc34c375020fb84ba5a9943d19aca9e..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/bg.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/blockquote.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/blockquote.png.svn-base deleted file mode 100755 index 537864a9b4a92842e5b96436fc7da2cefde92e50..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/blockquote.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/bold.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/bold.png.svn-base deleted file mode 100755 index eac276334888bf44aaa1ad1643c02ce1f7026a7b..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/bold.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/code.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/code.png.svn-base deleted file mode 100755 index dc1011ce3571be1e214ad043cee13a5b28ad5f18..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/code.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/h1.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/h1.png.svn-base deleted file mode 100755 index 96baecbb181808e6195df19b34d30fdbe449005c..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/h1.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/hr.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/hr.png.svn-base deleted file mode 100755 index 08be8e56985b766a47b538a0b41994adac7e17ed..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/hr.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/img.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/img.png.svn-base deleted file mode 100755 index 596b989612bcbbd250360e16b894f0dabf0e2b51..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/img.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/italic.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/italic.png.svn-base deleted file mode 100755 index 412b0fca7d866a53dc97bd17c817cf8c4eaa9c9c..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/italic.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/link.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/link.png.svn-base deleted file mode 100755 index 1e11500c19ddc0f1d059ee3b6bc64a6111eb3dee..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/link.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/ol.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/ol.png.svn-base deleted file mode 100755 index 3df2b9b50741b0f3832b63dc6f917f07644af1c2..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/ol.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/redo.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/redo.png.svn-base deleted file mode 100755 index 736a78baef911e40f1c3f7a0bf713c837e244515..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/redo.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/separator.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/separator.png.svn-base deleted file mode 100755 index 9cb87b9a86bc39a2a468839fafdf0b8bc997740f..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/separator.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/ul.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/ul.png.svn-base deleted file mode 100755 index 978be7e755ee39077e8499f07c9370dc4cd47484..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/ul.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/undo.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/undo.png.svn-base deleted file mode 100755 index 533faaf606929565258d939068f288ca80e008ea..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/undo.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-buttons.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-buttons.png.svn-base deleted file mode 100755 index 50b37090363e6757e7bd0ba75cd1e0dfaabd13d2..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-buttons.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-buttons.psd.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-buttons.psd.svn-base deleted file mode 100755 index e61ff3777dbeac13c6b43df5c53247404518d2bb..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-buttons.psd.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-on.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-on.png.svn-base deleted file mode 100755 index 4844ae917f37c5d3ff72acdde3392e64cd431521..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd-on.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd.png.svn-base b/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd.png.svn-base deleted file mode 100755 index 04177fb85813f4c2b6071924ffa4a81eebc66b2b..0000000000000000000000000000000000000000 Binary files a/forum/skins/light/media/js/wmd/images/.svn/text-base/wmd.png.svn-base and /dev/null differ diff --git a/forum/skins/light/media/style/.svn/all-wcprops b/forum/skins/light/media/style/.svn/all-wcprops deleted file mode 100755 index f4b62556d14f5dcaa08cf8f991d734884ec16429..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/all-wcprops +++ /dev/null @@ -1,65 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1208/osqa/trunk/forum/skins/default/media/style -END -openid.css -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/style/openid.css -END -user.css -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/media/style/user.css -END -jquery.autocomplete.css -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/72/osqa/trunk/forum/skins/default/media/style/jquery.autocomplete.css -END -style.css -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1208/osqa/trunk/forum/skins/default/media/style/style.css -END -auth.css -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/media/style/auth.css -END -default.css -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1033/osqa/trunk/forum/skins/default/media/style/default.css -END -djstyle_admin.css -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/media/style/djstyle_admin.css -END -prettify.css -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/media/style/prettify.css -END -admin.css -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1026/osqa/trunk/forum/skins/default/media/style/admin.css -END -markdown_help.css -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/304/osqa/trunk/forum/skins/default/media/style/markdown_help.css -END diff --git a/forum/skins/light/media/style/.svn/entries b/forum/skins/light/media/style/.svn/entries deleted file mode 100755 index a62409cfa73f64df8f72d0e504d521f0f52d1211..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/entries +++ /dev/null @@ -1,368 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/media/style -http://svn.osqa.net/svnroot - - - -2011-12-07T21:51:23.050166Z -1208 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -openid.css -file - - - - -2012-07-01T12:37:33.585376Z -9a7053abe7085dbacd344f3fbbf5f19a -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -681 - -user.css -file - - - - -2012-07-01T12:37:33.585376Z -3593651779af40f2e687c480ef3db438 -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -1952 - -jquery.autocomplete.css -file - - - - -2012-07-01T12:37:33.585376Z -14b21f521725b3295c97ae5c1e6d2241 -2010-04-26T10:16:55.949827Z -72 -hernani - - - - - - - - - - - - - - - - - - - - - -838 - -style.css -file - - - - -2012-07-01T12:37:33.585376Z -bbc99335e049126c3e7099d1d60f1798 -2011-12-07T21:51:23.050166Z -1208 -jordan - - - - - - - - - - - - - - - - - - - - - -33286 - -auth.css -file - - - - -2012-07-01T12:37:33.585376Z -7805111423f96a468bcff1651cb8940a -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -1454 - -default.css -file - - - - -2012-07-01T12:37:33.585376Z -fb949a14aa849bee692195056e18b0c7 -2011-05-09T17:33:49.619402Z -1033 -jordan - - - - - - - - - - - - - - - - - - - - - -26204 - -djstyle_admin.css -file - - - - -2012-07-01T12:37:33.585376Z -3effd51d279cb96362c940f5855d4dcb -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -1065 - -prettify.css -file - - - - -2012-07-01T12:37:33.585376Z -b3649fc1c0fc45f1e9565afb1dcad13c -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -689 - -admin.css -file - - - - -2012-07-01T12:37:33.585376Z -bbe2c61a11259860f12ef5a54128c3d1 -2011-05-07T10:14:00.218676Z -1026 -jordan - - - - - - - - - - - - - - - - - - - - - -1103 - -markdown_help.css -file - - - - -2012-07-01T12:37:33.585376Z -6860785f57024923f40118270ec808f7 -2010-05-19T14:20:21.569869Z -304 -qw3rty - - - - - - - - - - - - - - - - - - - - - -667 - diff --git a/forum/skins/light/media/style/.svn/text-base/admin.css.svn-base b/forum/skins/light/media/style/.svn/text-base/admin.css.svn-base deleted file mode 100755 index 51810b023b1db0f8b09450685ba61e8b9ff11d62..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/admin.css.svn-base +++ /dev/null @@ -1,63 +0,0 @@ -#admin_form { - border-spacing: 10px; -} - -#admin_form input[type="text"], #admin_form input[type="submit"], #admin_form textarea, .string_list_widget_button { - line-height: 22px; - font-size: 140%; - font-family: sans-serif; - border: 1px solid #999; - color: black; -} - -#admin_form input[type="text"], #admin_form input[type="submit"], .string_list_widget_button { - height: 28px; -} - -#admin_form input[type="text"], #admin_form textarea { - width: 550px; -} - -#admin_form th input[type="text"] { - text-align: left; - vertical-align: top; - width: 125px; - padding: 2px 3px; - font-size: 12px; - height: auto; - line-height: 100%; -} - -#admin_form th { - -} - -#admin_form td { - color: gray; -} - -#admin_page_description { - color: gray; - padding-bottom: 20px; -} - -.string_list_widget input[type=text] { - width: 520px; -} - -.string_list_widget_button { - width: 28px; - font-size: 20px; - font-weight: bold; -} - -.string_list_widget_button.add { - position: relative; - left: 554px; -} - -table caption { - font-size: 120%; - padding: 3px 0; - text-align: left; -} \ No newline at end of file diff --git a/forum/skins/light/media/style/.svn/text-base/auth.css.svn-base b/forum/skins/light/media/style/.svn/text-base/auth.css.svn-base deleted file mode 100755 index 0734ce02c0b524c01ecb34cdfe785b44599ed1b7..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/auth.css.svn-base +++ /dev/null @@ -1,84 +0,0 @@ -#bigicon_providers, #smallicon_providers { - display: block; - padding: 0px; - width:600px; - margin:0px 0px 5px 0px; - clear:both; -} - -.provider_logo { - display: block; - border: 1px solid #DDD; - text-align: center; -} - -.provider_logo.big { - display: block; - border:1px solid #DDDDDD; - float:left; - height:60px; - margin:3px; - width:110px; -} - -.provider_logo.big .inner { - display:block; - margin: 0px auto; - margin-top: 18px; -} - -.provider_logo.small { - border:1px solid #DDDDDD; - float:left; - height:30px; - margin:3px; - width:30px; -} - -.provider_logo.small .inner { - display:block; - margin: 0px auto; - margin-top: 6px; -} - -.provider_logo.selected { - outline: 2px solid #FFF8C6; -} - -.provider_logo .provider_url { - display: none; -} - -.signin_form { - clear:both; -} - -.signin_form fieldset { - padding: 10px; -} - -.signin_form input[type="text"], .signin_form input[type="password"], .signin_form input[type="submit"] { - height: 28px; - line-height: 22px; - font-size: 140%; - border: 1px solid #999; - padding-left:5px; - margin-right:5px; -} - -.signin_form input[type="text"], .signin_form input[type="password"] { - padding-top:4px; /* balance of alignment between firefox/safari and IE */ -} - -.signin_form .icon_input { - padding-left: 20px; -} - -.signin_form #openid_identifier { - padding-left: 18px; -} - -.or_label { - margin-top: 20px; - margin-bottom: 10px; -} diff --git a/forum/skins/light/media/style/.svn/text-base/default.css.svn-base b/forum/skins/light/media/style/.svn/text-base/default.css.svn-base deleted file mode 100755 index 0cfd336894fca4d5167cf188a4c82d12e380008f..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/default.css.svn-base +++ /dev/null @@ -1,1764 +0,0 @@ -/* -Document : default -Created on : Dec 9, 2008, 8:48:40 PM -Author : Mike -Description: -Style sheet for cnprog.com -All rights reserved. 2008 CNPROG.COM -*/ - -@import url(media/style/jquery.autocomplete.css); -@import url(media/style/openid.css); -@import url(media/style/prettify.css); - -html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, form, label, table, caption, tbody, tfoot, thead, tr, th, td -{ - margin: 0; - padding: 0; - border: 0; - font-size: 100%; - vertical-align: baseline; - background: transparent; -} -html, body { - height: 100%; - overflow: auto; -} -body{ - font-family: "segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif; - font-size: 80%; - - margin:0; - padding:0; - text-align:center; - line-height: 1; -} -.wrapper { - position: relative; - width: 100%; - height: 100%; - overflow: auto; -} -blockquote, q -{ - quotes: none; -} -blockquote:before, blockquote:after, q:before, q:after -{ - content: ''; - content: none; -} -table -{ - border-collapse: collapse; - border-spacing: 0; -} - -input, select, button, textarea -{ - border: 1px solid #999; - font-size:100%; - font-family:"segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif; -} - -input -{ - /* - margin: 5px 0px 5px 0px;*/ - padding:3px; - -} - -pre -{ - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size:100%; - margin-bottom: 10px; - overflow: auto; - width: 580px; - background-color: #F5F5F5; - padding-left:5px; - padding-top:5px; - padding-bottom: 20px !ie7; -} - -code{ - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size:100%; - -} - -blockquote -{ - margin-bottom: 10px; - margin-right: 15px; - padding: 10px 0px 1px 10px; - background-color: #F5F5F5; -} - -b, strong -{ - font-weight: bold; -} - -i, em -{ - font-style: italic; -} - -ul -{ - list-style: disc; - margin-left: 30px; - margin-bottom: 1em; -} - -p -{ - clear: both; - margin-bottom: 1em; -} - -ol -{ - list-style: decimal; - margin-left: 30px; - margin-bottom: 1em; -} - -a {color:#07c;text-decoration: none;} -a:visited{color:#3E6D8E;text-decoration: none;} -a:hover{text-decoration: underline;} -a:active{text-decoration: none;} - -h1 { - font-family:Trebuchet MS,Helvetica,sans-serif; - font-size: 160%; -} -h2 { - font-family:Trebuchet MS,Helvetica,sans-serif; - font-size:140%; - font-weight:bold; - margin-bottom:7px; -} -h3 {display:block;font-size:120%;font-family:Trebuchet MS,"segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif;font-weight:bold;} -h3 a:visited{ - color:#86B0E1; -} -h4 {display:block;font-size:90%; font-family:Verdana;color:#ccc;} - -#top{ - width:100%; - border-bottom:solid 3px #ccc; - background-color:#eee; - margin:0px; -} - -#container{ - margin: 0px auto; - width:950px; - display:block; - text-align: left; -} - -#header{ - width:100%; - padding:3px 0 10px 0; -} - -#header-links{ - -} - -#header-links a{ - color:darkred; - font-weight:400; - font-size:100%; - /*letter-spacing:1px;*/ - -} - -#header-links a:hover{ - text-decoration:none; -} - - -#content{ - margin-top:5px; -} - -#main{ - float:left; - width:670px; -} - -#container{ - width:950px; -} - -#main-bar{ - border-bottom: 1px solid #666; - height: 34px; - width: 100%; - clear:both; - margin-bottom:5px; -} - -#main-bar h3{ - float: left; - font-size: 140%; - font-weight:700; - /*letter-spacing:3px;*/ - margin-top:8px; - padding:5px 0 0 3px ; - height:20px; - width:200px; - color:#333; -} - -#question-title{ - float:left; - border-bottom: 1px solid #666; - width: 98%; - clear:both; - padding:13px 0px 5px 0; - margin-bottom:5px; - -} - -#question-title h3{ - font-size: 130%; - font-weight:bold; - line-height:25px; -} - -#question-title a{ - color:#333; -} - -#main-body{ - float:left; - width:100%; -} - -#main-bar .golden{ - background:url(../../images/bg_title_golden.gif) no-repeat; -} - -#main-bar .pink{ - background:url(../../images/bg_title_red.gif) no-repeat; -} - -#main-bar .orange{ - background:url(../../images/bg_title_orange.gif) no-repeat; -} - -#main-bar .green{ - background:url(../../images/bg_title_green.gif) no-repeat; -} - -#tab{ - float:right; - position:relative; - display:block; - font-weight:bold; -} - -#tab a -{ - background: #eee; - border: 1px solid #eee; - color: #777; - display: block; - float: left; - font-size: 90%; - height: 24px; - line-height: 22px; - margin: 8px 4px 0 0; - padding: 0 11px 0 11px; - text-decoration: none; -} - -#tab a:hover -{ - background: #fff; - border: 1px solid #777; - border-bottom-color: #fff; - line-height: 20px; - margin-top: 9px; -} - -#tab a.youarehere -{ - background: #fff; - color:#333; - border: 1px solid #777; - border-bottom-color: #fff; - font-size: 100%; - height: 30px; - line-height: 28px; - margin-top: 3px; - padding: 0px 11px 0px 11px; -} - -#sidebar{ - float:right; - width:260px; -} - -#footer{ - background:#777777 none repeat scroll 0 0; - border-top:7px solid #000000; - clear:both; - margin-top:30px; - overflow:hidden; - padding:15px; - text-align:center; -} - -#footer a -{ - color: White; -} - -#askform{ - padding:5px; - line-height:20px; -} -#askform .title-desc{ - color:#999; - font-size:90%; -} - -#askform #description{ - padding:20px 0 20px 0; -} - -#askform .submit{ - padding:5px 10px 5px 10px; - font-size:120%; - font-weight:bold; - width:120px; - /*letter-spacing:1px;*/ - background-color:#D4D0C8; -} -.notify -{ - position: fixed; - top: 0px; - left: 0px; - width: 100%; - z-index: 100; - padding: 7px 0 5px 0; - text-align: center; - font-size: 130%; - font-weight: Bold; - color: #444; - background-color: #F4A83D; -} - -.notify span -{ - float: left; - width: 95%; - text-align: center; -} - -.close-notify -{ - float: right; - margin-right: 20px; - color: #735005; - text-decoration: none; - background-color: #FAD163; - border: 2px #735005 solid; - padding-left: 3px; - padding-right: 3px; - cursor:pointer; -} -.small{ - font-size:90%; - color:#777; -} -.big{ - font-size:120%; - font-weight:600; - -} - -.paragraph{ - line-height:20px; - margin-bottom:10px; -} - -.paragraph-extra{ - line-height:30px; - margin-bottom:10px; -} - -.darkred{ - color:darkred; -} - -.yellowbg{ - background-color:yellow; -} - -.header-table{ - width:100%; - /*solve template header space problem*/ - margin-top:-12px; -} - -.header-table a{ - font-weight:bold; -} - -.link-separator{ - color:#ccc; - padding:3px; -} - -.action-link-separator{ - color:#ccc; -} - -.nav -{ - font-size: 120%; -} - -.nav ul -{ - margin: 0; -} - -.nav li -{ - background: #777; - display: block; - float: left; - margin-right: 7px; -} - -.nav li.youarehere -{ - background: #f90; -} - -.nav a -{ - color: #fff; - display: block; - font-weight: bold; - padding: 6px 15px 6px 15px; - text-decoration: none; -} - -.nav li.youarehere a -{ - color: white; -} - -.nav li:hover -{ - background-color:#ff9900; -} - -.header-notification{ - font-size:85%; - color:red; -} - -.highlight-box{ - /*letter-spacing:1px;*/ - color:#735005; -} - -.highlight-box p{ - margin:5px 0 0px 0; -} - -.highlight-box a{ - color:#735005; - font-size:90%; - font-weight:bold; -} - -.yellow-box{ - background-color:#FFFFCC; - border:1px dotted #D8D2A9; - margin-bottom:20px; - line-height:20px; - padding:10px 10px 5px; - -} - -.yellow-box ul{ - margin-left:0px; -} - -.yellow-box h3{ - font-size:120%; - padding-bottom:5px; - margin-bottom:10px; - border-bottom:1px dotted #D8D2A9; -} - -.gray-box{ - background-color:#eee; - border:1px dotted #D8D2A9; - margin-bottom:20px; - line-height:20px; - padding:10px 10px 5px; - overflow:hidden; -} - -.gray-box ul{ - margin-left:0px; -} - -.gray-box h3{ - font-size:120%; - padding-bottom:5px; - margin-bottom:10px; - border-bottom:1px dotted #D8D2A9; -} - -.question-item{ - width:100%; - float:left; - margin:5px 0 10px 0; - border-bottom:1px dotted #D8D2A9; -} - -.boxes{ - float:left; - text-align:center; - color:#666; -} - -.boxes-cell{ - padding-right:5px; - vertical-align:top; -} - -.questions-summary-container{ - float:left; - width:580px; - -} -.questions-boxes-container{ - float:left; -} -.questions-boxes{ - float:left; - width: 70px; - text-align:center; - color:#666; - -} -.questions-vote-number{ - font-size:200%; - font-weight:bold; - font-family:Arial; -} -.questions-answer-number{ - font-size:140%; - font-weight:bold; - font-family:Arial; -} -.questions-answerbox{ - padding:5px; -} - -.questions-votebox{ - padding:5px; -} -.questions-viewbox{ - padding:5px; -} -.qustions-summary{ - line-height:20px; - margin-bottom:5px; -} -.question-body{ - min-height:100px; -} -.question-body IMG{ - max-width:600px; -} -.questions-mark{ - float:right; - text-align:left; - font-size:90%; - - line-height:20px; - width:160px; -} - -.questions-boxicon{ - width:15px; - vertical-align:top; -} -.questions-count{ - font-family:arial; - font-size:350%; - font-weight:bolder; - margin:15px 0 15px 0; - color:#777; -} -#questions-answerbox-cell{ - padding:5px; - -} - -.vote{ - background-color:#eee; -} - -.box-number{ - font-size:160%; - font-weight:bold; - font-family:Arial; -} - -.box-unit{ - padding:3px; - font-size:90%; -} - -.answer{ - border-bottom:1px dotted #666666; - padding-bottom:20px; - padding-top:20px; - width: 100%; - margin-bottom:10px; -} -.answer-body{ - min-height:80px; -} - -.answer-body IMG{ - max-width:600px; -} - -.accepted-answer{ - background-color:#E2FCE2; - border-bottom-color:#9BD59B; -} - -.accepted-answer .comments-link{ - background-color:#D9F5D9; -} - -.accepted-answer .comments-container{ - background-color:#D9F5D9; -} - -.answered -{ - background: #75845C; - color: white; -} - -.answered-accepted -{ - background: #75845C; - color: #E1E818; -} - -.answered-by-owner -{ - background: #E0EAF1; -} - -.answered-by-owner .comments-link -{ - background-color:#D6E4EE; -} - -.answered-by-owner .comments-container -{ - background-color:#D6E4EE; -} - -.answered-accepted strong -{ - color: #E1E818; -} - -.unanswered -{ - background: #9A4444; - color: white; -} - -.view{ - -} - -.subtitle{ - padding:15px 0 10px 0; -} - -.qustion-title{ - font-size:100%; - padding:0px; - line-height:20px; - margin-bottom:5px; -} - -.question-tag{ - float:left; - padding-bottom:3px; - width:250px; -} - -.post-tag -{ - color: #3E6D8E; - background-color: #E0EAF1; - border-bottom: 1px solid #3E6D8E; - border-right: 1px solid #7F9FB6; - margin: 2px 3px 2px 0; - padding: 2px 4px 2px 4px; - text-decoration: none; - height:20px; - font-family:Microsoft Yahei,����,Tahoma; - font-size: 90%; - line-height: 2.2; - white-space:nowrap; - vertical-align:baseline; -} - -.post-tag:hover -{ - background-color: #3E6D8E; - color: #E0EAF1; - border-bottom: 1px solid #37607D; - border-right: 1px solid #37607D; - text-decoration: none; -} - -.highlight-tag{ - background-color: #3E6D8E; - color: #fff; - font-weight:bold; - border-bottom: 1px solid #3E6D8E; - border-right: 1px solid #7F9FB6; - margin: 2px 6px 2px 0; - padding: 3px 4px 3px 4px; - text-decoration: none; - font-size: 90%; -} - -.question-started{ - font-size:90%; - padding-top:10px; - float:right; - padding-bottom:3px; - -} - -.updatedtime{ - font-weight:bold; - color:#999; -} - -.badge -{ - color: #fff; - background-color: #333; - border: 1px solid #333; - margin: 0 3px 3px 0; - padding: 4px 8px 4px 3px; - color: white !important; - text-decoration: none; - line-height: 1.9; -} - -.badge:hover -{ - border: 1px solid #555; - background-color: #555; - text-decoration: none; -} - -.badge-item{ - margin-bottom:10px; -} - -.badge1 -{ - margin-left:3px; - padding-right:2px; - font-size: 120%; - color: #FFCC00; -} - -.badge2 -{ - margin-left:3px; - padding-right:2px; - font-size: 120%; - color: #C0C0C0; -} - -.badge3 -{ - margin-left:3px; - padding-right:2px; - font-size: 120%; - color: #CC9966; -} - -.badgecount -{ - color: #808185; -} - -.reputation-score{ - font-family:arial; - font-weight: bold; - color: #333; - font-size: 120%; - margin-right:2px; -} - -#recent-tags .post-tag -{ - background-color: #eee; - border: none; - margin: 0; - font-size: 100%; - color: black !important; -} - -#recent-tags .post-tag:hover -{ - background-color: #777; - color: White !important; - border: none; - margin: 0; - text-decoration: none; -} - -#related-tags{ - line-height:30px; -} - -.list-item{ - list-style:inside square - -} -.list-item li{ - margin-bottom:5px; -} - -.list-item dt{ - line-height:20px; -} - -.list-item dd{ - line-height:20px; - margin-bottom:10px; -} - -#editor{ - font-size:100%; - min-height:200px; - line-height: 18px; - width:595px; -} - -.wmd-preview{ - margin-top:10px; - padding:6px; - width:590px; - background-color:#F5F5F5; - min-height:20px; -} - -/*adjustment for editor preview*/ -.wmd-preview pre{ - background-color:#E7F1F8; - -} - -.wmd-preview blockquote -{ - background-color: #eee; -} - -.wmd-preview IMG{ - max-width:600px; -} -.preview-toggle{ - font-size:90%; - font-weight:600; - margin-bottom:-10px; - width:600px; - color:#aaa; - /*letter-spacing:1px;*/ - -} - -.preview-toggle span:hover{ - cursor:pointer; -} - -.edit-content-html{ - border-top:1px dotted #D8D2A9; - border-bottom:1px dotted #D8D2A9; - margin:5px 0 5px 0; -} - -/* 2 textarea resizer styles */ -div.grippie { - background:#EEEEEE url(../../images/grippie.png) no-repeat scroll center 2px; - border-color:#DDDDDD; - border-style:solid; - border-width:0pt 1px 1px; - cursor:s-resize; - height:9px; - overflow:hidden; - width:600px; -} -.resizable-textarea textarea { - display:block; - margin-bottom:0pt; - width:95%; - height: 20%; -} - -.openid-input{ - background:url(../../images/openid.gif) no-repeat; - padding-left:15px; - cursor:pointer; -} - -.openid-login-input{ - background-position:center left; - background:url(../../images/openid.gif) no-repeat 0% 50%; - padding:5px 5px 5px 15px; - cursor:pointer; - font-family:Trebuchet MS; - font-weight:300; - font-size:150%; - width:500px; -} - -.openid-login-submit{ - padding:6px; - /*padding:4px;*/ - cursor:pointer; - font-weight:bold; - font-size:120%; - background-color:#D4D0C8; -} - -.openid-samples{ - -} - -.openid-samples .list, .list li{ - font-family:Trebuchet MS,"segoe ui",Helvetica,"Microsoft YaHei",����,Tahoma,Verdana,MingLiu,PMingLiu,Arial,sans-serif; - list-style:none !important; - margin-left:-30px !important; - line-height:20px !important; -} - -.darkred{ - color:darkred; -} - -.gray{ - color:gray; -} - -.message{ - padding:5px; - font-weight:bold; - background-color:#eee; - margin:10px 0 10px 0; -} - -.warning{ - color:red; -} - -.vote-buttons{ - float:left; - text-align:center; - border:solid 0px #ccc; -} - -.vote-buttons img{ - cursor:pointer; -} - -.item-right{ - float:left; -} - -.vote-number{ - font-family:Arial; - padding:0px 0 3px 0; - font-size:220%; - font-weight:bold; - color:#777; -} -.favorite-number{ - font-size:100%; - font-family:Arial; - margin-top:-8px; - font-weight:bold; - color:#808185 -} - -.my-favorite-number{ - color:#D4A849; -} - -.tag-number{ - font-size:120%; - font-family:Arial; - font-weight:bold; -} - -#question-tags{ - margin:5px 0 5px 0; -} - -.question-tag-extra{ - float:left; - padding-bottom:3px; - width:100%; -} - -.question-mark{ - background-color:#E0EAF1; - text-align:left; - font-size:90%; - padding:5px; - overflow:hidden; -} - -.question-edit{ - text-align:left; - font-size:90%; - - overflow:hidden; -} - -.question-status{ - margin-top:10px; - padding: 20px; - background-color:#eee; - text-align:center; -} - -.answer-mark{ - text-align:left; - font-size:90%; - padding:5px; -} - -.wiki-category{ - margin-left:5px; - color:#999; - font-size:90%; -} - -.offensive-flag a{ - color:#777; - font-size:90%; - padding:3px; - cursor:pointer; -} - -.offensive-flag a:hover{ - background-color:#777; - text-decoration:none; - color:#fff; -} - -.linksopt a{ - color:#777; - font-size:90%; - padding:3px; - cursor:pointer; -} - -.linksopt a:hover{ - background-color:#777; - text-decoration:none; - color:#fff; -} - -.action-link a{ - color:#777; - font-size:90%; - padding:3px; - cursor:pointer; -} - -.action-link a:hover{ - background-color:#777; - text-decoration:none; - color:#fff; -} - -.dot-line{ - border-bottom:1px dotted #D8D2A9; - width:670px; /*IE*/ - /* - width:100% !important; - */ - margin-bottom:20px; -} - -.line{ - border-bottom:1px solid #777; - width:650px; /*IE*/ - /* - width:100% !important; - */ - margin-bottom:20px -} - -.taglist-td{ - width:190px; - line-height:26px; -} - -.list-table{ - margin-left:15px; -} - -.list-td{ - width:185px; - -} - -.submit{ - cursor:pointer; - #padding-bottom:0px; - #padding-top:0px - background-color:#D4D0C8; -} - -form .error{ - color:darkred; -} - -form .errorlist li{ - color: red; -} - -.vote-notification -{ - z-index: 1; - cursor: pointer; - display: none; - position: absolute; - padding: 15px; - color: White; - background-color: #AE0000; -} - -.vote-notification a -{ - color: White; - text-decoration:underline; -} - -.center-container{ - width:950px; -} - -#revisions{ - width:950px; -} - -.revision{ - margin:10px 0 10px 0; - width:100%; -} - -.revision .header{ - background-color:#eee; - padding:5px; - cursor:pointer; -} - -.revision .author{ - background-color:#E0EAF1; -} - -.revision .summary{ - padding: 5px 0 10px 0; -} - -.revision .summary span{ - /**background-color:yellow;/**/ - display:inline; -} -.revision h1{ - font-size:130%; - font-weight:600; - padding:15px 0 15px 0; -} - -.revision-mark{ - width:200px; - text-align:left; - font-size:90%; - overflow:hidden; -} - -.revision-number{ - font-size:300%; - font-weight:bold; - font-family:arial; -} - -.revision .body{ - padding-left:10px; - margin-bottom:50px; -} -.revision .answerbody{ - padding:10px 0 5px 10px; -} - -/* Revision pages */ -del { color: #FF5F5F; } -del .post-tag{ -color: #FF5F5F; -}; -ins { background-color: #97ff97;} -ins .post-tag{ -background-color: #97ff97; -}; - -/** PAGINATOR **/ -.paginator { - padding:5px 0 10px 0; - font:normal .8em arial; -} - -.paginator .prev-na, -.paginator .next-na { - padding:.3em; - font:bold .875em arial; -} - -.paginator .prev-na, -.paginator .next-na { - border:1px solid #ccc; - background-color:#f9f9f9; - color:#aaa; - font-weight:normal; -} - -.paginator .prev a, .paginator .prev a:visited, -.paginator .next a, .paginator .next a:visited { - border:1px solid #fff; - background-color:#fff; - color:#777; - padding:.3em; - font:bold 100% arial; -} - -.paginator .prev, .paginator .prev-na { margin-right:.5em; } -.paginator .next, .paginator .next-na { margin-left:.5em; } - -.paginator .page a, .paginator .page a:visited, .paginator .curr { - padding:.25em; - font:normal .875em verdana; - border:1px solid #ccc; - background-color:#fff; - margin:0em .25em; - color:#777; -} - -.paginator .curr { - background-color:#777; - color:#fff; - border:1px solid #777; - font-weight:bold; - font-size:1em; -} - -.paginator .page a:hover, -.paginator .curr a:hover, -.paginator .prev a:hover, -.paginator .next a:hover { - color:#fff; - background-color:#777; - border:1px solid #777; - text-decoration:none; -} - -.paginator .text{ - color:#777; - padding:.3em; - font:bold 100% arial; -} - -.paginator-container{ - float:right; - padding:10px 0 10px 0; -} - -.paginator-container-left{ - padding:5px 0 10px 0; -} - -.user-info { - clear:both; - height:45px; -} - -.user-info .user-action-time { - margin-bottom:4px; - margin-top:2px; -} - -.user-info .user-details { - float:left; - margin-left:5px; - overflow:hidden; - white-space:nowrap; - width:138px; -} -.user-details { - color:#888888; - line-height:17px; -} - -table.user-details td { - color:Black; - padding:4px 0; -} - -.user-info .user-gravatar32 { - float:left; - width:32px; -} - -#mainbar-full { - width:950px; -} - -#subheader { - border-bottom:1px solid #666666; - clear:both; - height:34px; - width:100%; -} - -#tabs { - float:right; - font-weight:bold; - position:relative; -} - -.summaryinfo { - color:#808185; - text-align:center; -} - -.summarycount { - font-family:arial; - color:#808185; - font-size:350%; - font-weight:bold; - text-align:center; -} -.summarysubcount { - font-family:arial; - color:#808185; - font-size:250%; - font-weight:bold; - text-align:center; -} - - -#user-about-me { - background-color:#EEEEEE; - height:200px; - line-height:20px; - margin:10px; - overflow:auto; - padding:10px; - width:90%; -} - -.favorites-count-off { - color:#919191; - float:left; - margin-top:13px; - text-align:center; -} - -.favorites-count { - color:#D4A849; - float:left; - margin-top:13px; - text-align:center; -} - -.question-summary { - border-bottom:1px dotted #999999; - float:left; - overflow:hidden; - padding:11px 0; - width:670px; -} - -.user-stats-table .question-summary { - width:800px; -} - -.narrow .stats { - background:transparent none repeat scroll 0 0; - float:left; - height:48px; - margin:0 0 0 7px; - padding:0; - width:auto; -} - -.narrow .votes { - background:#EEEEEE none repeat scroll 0 0; - float:left; - height:38px; - margin:0 3px 0 0; - padding:5px; - width:38px; -} - -.narrow .views { - float:left; - height:38px; - margin:0 7px 0 0; - padding:5px 0 5px 4px; - width:40px; -} - -.narrow .status { - float:left; - height:38px; - margin:0 3px 0 0; - padding:5px; - width:48px; -} - -.narrow .vote-count-post { - font-size:100%; - margin:0; -} - -div.votebox { - text-align:center; - vertical-align:middle; -} - -div.votebox span { - color:#808185; - display:block; - font-weight:bold; -} -.vote-count-post { - display:block; - font-size:240%; -} - -.answered-accepted { - background:#75845C none repeat scroll 0 0; - color:#E1E818; -} - -.status { - margin-top:-3px; - padding:4px 0; - text-align:center; -} - -.views { - color:#999999; - padding-top:4px; - text-align:center; -} - -.user-stats-table .summary { - width:600px; - line-height:22px; -} - -.user-stats-table .summary h3{ - margin:0px; - padding:0px; -} - -div.tags { - float:left; - line-height:18px; -} - -div.started { - color:#999999; - float:right; - line-height:18px; - width:185px; -} - -.narrow div.started { - line-height:inherit; - padding-top:4px; - white-space:nowrap; - width:auto; -} - -.relativetime { - font-weight:bold; - text-decoration:none; -} - -div.started a { - font-weight:bold; -} - -div.started .reputation-score { - margin-left:1px; -} - -.answer-summary { - clear:both; - padding:3px; -} - -.answer-votes { - background-color:#EEEEEE; - color:#555555; - float:left; - font-size:110%; - font-weight:bold; - height:15px; - padding:4px 4px 5px; - text-align:center; - text-decoration:none; - width:20px; -} - -.answered-accepted { - background:#75845C none repeat scroll 0 0; - color:#E1E818; -} - -.answer-link { - color:#555555; - float:left; - margin-top:5px; - padding-left:10px; - width:700px; -} - -.answer-link a { - font-weight:bold; -} - -.deleted{ - background:#F4E7E7 none repeat scroll 0 0; -} - -#mainbar-footer { - clear:both; - width:100%; -} - -#feed-link { - float:right; - text-align:right; -} - -#feed-link-image { - float:left; - margin-left:12px; - margin-right:5px; -} - -#feed-link-text { - float:left; -} - -.revision-comment { - background-color:#FFFE9B; - color:#333333; - line-height:1.4; - padding:3px; -} - -.accept-answer-link { - color:#508850 !important; - font-weight:bold; -} - -.accept-answer-link:hover { - background-color:#508850 !important; - color:#E1E818 !important; - text-decoration:none; -} - -div.comments { - line-height:150%; - padding:10px 0; -} - -div.post-comments{ - width:585px; - clear:both; - float:left; -} - -form.post-comments textarea { - height:6em; - margin-bottom:4px; -} - -form.post-comments input { - margin-left:10px; - margin-top:1px; - vertical-align:top; - width:100px; -} - -span.text-counter { - margin-right:20px; -} - -span.form-error { - color:#990000; - font-size:90%; - font-weight:normal; - margin-left:5px; -} - -div.comments-container, div.comments-container-accepted, div.comments-container-owner, div.comments-container-deleted { - display:none; - margin-top:-1px; - padding:0 5px 5px; -} - -div.comments-container, a.comments-link { - background-color:#EEEEEE; -} - -.post-comments a { - color:#888888; - padding:0 3px 2px; - font-size:90%; -} - -a.comments-link, a.comments-link-accepted, a.comments-link-owner, a.comments-link-deleted { - color:black; - padding:2px; - cursor:pointer; -} - -.post-comments a:hover { - background-color:#777777; - color:white; - text-decoration:none; -} - -a.comment-user, a.comment-user:hover { - background-color:inherit; - color:#0077CC; - padding:0; -} - -a.comment-user:hover { - text-decoration:underline; -} - -.user-action{ - -} -.user-action-1{ - font-weight:bold; - color:#333; -} -.user-action-2{ - font-weight:bold; - color:#75845C; -} -.user-action-3{ - color:#333; -} -.user-action-4{ - color:#333; -} -.user-action-5{ - color:darkred; -} -.user-action-6{ - color:darkred; -} -.user-action-7{ - color:#333; -} -.user-action-8{ - padding:3px; - font-weight:bold; - background-color:#75845C; - color:#E1E818; -} - -.revision-summary{ - /**background-color:#FFFE9B;/**/ - padding:2px; -} -.question-title-link a{ - font-weight:bold; - color:#0077CC; -} -.answer-title-link a{ - color:#333; -} - -.post-type-1 a { - font-weight:bold; - color:#0077CC; -} -.post-type-3 a { - font-weight:bold; - color:#0077CC; -} -.post-type-5 a { - font-weight:bold; - color:#0077CC; -} -.post-type-2 a{ - color:#333; -} -.post-type-4 a{ - color:#333; -} -.post-type-6 a{ - color:#333; -} -.post-type-8 a{ - color:#333; -} - -/* openid styles */ -.form-row{line-height:25px;} -.submit-row{line-height:30px;padding-top:10px;} -.errors{line-height:20px;color:red;} -.error{color:red;} -.error-list li{padding:5px;} -.login{margin-bottom:10px;} -.fieldset{border:solid 1px #777;margin-top:10px;padding:10px;} diff --git a/forum/skins/light/media/style/.svn/text-base/djstyle_admin.css.svn-base b/forum/skins/light/media/style/.svn/text-base/djstyle_admin.css.svn-base deleted file mode 100755 index 0ccd4ab237dd887d905e408f85df2cd2a44b099f..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/djstyle_admin.css.svn-base +++ /dev/null @@ -1,63 +0,0 @@ -@import "jquery.autocomplete.css"; - -textarea { - width: 100%; -} - -input.longstring { - width: 100%; -} - -#admin_form tr th { - white-space: nowrap; -} - -#admin_form tr th a { - font-size: 80%; -} - -#admin_form tr th .sep { - font-size: 80%; - margin-left: 6px; - margin-right: 6px; -} - -#admin_form tr td:first-of-type { - width: 100%; -} - -.string-list-input { - vertical-align: middle; -} - -.string-list-input input { - width: 600px; - margin: 0px; -} - -.string_list_widget_button { - background:url("../img/admin/nav-bg.gif") repeat-x scroll center bottom #dcdcdc; - border-color:#DDDDDD #AAAAAA #AAAAAA #DDDDDD; - border-style:solid; - border-width:1px; - color:black; - height: 20px; - width: 20px; -} - -.string_list_widget_button.add { - position: relative; - left: 612px; -} - -.admin_message { - background-color: #ffffe0; - border: 3px double #b8860b; - padding: 4px; -} - -.ajax_indicator { - background: transparent url('../images/indicator.gif') top left no-repeat; - padding: 7px 25px; - min-height: 24px; -} \ No newline at end of file diff --git a/forum/skins/light/media/style/.svn/text-base/jquery.autocomplete.css.svn-base b/forum/skins/light/media/style/.svn/text-base/jquery.autocomplete.css.svn-base deleted file mode 100755 index b8193939cacd88537188bcb9905f3f7c37619fe4..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/jquery.autocomplete.css.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -.ac_results { - padding: 0px; - border: 1px solid black; - background-color: white; - overflow: hidden; - z-index: 99999; - text-align:left; -} - -.ac_results ul { - width: 100%; - list-style-position: outside; - list-style: none; - padding: 0; - margin: 0; -} - -.ac_results li { - margin: 0px; - padding: 2px 5px; - cursor: default; - display: block; - /* - if width will be 100% horizontal scrollbar will apear - when scroll mode will be used - */ - /*width: 100%;*/ - font: menu; - font-size: 12px; - /* - it is very important, if line-height not setted or setted - in relative units scroll will be broken in firefox - */ - line-height: 16px; - overflow: hidden; -} - -.ac_loading { - background: white url(../../media/images/indicator.gif) right center no-repeat; -} - -.ac_odd { - background-color: #E7F1F8; -} - -.ac_over { - background-color: #0A246A; - color: white; -} diff --git a/forum/skins/light/media/style/.svn/text-base/markdown_help.css.svn-base b/forum/skins/light/media/style/.svn/text-base/markdown_help.css.svn-base deleted file mode 100755 index 13bc94a8724e84d03bea3e2eff62a43eb11fa366..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/markdown_help.css.svn-base +++ /dev/null @@ -1,45 +0,0 @@ -div.main-wrapper { - /* - margin: 30px auto; - overflow:hidden; - position:relative; - */ -} - -div.section { - padding-top:30px; -} - -h2.section-title { - padding-top:10px; - padding-left:10px; - width:100%; - background-color:#b6c4e2; -} - -div.section-description { - padding-top:20px; - padding-bottom:10px; -} - -table.section-example { - padding-top:5px; - padding-bottom:10px; - width:100%; -} - -table.section-example tr { -} - -table.section-example tr td { - background-color:#e5ebf8; - - padding:5px 5px 5px 5px; - width:50%; - - text-align:left; - - border: 1px solid #ccc; - -moz-border-radius:5px; - -webkit-border-radius:5px; -} diff --git a/forum/skins/light/media/style/.svn/text-base/openid.css.svn-base b/forum/skins/light/media/style/.svn/text-base/openid.css.svn-base deleted file mode 100755 index 0d201df2f4e1c6470218d4502075ecaa8b306725..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/openid.css.svn-base +++ /dev/null @@ -1,45 +0,0 @@ -#openid_form { - width: 470px; -} - #openid_form legend { - font-weight: bold; - } -#openid_choice { - display: none; -} -#openid_input_area { - clear: both; - padding: 10px; -} -#openid_btns, #openid_btns br { - clear: both; -} - #openid_highlight { - padding: 3px; - background-color: #FFFCC9; - float: left; - } - .openid_large_btn { - width: 100px; - height: 60px; - border: 1px solid #DDD; - margin: 3px; - float: left; - } - .openid_small_btn { - width: 24px; - height: 24px; - border: 1px solid #DDD; - margin: 3px; - float: left; - } - a.openid_large_btn:focus { - outline: none; - } - a.openid_large_btn:focus - { - -moz-outline-style: none; - } - .openid_selected { - border: 4px solid #DDD; - } diff --git a/forum/skins/light/media/style/.svn/text-base/prettify.css.svn-base b/forum/skins/light/media/style/.svn/text-base/prettify.css.svn-base deleted file mode 100755 index 10a37577c71edf6c398b1577e61266b20de1e4c4..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/prettify.css.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -/* Pretty printing styles. Used with prettify.js. */ - -.str { color: #080; } -.kwd { color: #008; } -.com { color: #800; } -.typ { color: #606; } -.lit { color: #066; } -.pun { color: #660; } -.pln { color: #000; } -.tag { color: #008; } -.atn { color: #606; } -.atv { color: #080; } -.dec { color: #606; } -pre.prettyprint { padding: 3px; border: 0px solid #888; } - -@media print { - .str { color: #060; } - .kwd { color: #006; font-weight: bold; } - .com { color: #600; font-style: italic; } - .typ { color: #404; font-weight: bold; } - .lit { color: #044; } - .pun { color: #440; } - .pln { color: #000; } - .tag { color: #006; font-weight: bold; } - .atn { color: #404; } - .atv { color: #060; } -} diff --git a/forum/skins/light/media/style/.svn/text-base/style.css.svn-base b/forum/skins/light/media/style/.svn/text-base/style.css.svn-base deleted file mode 100755 index 883c8913928b8de54eaa81e923d7669f49ddbabc..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/style.css.svn-base +++ /dev/null @@ -1,1946 +0,0 @@ -@import "jquery.autocomplete.css"; - -body { - /*overflow-y: scroll; - height: 100%; */ - background: none repeat scroll 0 0 #FFFFFF; - color: #000000; - font-family: sans-serif; - font-size: 12px; - line-height: 150%; - margin: 0; - padding: 0; -} - -div { - margin: 0 auto; - padding: 0; -} - -h1, h2, h3, ul, li, form, img, p { - border: medium none; - margin: 0; - padding: 0; -} - -label { - vertical-align: middle; -} - -.login label { - display: block; -} - -.login .form-row-vertical { - margin-bottom: 8px; -} - -hr { - border-color: #CCCCCE -moz-use-text-color -moz-use-text-color; - border-right: medium none; - border-style: dashed none none; - border-width: 1px medium medium; -} - -input, select { - font-family: Trebuchet MS, "segoe ui", Helvetica, "Microsoft YaHei", Tahoma, Verdana, MingLiu, PMingLiu, Arial, sans-serif; - vertical-align: middle; -} - -p { - font-size: 13px; - line-height: 140%; - margin-bottom: 13px; -} - -a { - color: #3060A8; - text-decoration: none; -} - -.clear { - clear: both; - width: 0px; - height: 0px; -} - -.badges a { - color: #763333; - text-decoration: underline; -} - -a:hover { - text-decoration: underline; -} - -.tright { - text-align: right; -} - -.spacer3 { - clear: both; - height: 30px; - line-height: 30px; - visibility: hidden; -} - -h1 { - font-size: 160%; - padding: 5px 0; - line-height: 110%; - overflow: hidden; -} - -h2 { - font-size: 140%; - padding: 3px 0; - line-height: 110%; -} - -h3 { - font-size: 120%; - padding: 3px 0; - line-height: 110%; -} - -ul { - list-style: disc outside none; - margin-bottom: 1em; - margin-left: 20px; - padding-left: 0; -} - -ol { - list-style: decimal outside none; - margin-bottom: 1em; - margin-left: 30px; - padding-left: 0; -} - -td ul { - vertical-align: middle; -} - -li input { - margin: 3px 3px 4px; -} - -pre { - background-color: #F5F5F5; - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size: 90%; - margin-bottom: 10px; - overflow: auto; - padding-left: 5px; - padding-top: 5px; - width: 580px; - white-space: pre-wrap; -} - -code { - font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace; - font-size: 90%; - white-space: pre-wrap; -} - -blockquote { - background-color: #F5F5F5; - margin-bottom: 10px; - margin-right: 15px; - padding: 10px 0 1px 10px; - max-width: 650px; -} - -blockquote blockquote { - margin: 0; - padding: 0; -} - -#wrapper, #announcement { - margin: auto; - padding: 0; - width: 990px; - background-color: #FFF; -} - -#roof { - width: 990px; -} - -#room { - background-color: #FFFFFF; - border-bottom: 1px solid #777777; - padding: 10px 0; -} - -#CALeft { - float: left; - position: relative; - width: 740px; -} - -#CARight { - float: right; - width: 240px; -} - -#CAFull { - float: left; - padding: 0 5px; - width: 950px; -} - -#ground { - background: none repeat scroll 0 0 #BDCCED; - border-top: 1px solid #000000; - padding-bottom: 0; - padding-top: 6px; - text-align: center; - width: 990px; -} - -#top { - float: right; - padding: 3px; - text-align: right; - width: 500px; -} - -#top a { - color: #333333; - font-size: 12px; - height: 35px; - margin-left: 20px; - text-align: right; - text-decoration: underline; -} - -#logo { - float: left; - padding: 5px 0 0; -} - -#nav { - float: right; - margin: 35px 0px 0px 0px; - width: 750px; -} - -#nav a { - background-color: #E5EBF8; - border-color: #888888 #888888 -moz-use-text-color; - border-style: solid solid none; - border-width: 1px 1px medium; - color: #333333; - display: block; - float: left; - font-size: 14px; - font-weight: 400; - height: 25px; - line-height: 30px; - margin-left: 10px; - padding: 0 12px 3px; - text-decoration: none; -} - -#nav a:hover { - text-decoration: underline; -} - -#nav a.on { - background: none repeat scroll 0 0 #356FCB; - border: 1px solid #356FCB; - color: #FFFFFF; - font-weight: 600; - height: 24px; - line-height: 28px; - text-decoration: none; -} - -#nav a#nav_ask { - float: right; - color: #B02B2C; - font-size: 14px; - font-weight: bold; - text-decoration: none; -} - -#nav a#nav_ask:hover { - text-decoration: underline; -} - -#nav a#nav_ask.on { - color: #FFFFFF; -} - -#searchBar { - text-align: center; - background-color: #B6C4E2; - border-color: #EEEEEC #A9ACA5 #BABDB6 #EEEEEC; - border-style: solid; - border-width: 1px; - padding: 4px 0 0; - width: 988px; -} - -#searchBar .content { -} - -#searchBar .searchInput { - border: 0px; - padding: 3px; - font-size: 13px; - height: 18px; - width: 400px; -} - -#searchBar .searchBtn { - font-size: 14px; - height: 26px; - width: 80px; -} - -#searchBar .options { - color: #333333; - font-size: 120%; - padding: 3px 0; -} - -#searchBar .options input { - margin: 0 3px 0 15px; -} - -#searchBar .options input:hover { - cursor: pointer; -} - -#listA { - background-color: #FFFFFF; - float: left; - padding: 0 0; - width: 100%; -} - -.thousand { - color: orange; -} - -.short-summary { - border-top: 1px dotted #CCCCCE; - float: left; - overflow: hidden; - padding: 3px 0px 5px 0; - position: relative; - width: 740px; -} - -#listA .short-summary:first-of-type { - border-top: 0; -} - -.user-stats-table .short-summary { - width: 764px; -} - -.short-summary h2 a { - color: #2A5594; - font-family: "Trebuchet MS", "segoe ui", arial, sans-serif; - font-size: 17px; -} - -.short-summary .userinfo { - color: #666666; - float: right; - margin-top: 8px; -} - -.userinfo a, a.userinfo { - color: #3060A8; -} - -.short-summary .counts { - float: left; - margin-right: 0px; - margin-top: 4px; - padding-right: 2px; -} - -.short-summary .counts .item-count { - font-size: 17px; - font-weight: bold; -} - -.short-summary .question-summary-wrapper { - float: right; - width: 565px; -} - -.short-summary .votes, .short-summary .status, .short-summary .views { - -moz-border-radius: 5px 5px 5px 5px; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - float: left; - font-size: 11px; - height: 42px; - margin: 0 6px 0 0px; - padding: 8px 2px 0; - text-align: center; - width: 46px; -} - -.short-summary .votes, .short-summary .views { - color: #666666; -} - -.short-summary .favorites { - width: 24px; - float: left; - text-align: center; -} - -#question-table { - margin-bottom: 10px; -} - -.questions-count { - color: #A40000; - font-family: sans-serif; - font-size: 24px; - font-weight: 600; - margin-top: 3px; - margin-right: 5px; - padding: 0 0 5px 0; -} - -.boxA { - background: none repeat scroll 0 0 #888A85; - margin-bottom: 8px; - padding: 6px; -} - -.boxA h3 { - color: #FFFFFF; - font-size: 13px; - font-weight: 800; - margin: 0 0 4px; - padding: 0; -} - -.boxA .body { - background: none repeat scroll 0 0 #FFFFFF; - border: 1px solid #999999; - font-size: 13px; - padding: 8px; -} - -.boxA .more { - font-weight: 800; - padding: 2px; - text-align: right; -} - -.boxC { - background: none repeat scroll 0 0 #E5EBF8; - border-color: #EEEEEC #A9ACA5 #BABDB6 #EEEEEC; - border-style: solid; - border-width: 1px; - margin-bottom: 8px; - padding: 10px; -} - -.boxC p { - margin-bottom: 8px; -} - -.boxC p.nomargin { - margin: 0; -} - -.boxC p.info-box-follow-up-links { - margin: 0; - text-align: right; -} - -.pager { - float: left; - margin-bottom: 16px; - margin-top: 10px; -} - -.pagesize { - float: right; - margin-bottom: 16px; - margin-top: 10px; -} - -.paginator { - font: 12px sans-serif; - padding: 5px 0 10px; -} - -.paginator .prev a, .paginator .prev a:visited, .paginator .next a, .paginator .next a:visited { - background-color: #FFFFFF; - border: 1px solid #FFFFFF; - color: #777777; - font: bold 100% sans-serif; - padding: 2px 4px 3px; -} - -.paginator .prev { - margin-right: 0.5em; -} - -.paginator .next { - margin-left: 0.5em; -} - -.paginator .page, .paginator .page a:visited, .paginator .curr { - background-color: #FFFFFF; - border: 1px solid #CCCCCC; - color: #777777; - font: 0.875em verdana; - margin: 0 0.25em; - padding: 0.25em; -} - -.paginator .curr { - background-color: #777777; - border: 1px solid #777777; - color: #FFFFFF; - font-weight: bold; -} - -.paginator .page:hover, .paginator .prev a:hover, .paginator .next a:hover { - background-color: #777777; - border: 1px solid #777777; - color: #FFFFFF; - text-decoration: none; -} - -.paginator .text { - color: #777777; - font: bold 100% sans-serif; - padding: 0.3em; -} - -.paginator-container-left { - padding: 5px 0 10px; -} - -.tags { - display: block; - font-family: sans-serif; - line-height: 200%; - margin-top: 5px; -} - -.tags a, span.tag { - background-color: #EEEEEE; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - color: #777777; - font-size: 11px; - font-weight: normal; - padding: 1px 8px; - text-decoration: none; - white-space: nowrap; -} - -.tags a:hover { - background-color: #356FCB; - color: #FFFFFF; -} - -.tag-number { - font-family: sans-serif; - font-weight: 700; -} - -.marked-tags { - margin-bottom: 5px; - margin-top: 0; -} - -.medal { - background: none repeat scroll 0 0 #FFFFCD; - border-color: #EEEEEE #CCCCCC #CCCCCC #EEEEEE; - border-left: 1px solid #EEEEEE; - border-style: solid; - border-width: 1px; - color: #333333; - font-size: 14px; - font-weight: bold; - line-height: 250%; - padding: 4px 12px 4px 6px; -} - -a.medal { - text-decoration: none; - color: #333333; -} - -a.medal:hover { - background: url("../images/medala_on.gif") no-repeat scroll 0 0 transparent; - border-color: #E7E296 #D1CA3D #D1CA3D #E7E296; - border-left: 1px solid #E7E296; - border-style: solid; - border-width: 1px; - color: #333333; - text-decoration: none; -} - -.tabBar { - background-color: #FFFFFF; - border-bottom: 1px solid white; - clear: both; - height: 30px; - margin-bottom: 3px; - width: 100%; -} - -.tabsA { - background-color: #FFFFFF; - display: block; - float: right; - font-weight: bold; - height: 20px; - position: relative; -} - -.tabsA a, .sticky-sort-tabs { - background: none repeat scroll 0 0 #EEEEEE; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - color: #888A85; - display: block; - float: left; - height: 20px; - line-height: 22px; - margin: 5px 4px 0 0; - text-decoration: none; -} - -.tabsA a { - padding: 0 11px; -} - -.sticky-sort-tabs { - width: 20px; - padding: 0; -} - -.sticky-sort-tabs input { - border: 0; - height: 14px; - width: 14px; - margin: 2px; -} - -.tabsA a.on, .tabsA a:hover { - background: none repeat scroll 0 0 #FFFFFF; - color: #A40000; -} - -.tabsA a:hover { - background: none repeat scroll 0 0 #356FCB; - color: #FFFFFF; -} - -.headlineA { - border-bottom: 1px solid #777777; - font-size: 13px; - font-weight: 800; - height: 30px; - margin-bottom: 12px; - padding-bottom: 2px; - text-align: right; -} - -.headQuestions { - background: url("../images/dot-list.gif") no-repeat scroll left center transparent; - border-bottom: 0 solid #777777; - float: left; - font-size: 15px; - font-weight: 700; - height: 23px; - line-height: 23px; - margin: 5px 0 0 5px; - padding: 0 6px 0 15px; -} - -.headUsers { - background: url("../images/dot-list.gif") no-repeat scroll left center transparent; - border-bottom: 0 solid #777777; - float: left; - font-size: 15px; - font-weight: 700; - height: 23px; - line-height: 23px; - margin: 5px 0 0 5px; - padding: 0 6px 0 15px; -} - -.headMedals { - background: url("../images/dot-list.gif") no-repeat scroll left center transparent; - border-bottom: 0 solid #777777; - float: left; - font-size: 15px; - font-weight: 700; - height: 23px; - line-height: 23px; - margin: 5px 0 0 5px; - padding: 0 6px 0 15px; -} - -.headNormal { - border-bottom: 1px solid #777777; - font-size: 15px; - font-weight: bold; - margin-bottom: 12px; - padding: 3px; - text-align: left; -} - -.headUser { - border-bottom: 1px solid #777777; - font-size: 20px; - font-weight: 800; - margin-bottom: 12px; - padding: 5px; - text-align: left; -} - -.questions-related { - font-weight: 700; - word-wrap: break-word; -} - -.questions-related p { - font-size: 100%; - line-height: 20px; - margin-bottom: 10px; -} - -.question-body { - font-size: 13px; - line-height: 20px; - min-height: 100px; -} - -.question-body img { - max-width: 640px; -} - -.vote-buttons { - float: left; - text-align: center; -} - -span.form-error { - color: #990000; - font-weight: normal; - margin-left: 5px; -} - -ul.errorlist li { - color: #990000; - font-weight: normal; - margin-left: 0px; - margin-top: 5px; -} - -.answer { - border-bottom: 1px solid #CCCCCE; - padding-top: 10px; - width: 100%; -} - -.answer-body { - font-size: 13px; - line-height: 20px; - min-height: 80px; - margin: 0 0 20px 0; -} - -.answer-body img { - max-width: 640px; -} - -/* Fixes OSQA-143 IE8 text overflow issue */ -div.question-body p, div.answer-body p { - max-width: 700px; -} - -.answered-by-owner { - background: none repeat scroll 0 0 #E9E9FF; -} - -.accepted-answer { - background-color: #EBFFE6; - border-bottom-color: #9BD59B; -} - -.answered { - background: none repeat scroll 0 0 #E5EBF8; - color: #314362; -} - -.answered-accepted, .answer-votes.answered-accepted { - background: none repeat scroll 0 0 #E6F8DD; - color: #3A6231; -} - -.unanswered { - background: none repeat scroll 0 0 #F3E3E1; - color: #6B2B28; -} - -.focusedAnswer { - background: #FFFFCC; -} - -.tagsList { - list-style-type: none; - margin: 0; - min-height: 360px; - padding: 0; -} - -.tagsList li { - float: left; - width: 235px; -} - -.badge-list { - list-style-type: none; - margin: 0; -} - -.badge-list a { - color: #3060A8; -} - -.badge-list a.medal { - color: #333333; -} - -#medalList .badgeListDescription { - float: left; - margin-top: 8px; - max-width: 60%; -} - -#medalList .badgeListItem { - float: left; - width: 32%; -} - -#medalList .intoMyBadges span { - font-size: 175%; - padding-right: 5px; - color: #5B9058; -} -#medalList .intoMyBadges { - float: left; - min-width: 5%; - text-align: right; - height:30px; -} - -.list-item { - margin-left: 15px; -} - -.list-item li { - font-size: 13px; - line-height: 20px; - list-style-type: disc; - margin-bottom: 10px; -} - -.form-row { - line-height: 25px; -} - -table.form-as-table { - margin-top: 5px; -} - -table.form-as-table ul { - display: inline; - list-style-type: none; -} - -table.form-as-table li { - display: inline; -} - -table.form-as-table pre { - display: inline; -} - -table.check-table td { - padding-right: 50px; -} - -.submit-row { - clear: both; - display: block; - line-height: 30px; - padding-top: 10px; -} - -.error { - color: darkred; - font-size: 10px; - margin: 0; -} - -.small { - font-size: 11px; -} - -span.form-error { - color: #990000; - font-size: 90%; - font-weight: normal; - margin-left: 5px; -} - -.title-desc { - color: #666666; - font-size: 90%; -} - -#editor { - font-size: 100%; - line-height: 18px; - min-height: 200px; - width: 100%; -} - -.wmd-preview { - background-color: #F5F5F5; - margin-top: 10px; - min-height: 20px; - padding: 6px; - width: 98%; - overflow: hidden; -} - -.preview-toggle { - color: #AAAAAA; - font-weight: 600; - text-align: left; - width: 100%; -} - -.preview-toggle span:hover { - cursor: pointer; -} - -#revisions { - width: 950px; -} - -.revision { - font-size: 13px; - margin: 10px 0; - width: 100%; -} - -.revision .rev-arrow { - cursor: pointer; -} - -.revision .header { - background-color: #EEEEEE; - padding: 5px; -} - -.revision .author { - background-color: #E9E9FF; -} - -.revision .summary { - padding: 5px 0 10px; -} - -.revision .summary span { - /**background-color: yellow;**/ - display: inline; - padding-left: 3px; - padding-right: 3px; -} - -.revision h1 { - font-size: 130%; - font-weight: 600; - padding: 15px 0; -} - -.revision-mark { - display: inline-block; - font-size: 90%; - overflow: hidden; - text-align: left; - width: 200px; -} - -.revision-number { - font-family: sans-serif; - font-size: 300%; - font-weight: bold; -} - -.revision .body { - margin-bottom: 50px; - padding-left: 10px; -} - -del { - color: #FF5F5F; -} - -ins { - background-color: #97FF97; -} - -.count { - color: #777777; - font-family: Arial; - font-size: 200%; - font-weight: 700; -} - -.scoreNumber { - color: #777777; - font-family: Arial; - font-size: 35px; - font-weight: 800; - line-height: 40px; -} - -.user-details { - font-size: 13px; -} - -.user-about { - background-color: #EEEEEE; - height: 200px; - line-height: 20px; - overflow: auto; - padding: 10px; - width: 90%; -} - -.user-edit-link { - background: url("../images/edit.png") no-repeat scroll 0 0 transparent; - padding-left: 20px; -} - -.user-info-table { - margin-bottom: 10px; -} - -.relativetime { - text-decoration: none; -} - -.answer-summary { - clear: both; - display: block; - padding: 3px; -} - -.answer-votes { - background-color: #EEEEEE; - color: #555555; - float: left; - font-family: Arial; - font-size: 110%; - font-weight: bold; - height: 15px; - margin-right: 10px; - padding: 4px 4px 5px; - text-align: center; - text-decoration: none; - width: 20px; -} - -.vote-count { - color: #777777; - font-family: Arial; - font-size: 160%; - font-weight: 700; -} - -.user-action-1 { - color: #333333; - font-weight: bold; -} - -.user-action-2 { - color: #CCCCCC; - font-weight: bold; -} - -.user-action-3 { - color: #333333; -} - -.user-action-4 { - color: #333333; -} - -.user-action-7 { - color: #333333; -} - -.user-action-8 { - background-color: #CCCCCC; - color: #763333; - font-weight: bold; - padding: 3px; -} - -.question-title-link a { - color: #0077CC; - font-weight: bold; -} - -.answer-title-link a { - color: #333333; -} - -.post-type-1 a { - font-weight: bold; -} - -.post-type-3 a { - font-weight: bold; -} - -.post-type-2 a { - color: #333333; -} - -.post-type-4 a { - color: #333333; -} - -.post-type-8 a { - color: #333333; -} - -.badge1 { - color: #FFCC00; -} - -.silver, .badge2 { - color: #CCCCCC; -} - -.bronze, .badge3 { - color: #CC9933; -} - -.score, .accept_rate { - color: #333333; - font-size: 110%; - font-weight: bold; - margin-left: 3px; -} - -.footerLinks { - color: #3060A8; - font-size: 13px; -} - -.footerLinks a { - color: #3060A8; - font-size: 13px; -} - -.user { - line-height: 140%; - padding: 5px; - width: 170px; - display: inline-block; -} - -.user ul { - list-style-type: none; - margin: 0; -} - -.user .thumb { - clear: both; - display: inline; - float: left; - margin-right: 4px; -} - -.message { - background-color: #EEEEEE; - border: 1px solid #AAAAAA; - margin: 10px 0; - padding: 5px; -} - -.message p { - margin-bottom: 0; -} - -.darkred { - color: darkred; -} - -.submit { - background-color: #D4D0C8; - border: 1px solid #777777; - cursor: pointer; - font-size: 120%; - font-weight: bold; - height: 40px; - padding-bottom: 4px; -} - -.submit:hover { - text-decoration: underline; -} - -.ask-body { - padding-right: 10px; -} - -.notify { - background-color: #F4A83D; - color: #444444; - font-weight: bold; - left: 0; - padding: 0; - position: fixed; - text-align: center; - top: 0; - width: 100%; - z-index: 100; -} - -* html .notify { - position: absolute; -} - -.notify p { - font-size: 16px; - margin-bottom: 5px; - margin-top: 5px; -} - -#close-notify { - background-color: #FAD163; - border: 2px solid #735005; - color: #735005; - cursor: pointer; - font-size: 14px; - line-height: 18px; - padding: 0 3px; - position: absolute; - right: 5px; - text-decoration: none; - top: 5px; -} - -#close-notify:hover { - text-decoration: none; -} - -.big { - font-size: 15px; -} - -.strong { - font-weight: bold; -} - -.orange { - color: #D64000; - font-weight: bold; -} - -.grey { - color: #808080; -} - -.about div { - border-top: 1px dashed #AAAAAA; - padding: 10px 5px; -} - -.about div.first { - border-top: medium none; - padding-top: 0; -} - -.about p { - margin-bottom: 10px; -} - -.about a { - color: #D64000; - text-decoration: underline; -} - -.about h3 { - font-size: 15px; - font-weight: 700; - line-height: 30px; - padding-top: 0; -} - -.nomargin { - margin: 0; -} - -.inline-block { - display: inline-block; -} - -.list-table td { - vertical-align: top; -} - -table.form-as-table input { - display: inline; - margin-left: 4px; -} - -ul.form-horizontal-rows { - list-style: none outside none; - margin: 0; -} - -ul.form-horizontal-rows li { - height: 40px; - position: relative; -} - -ul.form-horizontal-rows label { - display: inline-block; -} - -ul.form-horizontal-rows label { - bottom: 6px; - font-size: 12px; - left: 0; - line-height: 12px; - margin: 0; - position: absolute; -} - -ul.form-horizontal-rows li input { - bottom: 0; - left: 180px; - margin: 0; - position: absolute; -} - -#changepw-form li input { - left: 150px; -} - -.user-profile-tool-links { - font-weight: bold; - padding-bottom: 10px; -} - -.post-controls, .tags-container { - font-size: 11px; - line-height: 12px; - margin-bottom: 5px; - min-width: 200px; -} - -.tags-container { - margin: 0 0 16px 0; -} - -#question-tags { - margin-top: 15px; -} - -.post-controls { - float: left; -} - -#question-controls .tags { - margin: 0 0 3px; -} - -.post-update-info { - display: inline-block; - float: right; - margin-bottom: 5px; - width: 190px; -} - -.post-update-info p { - font-size: 11px; - line-height: 15px; - margin: 0 0 4px; - padding: 0; -} - -.post-update-info img { - float: left; - margin: 4px 8px 0 0; - width: 32px; -} - -#tagSelector { - padding-bottom: 2px; -} - -#hideIgnoredTagsControl { - margin: 5px 0 0; -} - -#hideIgnoredTagsCb { - margin: 0 2px 0 1px; -} - -a.sidebar_button { - background: none repeat scroll 0 0 #EEEEEE; - color: black; - cursor: pointer; - font-size: 11px; - padding: 3px; -} - -a.sidebar_button:hover { - background-color: #777777; - color: white; - text-decoration: none; -} - -a.post-vote, .favorite-mark, a.accept-answer { - display: block; - height: 24px; - position: relative; - width: 24px; -} - -a.post-vote.up { - background: url("../images/vote-arrow-up.png") no-repeat scroll center center transparent; -} - -a.post-vote.up.on, a.post-vote.up:hover { - background: url("../images/vote-arrow-up-on.png") no-repeat scroll center center transparent; -} - -a.post-vote.down { - background: url("../images/vote-arrow-down.png") no-repeat scroll center center transparent; -} - -a.post-vote.down.on, a.post-vote.down:hover { - background: url("../images/vote-arrow-down-on.png") no-repeat scroll center center transparent; -} - -a.accept-answer { - background: url("../images/vote-accepted.png") no-repeat scroll center center transparent; -} - -a.accept-answer.on, a.accept-answer:hover { - background: url("../images/vote-accepted-on.png") no-repeat scroll center center transparent; -} - -.community-wiki { - font-size: 11px; - color: #333; - background: url("../images/wiki.png") no-repeat left center; - padding-left: 36px; - margin: 6px 0 0 0; - min-height: 32px; - line-height: 15px; -} - -.post-score, .comments-char-left-count { - color: #777777; - font-family: Arial; - font-size: 165%; - font-weight: bold; - padding: 0 0 3px; -} - -.favorite-mark { - background: url("../images/vote-favorite-off.png") no-repeat scroll center center transparent; -} - -.favorite-mark.on, a.favorite-mark:hover { - background: url("../images/vote-favorite-on.png") no-repeat scroll center center transparent; -} - -.favorite-count { - color: #777777; - font-family: Arial; - font-size: 100%; - font-weight: bold; - padding: 0; -} - -.comments-container { - clear: both; -} - -.comments-container { - padding: 0; -} - -.answered-by-owner .comments-container { - background-color: #E6ECFF; -} - -.accepted-answer .comments-container { - background-color: #CCFFBF; -} - -.comment { - border-top: 1px dotted #CCCCCE; - margin: 0; - position: relative; -} - -.comment.not_top_scorer { - display: none; -} - -.comment-score { - color: #777777; - font-family: Arial; - font-size: 16px; - font-weight: bold; - padding-top: 3px; - vertical-align: top; - float: left; - width: 22px; - height: 100%; - text-align: center; -} - -.comment-text { - color: #444444; - font-size: 12px; - margin: 0 0 0 22px; - padding: 0; -} - -.comment-text p { - font-size: 12px; -} - -.comment-info { - font-size: 11px; - margin: 0 0 4px 0; - text-align: right; - height: 18px; - vertical-align: middle; -} - -.comment-info * { - float: right; - height: 18px; - margin-left: 4px; -} - -a.comment-like, a.comment-delete, a.comment-edit, a.comment-convert, a.comment-convert-to-question { - margin-left: 2px; - width: 18px; -} - -a.comment-like { - background: url("../images/comment-like.png") no-repeat scroll center center transparent; -} - -a.comment-like:hover, a.comment-like.on { - background: url("../images/comment-like-on.png") no-repeat scroll center center transparent; -} - -a.comment-delete { - background: url("../images/comment-delete.png") no-repeat scroll center center transparent; -} - -a.comment-delete:hover { - background: url("../images/comment-delete-hover.png") no-repeat scroll center center transparent; -} - -a.comment-convert { - background: url("../images/convert-off.png") no-repeat scroll center center transparent; -} - -a.comment-convert:hover { - background: url("../images/convert-hover.png") no-repeat scroll center center transparent; -} - -a.comment-convert-to-question { - background: url("../images/convert-to-question-off.png") no-repeat scroll center center transparent; -} - -a.comment-convert-to-question:hover { - background: url("../images/convert-to-question-hover.png") no-repeat scroll center center transparent; -} - -a.comment-edit { - background: url("../images/comment-edit.png") no-repeat scroll center center transparent; -} - -a.comment-edit:hover { - background: url("../images/comment-edit-hover.png") no-repeat scroll center center transparent; -} - -img.subscription-remove { - float:right; -} - -.comment-form-container { - display: none; - padding-top: 12px; - margin-bottom: 8px; -} - -.comment-form-widgets-container input { - vertical-align: top; -} - -.comment-form-widgets-container textarea { - height: 80px; - width: 80%; - float: left; -} - -span.comment-chars-left { - font-size: 11px; - margin-right: 20px; -} - -div.comment-tools { - border-top: 1px dotted #CCCCCE; - padding-top: 12px; - text-align: right; -} - -div.comment-tools span.comment-tools-separator { - float: left; - display: block; - line-height: 17px; - color: #ccc; - font-size: 15px; - margin-left: 1px; -} - -div.comment-tools .comments-showing { - color: #777777; - font-size: 11px; -} - -div.comment-tools a { - background: none repeat scroll 0 0 #EEEEEE; - color: black; - cursor: pointer; - font-size: 11px; - padding: 3px; -} - -div.comment-tools a:hover { - background-color: #777777; - color: white; - text-decoration: none; -} - -.action-link { - color: #777777; - cursor: pointer; - padding: 3px; -} - -.action-link a { - color: inherit; -} - -.action-link a.ajax-command:hover { - background-color: #777777; - color: #FFFFFF; - text-decoration: none; -} - -.action-link-separator { - color: #CCCCCC; -} - -.deleted { - background-color: #F4E7E7; -} - -#command-loader { - position: fixed; - bottom: 0px; - left: 0px; - width: 24px; - height: 24px; - background: url('/m/default/media/images/indicator.gif') -} - -#command-loader.success { - background: url('/m/default/media/images/vote-accepted-on.png') -} - -.comment-form-buttons { - width: 18%; - height: 100%; - float: right; -} - -.comment-form-buttons input, .user-prompt .prompt-buttons button { - height: 16px; - line-height: 12px; - font-size: 110%; - border: 1px solid #999; -} - -.comment-form-buttons input { - width: 100%; - height: auto; - padding: 2px 0 4px 0; - vertical-align: middle; - margin-top: 6px; -} - -.comments-char-left-count.warn { - color: orange; -} - -#ask-related-questions { - max-height: 150px; - overflow-y: auto; -} - -.context-menu { - position: relative; -} - -div.dialog, .context-menu-dropdown { - position: absolute; - background-color: #EEEEEE; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - -moz-box-shadow: 2px 2px 5px #3060A8; - -webkit-box-shadow: 2px 2px 5px #3060A8; -} - -.context-menu-dropdown { - display: none; - right: 0px; - top: 1.5em; - text-align: left; - list-style-type: none; - z-index: 500; -} - -.context-menu-dropdown li.item { - padding: 4px 8px 4px 8px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -.context-menu-dropdown li.item a { - color: inherit; - white-space: nowrap; - text-decoration: none; -} - -.context-menu-dropdown li.separator { - text-align: center; - padding: 10px 0 4px 0; - font-size: 120%; - font-weight: bold; -} - -.context-menu-dropdown li.item:hover { - background-color: #3060A8; - color: white; -} - -.context-menu-dropdown span { - margin-right: 4px; - float: left; - width: 16px; - height: 16px; -} - -.context-menu-trigger { - cursor: pointer; -} - -div.dialog .dialog-content { - padding: 12px 12px 42px 12px; - z-index: 1000; -} - -div.dialog .dialog-buttons { - margin: 0px; - height: 25px; - text-align: center; - position: absolute; - bottom: 0px; - left: 0px; - width: 100%; -} - -.dialog-yes, .dialog-no { - padding: 0px 5px; - margin: 0 3px 5px 3px; - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - background-color: #3060A8; - color: white; - line-height: 20px; - vertical-align: baseline; - font-weight: bold; - border: 0; -} - -div.dialog.confirm, div.dialog.warning { - text-align: center; -} - -div.dialog.confirm { - font-size: 140%; - font-weight: bold; -} - -div.dialog.prompt { - width: 355px; -} - -div.dialog.prompt .dialog-content select, div.dialog.prompt .dialog-content textarea, div.dialog.prompt .dialog-content input[type=text] { - width: 100%; - padding: 0; - border: 0; -} - -.user-prompt .prompt-buttons { - text-align: right; -} - -.suspended-user { - text-decoration: line-through; -} - -.feed-icon { - width: 14px; - height: 14px; - display: inline-block; -} - -div#subscription_list { - width: 100%; - /*float:left;*/ -} - -.subscription_switch { - display: inline-block; - zoom: 1; /* zoom and *display = ie7 hack for display:inline-block */ - *display: inline; - vertical-align: baseline; - margin: 0 2px; - outline: none; - cursor: pointer; - text-align: center; - text-decoration: none; - font: 11px Arial, Helvetica, sans-serif; - padding: .2em 1em .275em; - text-shadow: 0 1px 1px rgba(0,0,0,.3); - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - border-radius: .5em; - -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2); - -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2); - box-shadow: 0 1px 2px rgba(0,0,0,.2); - color: #101010 !important; - border: solid 1px #b7b7b7; - background: #fff; - background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed)); - background: -moz-linear-gradient(top, #fff, #ededed); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed'); -} -.subscription_switch:hover { - text-decoration: none; - background: #ededed; - background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dcdcdc)); - background: -moz-linear-gradient(top, #fff, #dcdcdc); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dcdcdc'); - color: #101010 !important; -} -.subscription_switch:active { - position: relative; - top: 1px; - background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#fff)); - background: -moz-linear-gradient(top, #ededed, #fff); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#ffffff'); -} - -div.subscription_summary { - border-top: 2px dotted #CCCCCE; - overflow: hidden; - padding: 3px 0px 5px 0; - position: relative; - width:100%; - margin-top: 5px; -} - -div.subscription_title { - /*float:left; - line-height:30px;*/ - margin-top: 5px; - font-size: 16px; - font-weight:bold; -} - -a.subscription_unsubscribe_button { - float:left; - font-size: 11px; - font-weight:bold; - - margin-right:15px; - margin-top: 5px; -} - -div.subscription_userinfo { - float:right; -} - -div.subscription_tags { - font-family: sans-serif; - float:left; -} -div.subscription_tags a, span.tag { - background-color: #EEEEEE; - border-bottom: 1px solid #CCCCCC; - border-right: 1px solid #CCCCCC; - color: #777777; - font-size: 11px; - font-weight: normal; - padding: 1px 8px; - text-decoration: none; - white-space: nowrap; -} -div.subscription_tags a:hover { - background-color: #356FCB; - color: #FFFFFF; -} - -div.wmd-button { - color:white; -} -div.wmd-button-bar { - float:left; -} diff --git a/forum/skins/light/media/style/.svn/text-base/user.css.svn-base b/forum/skins/light/media/style/.svn/text-base/user.css.svn-base deleted file mode 100755 index 7c8bcbb350be7e131ae7205fbd21fd34126bdc8e..0000000000000000000000000000000000000000 --- a/forum/skins/light/media/style/.svn/text-base/user.css.svn-base +++ /dev/null @@ -1,82 +0,0 @@ -#user-menu-container { - position: relative; - text-align: right; -} - -#user-menu { - cursor: pointer; - height: 1em; - font-size: 120%; - font-weight: bold; - color: #3060A8; -} - -#user-menu-dropdown { - position: absolute; - background-color: #EEEEEE; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - -moz-box-shadow: 2px 2px 5px #3060A8; - -webkit-box-shadow: 2px 2px 5px #3060A8; -} - -div.dialog.award-rep-points table { - margin: auto; - margin-top: 8px; -} - -div.dialog.award-rep-points table th { - text-align: left; -} - -div.dialog.award-rep-points table input, div.dialog.award-rep-points table textarea { - width: 150px; - max-height: 35px; -} - -#user-menu-dropdown { - display: none; - right: 0px; - top: 1.5em; - text-align: left; - list-style-type: none; -} - -#user-menu-dropdown li.item { - padding: 4px 8px 4px 8px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -#user-menu-dropdown li.item a { - color: inherit; - white-space: nowrap; - text-decoration: none; -} - -#user-menu-dropdown li.separator { - text-align: center; - padding: 10px 0 4px 0; - font-size: 120%; - font-weight: bold; -} - -#user-menu-dropdown li.item:hover { - background-color: #3060A8; - color: white; -} - -#user-menu-dropdown span { - margin-right: 4px; - float: left; - width: 16px; - height: 16px; -} - -.user-auth { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 0; } -.user-award_rep { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -17px; } -.user-edit { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -34px; } -.user-moderator { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -51px; } -.user-subscriptions { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -68px; } -.user-superuser { background: url('/m/default/media/images/user-sprite.png') no-repeat 0 -85px; } - diff --git a/forum/skins/light/templates/.svn/all-wcprops b/forum/skins/light/templates/.svn/all-wcprops deleted file mode 100755 index 2f49251ad192fd90495bfc401815da08214673eb..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/all-wcprops +++ /dev/null @@ -1,251 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/1273/osqa/trunk/forum/skins/default/templates -END -subscription_status.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1019/osqa/trunk/forum/skins/default/templates/subscription_status.html -END -static.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/263/osqa/trunk/forum/skins/default/templates/static.html -END -reopen.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/reopen.html -END -question_retag.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/997/osqa/trunk/forum/skins/default/templates/question_retag.html -END -questions.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1240/osqa/trunk/forum/skins/default/templates/questions.html -END -markdown_help.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/551/osqa/trunk/forum/skins/default/templates/markdown_help.html -END -footer.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/904/osqa/trunk/forum/skins/default/templates/footer.html -END -tags.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/tags.html -END -answer_edit_tips.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/656/osqa/trunk/forum/skins/default/templates/answer_edit_tips.html -END -401.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/641/osqa/trunk/forum/skins/default/templates/401.html -END -500.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/316/osqa/trunk/forum/skins/default/templates/500.html -END -base_content.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/1228/osqa/trunk/forum/skins/default/templates/base_content.html -END -close.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/close.html -END -403.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/428/osqa/trunk/forum/skins/default/templates/403.html -END -index.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/515/osqa/trunk/forum/skins/default/templates/index.html -END -question_edit.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/question_edit.html -END -ask.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/ask.html -END -revisions.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/479/osqa/trunk/forum/skins/default/templates/revisions.html -END -feedback.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1206/osqa/trunk/forum/skins/default/templates/feedback.html -END -badges.html -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1173/osqa/trunk/forum/skins/default/templates/badges.html -END -opensearch.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/478/osqa/trunk/forum/skins/default/templates/opensearch.html -END -header.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/header.html -END -badge.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/157/osqa/trunk/forum/skins/default/templates/badge.html -END -answer_edit.html -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/answer_edit.html -END -search.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/search.html -END -question_summary_list_roll.html -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/question_summary_list_roll.html -END -question.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1235/osqa/trunk/forum/skins/default/templates/question.html -END -503.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/411/osqa/trunk/forum/skins/default/templates/503.html -END -404.html -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/429/osqa/trunk/forum/skins/default/templates/404.html -END -notarobot.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/notarobot.html -END -pagesize.html -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/pagesize.html -END -logout.html -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/logout.html -END -sitemap_section_index.xml -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/961/osqa/trunk/forum/skins/default/templates/sitemap_section_index.xml -END -base.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/652/osqa/trunk/forum/skins/default/templates/base.html -END -question_edit_tips.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/860/osqa/trunk/forum/skins/default/templates/question_edit_tips.html -END -page.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/381/osqa/trunk/forum/skins/default/templates/page.html -END -account_settings.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/656/osqa/trunk/forum/skins/default/templates/account_settings.html -END -privacy.html -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/privacy.html -END -user.html -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/user.html -END -email_base.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/357/osqa/trunk/forum/skins/default/templates/email_base.html -END -paginator.html -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/paginator.html -END diff --git a/forum/skins/light/templates/.svn/entries b/forum/skins/light/templates/.svn/entries deleted file mode 100755 index 2923ac16bbbfcf6cc85b66d2da6761b4bd8ad77d..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/entries +++ /dev/null @@ -1,1449 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates -http://svn.osqa.net/svnroot - - - -2012-06-26T22:10:09.453191Z -1273 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -node -dir - -feeds -dir - -paginator.html -file - - - - -2012-07-01T12:37:36.325376Z -93d81ba0a21a44e56ddebc20ad50a5ae -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1461 - -static.html -file - - - - -2012-07-01T12:37:36.325376Z -6a0af753669e3756b94735f8d4631b65 -2010-05-13T18:24:03.445363Z -263 -hernani - - - - - - - - - - - - - - - - - - - - - -292 - -subscription_status.html -file - - - - -2012-07-01T12:37:36.325376Z -028d3bc1665edfe450c49c0eda105d9b -2011-05-03T18:30:47.394780Z -1019 -jordan - - - - - - - - - - - - - - - - - - - - - -1906 - -reopen.html -file - - - - -2012-07-01T12:37:36.325376Z -331b0d685361025734ca64f8eba3f318 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1523 - -question_retag.html -file - - - - -2012-07-01T12:37:36.325376Z -a32a961ab33dafd584d24efa98dfc324 -2011-04-22T14:42:12.133841Z -997 -hernani - - - - - - - - - - - - - - - - - - - - - -2817 - -markdown_help.html -file - - - - -2012-07-01T12:37:36.325376Z -754bd80b1c03e44c41001a691406c940 -2010-07-24T17:27:21.843513Z -551 -hernani - - - - - - - - - - - - - - - - - - - - - -11234 - -questions.html -file - - - - -2012-07-01T12:37:36.325376Z -18f60ec8be957d404f68c58a3b2f6973 -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - - - - - - - - -1639 - -footer.html -file - - - - -2012-07-01T12:37:36.325376Z -3d7cd8d56da4fe2d66b3ce33a812ae02 -2011-03-27T21:10:14.806345Z -904 -jordan - - - - - - - - - - - - - - - - - - - - - -636 - -tags.html -file - - - - -2012-07-01T12:37:36.325376Z -04318a89eeb688daa48d420645968273 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -1769 - -answer_edit_tips.html -file - - - - -2012-07-01T12:37:36.325376Z -e57f64e273c99670ddf26a99dd040754 -2010-12-29T23:28:38.783651Z -656 -jordan - - - - - - - - - - - - - - - - - - - - - -877 - -401.html -file - - - - -2012-07-01T12:37:36.325376Z -24493dabac0e45ad3b594c274ff4ca4d -2010-12-28T03:07:01.928016Z -641 -jordan - - - - - - - - - - - - - - - - - - - - - -1475 - -500.html -file - - - - -2012-07-01T12:37:36.325376Z -6db6f7621628c0fdb2f1bd38510079a5 -2010-05-24T14:17:59.806133Z -316 -matt - - - - - - - - - - - - - - - - - - - - - -1172 - -base_content.html -file - - - - -2012-07-01T12:37:36.325376Z -deed5352389164ff435c2089731a63b9 -2012-02-12T18:58:38.553183Z -1228 -jordan - - - - - - - - - - - - - - - - - - - - - -7002 - -close.html -file - - - - -2012-07-01T12:37:36.325376Z -f3ccc29df228a8545f0df7eec7e4c261 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1256 - -sidebar -dir - -403.html -file - - - - -2012-07-01T12:37:36.325376Z -4252d7069ffd2c93d1e0c62711d19c5d -2010-06-16T11:41:52.609312Z -428 -hernani - - - - - - - - - - - - - - - - - - - - - -1452 - -index.html -file - - - - -2012-07-01T12:37:36.325376Z -f187ba02a08f2685701582c5a6320807 -2010-07-09T22:22:53.221620Z -515 -hernani - - - - - - - - - - - - - - - - - - - - - -1044 - -question_edit.html -file - - - - -2012-07-01T12:37:36.321376Z -d11c6cede0853dd9cf6f46c4fddc91e8 -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -6864 - -ask.html -file - - - - -2012-07-01T12:37:36.321376Z -f1f90edf4c57257b48b25db7ef9ac63a -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -7518 - -paginator -dir - -revisions.html -file - - - - -2012-07-01T12:37:36.321376Z -5e0885be0cdf72aa02618bba8cd2b2c1 -2010-06-30T22:54:52.815351Z -479 -qw3rty - - - - - - - - - - - - - - - - - - - - - -3264 - -feedback.html -file - - - - -2012-07-01T12:37:36.321376Z -72cb98b3bfce2383676165e6f3fd0975 -2011-12-03T14:29:28.173913Z -1206 -jordan - - - - - - - - - - - - - - - - - - - - - -2598 - -badges.html -file - - - - -2012-07-01T12:37:36.321376Z -610cf42660d6c7b6970b5741cda24513 -2011-09-13T20:41:08.761865Z -1173 -jordan - - - - - - - - - - - - - - - - - - - - - -2302 - -opensearch.html -file - - - - -2012-07-01T12:37:36.321376Z -8854ebdd7251a9784f547956fa8308ae -2010-06-30T19:12:32.955591Z -478 -qw3rty - - - - - - - - - - - - - - - - - - - - - -498 - -header.html -file - - - - -2012-07-01T12:37:36.321376Z -12a91117cfc68c07ae523890b96b3363 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1841 - -auth -dir - -users -dir - -question_list -dir - -badge.html -file - - - - -2012-07-01T12:37:36.321376Z -bc0f108df3ceb7961fba6b627aa25f8c -2010-05-07T11:03:36.561425Z -157 -hernani - - - - - - - - - - - - - - - - - - - - - -1428 - -answer_edit.html -file - - - - -2012-07-01T12:37:36.321376Z -744f09c1c65d0c751e8b9fdc75d742c1 -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -4604 - -search.html -file - - - - -2012-07-01T12:37:36.321376Z -540ea090890c58a84cf7ae4a5dcb5e27 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1054 - -notifications -dir - -pagesize.html -file - - - - -2012-07-01T12:37:36.325376Z -f6c2f7428ff0f4fe765ae611cac569a7 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -788 - -notarobot.html -file - - - - -2012-07-01T12:37:36.321376Z -4221f257a985298429d0207cd915e94b -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -605 - -404.html -file - - - - -2012-07-01T12:37:36.321376Z -0b80400520e66025b91173f8e21b35b8 -2010-06-16T11:50:46.730407Z -429 -hernani - - - - - - - - - - - - - - - - - - - - - -1957 - -503.html -file - - - - -2012-07-01T12:37:36.321376Z -97b05e5a4be358bf7c254a9e3a1ceb43 -2010-06-12T01:16:53.583168Z -411 -hernani - - - - - - - - - - - - - - - - - - - - - -625 - -question.html -file - - - - -2012-07-01T12:37:36.321376Z -06c1436ba2242b23a1412d9475245e8e -2012-03-18T13:47:01.055948Z -1235 -jordan - - - - - - - - - - - - - - - - - - - - - -14850 - -question_summary_list_roll.html -file - - - - -2012-07-01T12:37:36.321376Z -fb966035755a13dc125545e800eb8c16 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -2721 - -logout.html -file - - - - -2012-07-01T12:37:36.325376Z -1713647bbd63dc13b8393aac197a7f06 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -857 - -sitemap_section_index.xml -file - - - - -2012-07-01T12:37:36.325376Z -efc1b37f4536e17fb37ba0fabefd4d09 -2011-04-10T21:16:46.186499Z -961 -jordan - - - - - - - - - - - - - - - - - - - - - -216 - -osqaadmin -dir - -base.html -file - - - - -2012-07-01T12:37:36.325376Z -4935f7af2056623c0845485bb71ab0c7 -2010-12-29T20:27:36.313297Z -652 -jordan - - - - - - - - - - - - - - - - - - - - - -576 - -question_edit_tips.html -file - - - - -2012-07-01T12:37:36.325376Z -3cc3d4e387cb7a7a31978440e5a405e6 -2011-03-17T00:32:04.218237Z -860 -hernani - - - - - - - - - - - - - - - - - - - - - -820 - -page.html -file - - - - -2012-07-01T12:37:36.325376Z -393ad7e7de8cc1bd9222191ff9866db7 -2010-06-07T01:56:21.726777Z -381 -hernani - - - - - - - - - - - - - - - - - - - - - -764 - -account_settings.html -file - - - - -2012-07-01T12:37:36.325376Z -8c71d72e1c689e542756f5d6311846d6 -2010-12-29T23:28:38.783651Z -656 -jordan - - - - - - - - - - - - - - - - - - - - - -1588 - -privacy.html -file - - - - -2012-07-01T12:37:36.325376Z -21da4c732077cf1c5b74ea6b6f8a14f2 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1161 - -user.html -file - - - - -2012-07-01T12:37:36.325376Z -ce15015f5e2b2803d74d621a21e2c3ac -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -1705 - -email_base.html -file - - - - -2012-07-01T12:37:36.325376Z -a7cf9cbe0e256eb964fffec7a76e9025 -2010-06-02T19:58:07.706904Z -357 -hernani - - - - - - - - - - - - - - - - - - - - - -1157 - diff --git a/forum/skins/light/templates/.svn/text-base/401.html.svn-base b/forum/skins/light/templates/.svn/text-base/401.html.svn-base deleted file mode 100755 index 7c1023fd6fb39157ada46de8f144edad4ac05bcf..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/401.html.svn-base +++ /dev/null @@ -1,46 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% block title %}{% trans "Not logged in" %}{% endblock %} -{% block meta %} - <!-- <meta http-equiv="refresh" content="5;url={% url auth_signin %}"> --> -{% endblock %} -{% block forestyle%} - <style type="text/css"> - form input { margin-right: 5px; } - </style> -{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - window.setInterval(function() { - $('#redirect_loader').html($('#redirect_loader').html() + '.') - }, 800); - - window.setTimeout(function() { - window.location = "{% url auth_signin %}"; - }, 5000); - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Not logged in" %} -</div> -<div id="main-body" class=""> - <div style="padding:5px 0px 10px 0;line-height:25px;"> - <h3>{% trans "You are not logged in..." %}</h3> - <div style="margin-top:5px"> - {% trans "...and the resource you're trying to access is protected." %} - <p> - {% trans "Redirecting to the login page." %}<span id="redirect_loader"></span> - </p> - <p> - {% trans "If you're not automatically redirected in 5 seconds, please click" %} - <a href="{% url auth_signin %}">{% trans "here" %}</a>. - </p> - </div> - </div> - -</div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/.svn/text-base/403.html.svn-base b/forum/skins/light/templates/.svn/text-base/403.html.svn-base deleted file mode 100755 index 26b563f63fd812f72e244d71db6cb97177820c70..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/403.html.svn-base +++ /dev/null @@ -1,36 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% block title %}{% trans "Forbidden" %}{% endblock %} -{% block forestyle%} - <style type="text/css"> - form input { margin-right: 5px; } - </style> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Forbidden" %} -</div> -<div id="main-body" class=""> - <div style="padding:5px 0px 10px 0;line-height:25px;"> - <h3>{% trans "Sorry, you don't have permissions to access this page." %}</h3> - <div style="margin-top:5px"> - {% trans "This might have happened for the following reasons:" %}<br/> - <ul> - <li>{% trans "you followed a link on an email, but you're currently logged in as another user;" %}</li> - <li>{% trans "there are errors in the url, please confirm it;" %}</li> - <li>{% trans "if you believe you shouldn't bee seeing this error, please" %} - <a href="{% if settings.CONTACT_URL %}{{ settings.CONTACT_URL }}{% else %}{% url feedback %}{% endif %}" target="_blank"> - {% trans "report this problem" %} - </a> - </li> - </ul> - </div> - <ul> - <li><a href="{% url index %}">{% trans "to home page" %} »</a></li> - <li><a href="{% url questions %}">{% trans "see all questions" %} »</a></li> - <li><a href="{% url tags %}">{% trans "see all tags" %} »</a></li> - </ul> - </div> - -</div> -{% endblock %} diff --git a/forum/skins/light/templates/.svn/text-base/404.html.svn-base b/forum/skins/light/templates/.svn/text-base/404.html.svn-base deleted file mode 100755 index ad2ac68cdbf563856385e5acba9e2d0432fd16ee..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/404.html.svn-base +++ /dev/null @@ -1,48 +0,0 @@ -{% extends "base_content.html" %} -<!-- template 404.html --> -{% load i18n %} -{% block title %}{% trans "404 Error" %}{% endblock %} -{% block forestyle%} - <style type="text/css"> - form input { margin-right: 5px; } - </style> -{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $("#linkPrevious").bind("click", back=function(){history.go(-1);}) - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "404 Not Found" %} -</div> -<div id="main-body" class=""> - <div style="padding:5px 0px 10px 0;line-height:25px;"> - <h3>{% trans "Sorry, could not find the page you requested." %}</h3> - <div style="margin-top:5px"> - {% trans "This might have happened for the following reasons:" %}<br/> - <ul> - <li>{% trans "this question or answer has been deleted;" %}</li> - <li>{% trans "url has error - please check it;" %}</li> - <li>{% trans "if you believe this error 404 should not have occurred, please" %} - <a href="{% if settings.CONTACT_URL %}{{ settings.CONTACT_URL }}{% else %}{% url feedback %}{% endif %}">{% trans "report this problem" %}</a></li> - </ul> - </div> - <script type="text/javascript"> - var GOOG_FIXURL_LANG = '{{settings.LANGUAGE_CODE}}'; - var GOOG_FIXURL_SITE = '{{site_url}}'; - </script> - <script type="text/javascript" src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script> - <ul> - <li><a href="#" id="linkPrevious">{% trans "back to previous page" %} »</a></li> - <li><a href="{% url questions %}">{% trans "see all questions" %} »</a></li> - <li><a href="{% url tags %}">{% trans "see all tags" %} »</a></li> - </ul> - </div> - -</div> -{% endblock %} -<!-- end template 404.html --> diff --git a/forum/skins/light/templates/.svn/text-base/500.html.svn-base b/forum/skins/light/templates/.svn/text-base/500.html.svn-base deleted file mode 100755 index 3300b8e91a8ed4796972e8955c2f97b549043352..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/500.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% extends "base_content.html" %} -<!-- template 500.html --> -{% load i18n %} -{% block title %}{% spaceless %}500 Error{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $("#linkPrevious").bind("click", back=function(){history.go(-1);}) - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class=""> - <h3> - 500 Server Error - </h3> - -</div> -<div id="main-body" class="headNormal"> - <div style="padding:5px 0px 10px 0;line-height:25px"> - <h3>{% trans "sorry, system error" %}</h3> - <br/> - {% trans "system error log is recorded, error will be fixed as soon as possible" %}<br/> - {% trans "please report the error to the site administrators if you wish" %} - <ul> - <li><a href="#" id="linkPrevious">{% trans "back to previous page" %}</a></li> - <li><a href="{% url questions %}">{% trans "see latest questions" %}</a></li> - <li><a href="{% url tags %}">{% trans "see tags" %}</a></li> - </ul> - </div> - -</div> -{% endblock %} -<!-- end template 500.html --> diff --git a/forum/skins/light/templates/.svn/text-base/503.html.svn-base b/forum/skins/light/templates/.svn/text-base/503.html.svn-base deleted file mode 100755 index 8f1664c890bd7c6d4c69e1534e776f4b0b250ab1..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/503.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n %} - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <title>{% trans "System down for maintenance" %}</title> - <style> - #content { - margin: auto; - } - </style> - </head> - <body> - <div id="content"> - <img src="{{ app_logo }}"> - <p>{{ app_title }}</p> - <h3>{% trans "System down for maintenance" %}</h3> - <br/> - {{ message }} - </div> - </body> -</html> diff --git a/forum/skins/light/templates/.svn/text-base/account_settings.html.svn-base b/forum/skins/light/templates/.svn/text-base/account_settings.html.svn-base deleted file mode 100755 index d1349ec77c42e2399fb28ff11454ee470100349d..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/account_settings.html.svn-base +++ /dev/null @@ -1,45 +0,0 @@ -{% extends "base_content.html" %} -<!-- settings.html --> -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Account functions" %}{% endspaceless %}{% endblock %} -{% block head %} -<style type="text/css" media="screen"> - h4 {font-size:12pt;} - dt, dd { padding:0 0 0.35em 0; } - dt { float: left; width: 21ex; } - dd { margin-left: 23ex; } - - #settings-options, #settings-intro { padding: 4em 1.5em;} - #settings-options { min-height: 300px; border-left: 1px solid #333;} - - #settings-options h5 { font-weight: bold;} -</style> -{% endblock %} - -{% block content %} -<div id="main-bar"> - <h3><strong>{{ request.user.username }} {% trans "Profile" %}</strong></h3> -</div> -<div id="settings-options"> - {% if msg %} - <p class="error">{{ msg }}</p> - {% endif %} - - <dl class="list-item"> - <dt>» <a href="{% url user_changepw %}">{% trans "Change password" %}</a></dt> - <dd>{% trans "Give your account a new password." %}</dd> - {% comment %} - <dt>» <a href="{% url user_changeemail %}">{% trans "Change email " %}</a></dt> - <dd>{% trans "Add or update the email address associated with your account." %}</dd> - - <dt>» <a href="{% url user_changeopenid %}">{% trans "Change OpenID" %}</a></dt> - <dd>{% trans "Change openid associated to your account" %}</dd> - - - <dt>» <a href="{% url user_delete %}">{% trans "Delete account" %}</a></dt> - <dd>{% trans "Erase your username and all your data from website" %}</dd> - {% endcomment %} - </dl> -</div> -{% endblock %} -<!-- end settings.html --> diff --git a/forum/skins/light/templates/.svn/text-base/answer_edit.html.svn-base b/forum/skins/light/templates/.svn/text-base/answer_edit.html.svn-base deleted file mode 100755 index 3201dd26de651966b3c59b537a3f3a33f5ab650f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/answer_edit.html.svn-base +++ /dev/null @@ -1,116 +0,0 @@ -{% extends "base.html" %} -<!-- template answer_edit.html --> -{% load i18n %} -{% load extra_tags %} -{% block title %}{% spaceless %}{% trans "Edit answer" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - <script type="text/javascript"> - - $().ready(function(){ - $("#nav_questions").attr('className',"on"); - $('#editor').TextAreaResizer(); - - - //toggle preview of editor - var display = true; - var txt = "{% trans "hide preview" %}"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "{% trans "show preview" %}" : "{% trans "hide preview" %}"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - - - $('#id_revision').unbind().change(function(){ - $("#select_revision").click(); - }); - - - answer = $("textarea#editor")[0].value; - }); - - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - $("input.submit")[1].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - if($("textarea#editor")[0].value != answer) { - return yourWorkWillBeLost(e); - } - } - window.addEventListener('beforeunload', beforeUnload, true); - - var answer = ""; - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Edit answer" %} [<a href="{{ answer.question.get_absolute_url }}#{{ answer.id }}">{% trans "back" %}</a>] -</div> -<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" %}:</strong></label> <br/> - {% if revision_form.revision.errors %}{{ revision_form.revision.errors.as_ul }}{% endif %} - <div> - {{ revision_form.revision }} <input type="submit" style="display:none" id="select_revision" name="select_revision" value="{% trans "select revision" %}"> - </div> - <div class="form-item"> - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ form.text }} - <span class="form-error"></span> - <div class="preview-toggle"><span id="pre-collapse" - title="{% trans "Toggle the real time Markdown editor preview" %}">{% trans "toggle preview" %}</span> - <span style="text-align: right; margin-left: 200px;" id="editor-metrics"></span> - {% if settings.WIKI_ON %} - <div style="float:right;"> - {{ form.wiki }} <span style="color:#000;cursor:help" title="{{form.wiki.help_text}}">{{ form.wiki.label_tag }} </span> - </div> - {% endif %} - </div> - <div id="previewer" class="wmd-preview"></div> - </div> - - <strong>{{ form.summary.label_tag }}</strong> <br/> - {{ form.summary }} {{ form.summary.errors }} - <div class="title-desc"> - {{ form.summary.help_text }} - </div> - - {% if form.recaptcha %} - <div class="question-captcha"> - {{ form.recaptcha.errors }} - {{ form.recaptcha }} - </div> - {% endif %} - - <input type="button" value="{% trans "Save edit" %}" class="submit" onclick="submitClicked(event, this.form)" /> - <input type="button" value="{% trans "Cancel" %}" class="submit" onclick="submitClicked(event, this.form);history.back(-1);" /> - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -{% include "answer_edit_tips.html" %} -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end template answer_edit.html --> diff --git a/forum/skins/light/templates/.svn/text-base/answer_edit_tips.html.svn-base b/forum/skins/light/templates/.svn/text-base/answer_edit_tips.html.svn-base deleted file mode 100755 index 39e1f3c2a34aac7088b6764175c9ba57ec52d6f1..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/answer_edit_tips.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -<!-- template answer_edit_tips.html --> -{% load i18n general_sidebar_tags %} -<div class="boxC"> - <p class="subtitle darkred">{% trans "answer tips" %}</p> - <div> - <ul class="list-item"> - <li> <b>{% trans "please make your answer relevant to this community" %}</b> - </li> - <li> - {% trans "try to give an answer, rather than engage into a discussion" %} - </li> - <li> - {% trans "please try to provide details" %} - </li> - <li> - {% trans "be clear and concise" %} - </li> - </ul> - <p class='info-box-follow-up-links'> - <a href="{% url faq %}" target="_blank" title="{% trans "see frequently asked questions" %}">faq »</a> - </p> - </div> -</div> - -{% markdown_help %} -<!-- end template answer_edit_tips.html --> diff --git a/forum/skins/light/templates/.svn/text-base/ask.html.svn-base b/forum/skins/light/templates/.svn/text-base/ask.html.svn-base deleted file mode 100755 index ec5b1a8e80d6ac2fd5fb38cd541f9bdc9a1beff9..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/ask.html.svn-base +++ /dev/null @@ -1,178 +0,0 @@ -{% extends "base.html" %} -<!-- template ask.html --> -{% load i18n extra_tags extra_filters %} -{% block title %}{% spaceless %}{% trans "Ask a question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - <script type="text/html" id="question-summary-template"> - <div class="answer-summary"> - <a href="%URL%"><div class="answer-votes">%SCORE%</div></a> - <div class="answer-link"> - <a class="question-hyperlink" href="%URL%" title="%SUMMARY%">%TITLE%</a> - </div> - </div> - </script> - <script type="text/javascript"> - $(function(){ - //set current module button style - $("#nav_ask").attr('className',"on"); - $('#editor').TextAreaResizer(); - - //toggle preview of editor - //todo remove copy-paste - var display = true; - var txt = "[{% trans "hide preview" %}]"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "[{% trans "show preview" %}]" : "[{% trans "hide preview" %}]"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - - //Tags autocomplete action - $("#id_tags").autocomplete("{% url matching_tags %}", { - minChars: 1, - matchContains: true, - max: 10, - multiple: true, - multipleSeparator: " ", - highlightItem: true, - scroll: true, - scrollHeight: 300, - - - /* - formatItem: function(row, i, max) { - return row.n + " ("+ row.c +")"; - }, - formatResult: function(row, i, max){ - return row.n; - } - */ - - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - - }); - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - if($("input#id_title")[0].value != "" || $("textarea#editor")[0].value != "" || $("input#id_tags")[0].value != "") { - return yourWorkWillBeLost(e); - } - } - window.addEventListener('beforeunload', beforeUnload, true); - - var related_questions_url = "{% url related_questions %}"; - </script> - <script src="{% media "/media/js/osqa.ask.js" %}" type="text/javascript"></script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Ask a question" %} -</div> -<div id="main-body" class="ask-body"> - <div id="askform"> - <form id="fmask" action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - {% if not request.user.is_authenticated %} - <div class="message"> - <span class="strong big">{% trans "You are welcome to start submitting your question anonymously." %}</span> - <p>{% blocktrans %} - After submiting your question, you will be redirected to the login/signup page. - Your question will be saved in the current session and will be published after you login with your existing account, - or signup for a new account{% endblocktrans %}{% if "ask"|contained_in:settings.REQUIRE_EMAIL_VALIDATION_TO %} - {% trans "and validate your email." %}{% else %}.{% endif %}</p> - </div> - {% else %} - {% if not request.user.email_valid_and_can_ask %} - <div class="message"> - {% blocktrans %}Remember, your question will not be published until you validate your email.{% endblocktrans %} - <a href="{% url send_validation_email %}">{% trans "Send me a validation link." %}</a> - </div> - {% endif %} - {% endif %} - <div class="form-item"> - <label for="id_title" ><strong>{{ form.title.label_tag }}:</strong></label> <span class="form-error"></span><br/> - {{ form.title }} {{ form.title.errors }} - <div class="title-desc"> - {{ form.title.help_text }} - </div> - </div> - <div id="ask-related-questions"></div> - <div class="form-item"> - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ form.text }} {{ form.text.errors }} - <div class="preview-toggle"> - <table width="100%"> - <tr> - <td> - <span id="pre-collapse" title="{% trans "Toggle the real time Markdown editor preview" %}">{% trans "toggle preview" %}</span> - </td> - <td style="text-align: right;" id="editor-metrics"></td> - {% if settings.WIKI_ON %} - <td class="tright"> - {{ form.wiki }} <span class="help_text" title="{{form.wiki.help_text}}">{{ form.wiki.label_tag }} </span> - </td> - {% endif %} - </tr> - - </table> - </div> - <div id="previewer" class="wmd-preview"></div> - <span class="form-error"></span> - </div> - <div class="form-item"> - <strong>{{ form.tags.label_tag }}:</strong> {% trans "(required)" %} <span class="form-error"></span><br/> - {{ form.tags }} {{ form.tags.errors }} - </div> - <p class="title-desc"> - {{ form.tags.help_text }} - </p> - - {% if form.recaptcha %} - <div class="question-captcha" style="float: left"> - {{ form.recaptcha.errors }} - {{ form.recaptcha }} - </div> - <div class="clear"></div> - {% endif %} - - {% if not request.user.is_authenticated %} - <input name="ask" type="button" value="{% trans "Login/signup to post your question" %}" class="submit" onclick="submitClicked(event, this.form)"/> - {% else %} - <input name="ask" type="button" value="{% trans "Ask your question" %}" class="submit" onclick="submitClicked(event, this.form)"/> - {% endif %} - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -{% include "question_edit_tips.html" %} -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end template ask.html --> diff --git a/forum/skins/light/templates/.svn/text-base/badge.html.svn-base b/forum/skins/light/templates/.svn/text-base/badge.html.svn-base deleted file mode 100755 index 341f2393b97ba56613244fe86414c9eb2f0a68a7..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/badge.html.svn-base +++ /dev/null @@ -1,38 +0,0 @@ -{% extends "base_content.html" %} -<!-- template badge.html --> -{% load i18n %} -{% load extra_tags %} -{% load user_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{{ badge.name }} - {% trans "Badge" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $("#nav_badges").attr('className',"on"); - }); - - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Badge" %} -</div> -<div id="main-body" style="width:100%;margin-bottom:20px"> - <p> - <a href="{{badge.get_absolute_url}}" title="{{ badge.get_type_display }} : {{ badge.description }}" class="medal"><span class="badge{{ badge.type }}">●</span> {{ badge.name }}</a> {{ badge.description }} - </p> - <div> - {% if badge.awarded_count %} - <p style="float:left"><span class="count">{{ award_count|intcomma }}</span> - <strong>{% trans "The users have been awarded with badges:" %}</strong></p> - {% endif %} - </div> - <div id="award-list" style="clear:both;margin-left:20px;line-height:25px;"> - {% for award in awards %} - <p style="width:220px;float:left">{% user_signature award.user "badges" %}<span class="tag-number"> × {{ award.count|intcomma }}</span></p> - {% endfor %} - </div> - -</div> -{% endblock %} -<!-- end template badge.html --> diff --git a/forum/skins/light/templates/.svn/text-base/badges.html.svn-base b/forum/skins/light/templates/.svn/text-base/badges.html.svn-base deleted file mode 100755 index 019a329f4e31ee1a6403e1aa6b462d99dd7c7fd2..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/badges.html.svn-base +++ /dev/null @@ -1,65 +0,0 @@ -{% extends "base.html" %} -<!-- template badges.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Badges summary" %}{% endspaceless %}{% endblock %} -{% block content %} -<div class="headlineA"> - <span class="headMedals">{% trans "Badges" %}</span> -</div> -<div class="badges" id="main-body" style="width:100%"> - <p> - {% trans "Community gives you awards for your questions, answers and votes." %} - {% blocktrans %}Below is the list of available badges and number of times each type of badge has been awarded. - {% endblocktrans %} - </p> - <div id="medalList"> - {% for badge in badges %} - <div style="clear:both;line-height:30px"> - <div class="intoMyBadges"> - {% if badge.id in mybadges %} - <span>✔</span> - {% endif %} - </div> - <div class="badgeListItem"> - <a href="{{badge.get_absolute_url}}" title="{{ badge.get_type_display }} : {{ badge.description }}" class="medal"><span class="badge{{ badge.type }}">●</span> {{ badge.name }}</a><strong> × {{ badge.awarded_count|intcomma }}</strong> - </div> - <p class="badgeListDescription"> - {{ badge.description }} - </p> - </div> - {% endfor %} - </div> -</div> -{% endblock %} -{% block sidebar %} - -<div class="boxC"> - <h3>{% trans "Community badges" %}</h3> - <div class="body"> - <p> - <span title="{% trans "gold badge: the highest honor and is very rare" %}" class="medal"><span class="badge1">●</span> {% trans "gold" %}</span> - </p> - <p> - {% trans "gold badge description" %} - </p> - <p> - <span - title="{% trans "silver badge: occasionally awarded for the very high quality contributions" %}" - class="medal"><span class="badge2">●</span> {% trans "silver" %}</span> - </p> - <p> - {% trans "silver badge description" %} - </p> - <p> - <span title="{% trans "bronze badge: often given as a special honor" %}" class="medal"> - <span class="badge3">●</span> {% trans "bronze" %}</span> - </p> - <p> - {% trans "bronze badge description" %} - </p> - </div> -</div> -{% endblock %} -<!-- end template badges.html --> diff --git a/forum/skins/light/templates/.svn/text-base/base.html.svn-base b/forum/skins/light/templates/.svn/text-base/base.html.svn-base deleted file mode 100755 index 141dc39071aa0a4f966e697362340982a86329b8..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/base.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% extends "base_content.html" %} -{% block page_center %} - -{% block full_width_banner %}{% endblock %} - -<div id="wrapper"> - {% block site_width_banner %}{% endblock %} - - <div id="room"> - <div id="CALeft"> - {% block content%} - {% endblock%} - - </div> - <div id="CARight"> - {% block sidebar%} - {% endblock%} - - </div> - <div id="tail" style="clear:both;"> - {% block tail %} - {% endblock %} - </div> - </div> - <div class="spacer3"></div> -</div> -{% endblock %} - diff --git a/forum/skins/light/templates/.svn/text-base/base_content.html.svn-base b/forum/skins/light/templates/.svn/text-base/base_content.html.svn-base deleted file mode 100755 index 789710d2177d359b05464d750375450c1427c2cc..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/base_content.html.svn-base +++ /dev/null @@ -1,152 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!-- base_content.html --> -{% load i18n extra_tags extra_filters markup ui_registry %} -<html xmlns="http://www.w3.org/1999/xhtml"> - <head>{% block after_head_js %}{% endblock %} - <title>{% block fulltitle %}{% block title %}{% endblock %} - {{ settings.APP_SHORT_NAME }}{% endblock %}</title> - <meta name="description" content="{% block metadescription %}{{ settings.APP_DESCRIPTION }}{% endblock %}" /> - <meta name="keywords" content="{% block metakeywords %}{{ settings.APP_KEYWORDS }}{% endblock %}" /> - {% block meta %}{% endblock %} - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - {% if settings.GOOGLE_SITEMAP_CODE %} - <meta name="google-site-verification" content="{{ settings.GOOGLE_SITEMAP_CODE }}" /> - {% endif %} - <link rel="shortcut icon" href="{{ settings.APP_FAVICON }}" /> - <link href="{% media "/media/style/style.css" %}" rel="stylesheet" type="text/css" /> - {% if settings.USE_CUSTOM_CSS|or_preview:request %} - <link href="{% url custom_css %}" rel="stylesheet" type="text/css" /> - {% endif %} - <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/base/jquery-ui.css" /> - <!--[if IE 6]> - <style type="text/css"> - img, div, a { behavior: url({% media "/media/iepngfix/iepngfix.htc" %}) } - </style> - <![endif]--> - {% block forestyle %}{% endblock %} - - <script src="http://www.google.com/jsapi" type="text/javascript"></script> - <script type="text/javascript"> - /*<![CDATA[*/ - google.load("jquery", "1"); - google.load("jqueryui", "1", {autoload:true}); - - var i18nLang = '{{ settings.LANGUAGE_CODE }}'; - var appUrl = '{{ settings.APP_URL }}' - var scriptUrl = '{{ settings.FORCE_SCRIPT_NAME }}/' - var osqaSkin = '{{ settings.OSQA_SKIN }}'; - - var messages = { - username: '{{ user.username }}', - confirm: "{% trans "Are you sure?" %}", - yes: "{% trans "Yes" %}", - no: "{% trans "No" %}", - message: "{% trans "Message:" %}", - cancel: "{% trans "Cancel" %}", - close: "{% trans "Close" %}", - ok: "{% trans "Ok" %}", - matching_tags_url: "{% url matching_tags %}", - word: "{% trans "word" %}", - words: "{% trans "words" %}", - character: "{% trans "character" %}", - characters: "{% trans "characters" %}" - } - /*]]>*/ - </script> - <script type="text/javascript" src="{% media "/media/js/osqa.main.js" %}"></script> - {% if user_messages %} - <style type="text/css"> - body { margin-top:2.4em; } - </style> - <script type="text/javascript"> - $(document).ready(function() { - var element = $('#validate_email_alert'); - element.click(function(){notify.close(true);}) - notify.show(); - }); - </script> - {% endif %} - {% if settings.USE_CUSTOM_HEAD|or_preview:request %} - {{ settings.CUSTOM_HEAD|or_preview:request|safe }} - {% endif %} - {% block forejs %}{% endblock %} - <link rel="search" type="application/opensearchdescription+xml" href="{% url opensearch %}" title="{{ settings.APP_SHORT_NAME }} Search" /> - {% loadregistry head_content %}{% endloadregistry %} - </head> - <body> - <div class="wrapper"> - {% if settings.USE_CUSTOM_HEADER|or_preview:request %} - <div id="custom_header"> - {{ settings.CUSTOM_HEADER|or_preview:request|static_content:settings.CUSTOM_HEADER_RENDER_MODE }} - </div> - {% endif %} - {% include "header.html" %} - {% block page_center %} - <div id="wrapper"> - <div id="room"> - <div id="CAFull"> - {% block content%} - {% endblock%} - - </div> - <div id="tail" style="clear:both;"> - {% block tail %} - {% endblock %} - </div> - </div> - <div class="spacer3"></div> - </div> - {% endblock %} - {% if settings.USE_CUSTOM_FOOTER|or_preview:request %} - {% ifequal settings.CUSTOM_FOOTER_MODE|or_preview:request "above" %} - <div id="custom_footer"> - {{ settings.CUSTOM_FOOTER|or_preview:request|static_content:settings.CUSTOM_FOOTER_RENDER_MODE }} - </div> - {% endifequal %} - <div id="ground"> - {% ifequal settings.CUSTOM_FOOTER_MODE|or_preview:request "replace" %} - {{ settings.CUSTOM_FOOTER|or_preview:request|static_content:settings.CUSTOM_FOOTER_RENDER_MODE }} - {% else %} - {% include "footer.html" %} - {% endifequal %} - </div> - {% ifequal settings.CUSTOM_FOOTER_MODE|or_preview:request "below" %} - <div id="custom_footer"> - {{ settings.CUSTOM_FOOTER|or_preview:request|static_content:settings.CUSTOM_FOOTER_RENDER_MODE }} - </div> - {% endifequal %} - {% else %} - <div id="ground"> - {% include "footer.html" %} - </div> - {% endif %} - {% block endjs %} - {% endblock %} - {% if settings.GOOGLE_ANALYTICS_KEY %} - <script type="text/javascript"> - var _gaq = _gaq || []; - _gaq.push(['_setAccount', '{{ settings.GOOGLE_ANALYTICS_KEY }}']); - _gaq.push(['_trackPageview']); - - (function() { - var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; - ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; - var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); - })(); - </script> - {% endif %} - </div> - - <!-- Put all elements with fixed position here, IE6 fixed position fix: http://ryanfait.com/position-fixed-ie6/ --> - <div class="notify" style="display:none"> - {% autoescape off %} - {% if user_messages %} - {% for message in user_messages %} - <p class="darkred">{{ message }}</p> - {% endfor %} - {% endif %} - {% endautoescape %} - <a id="close-notify" onclick="notify.close(true)">×</a> - </div> - </body> -</html> -<!-- end template base_content.html --> diff --git a/forum/skins/light/templates/.svn/text-base/close.html.svn-base b/forum/skins/light/templates/.svn/text-base/close.html.svn-base deleted file mode 100755 index 2e8af8d335da9b09b9b1aebd229dc690527de30c..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/close.html.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -{% extends "base_content.html" %} -<!-- template close.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Close question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $('#btBack').bind('click', function(){ history.back(); }); - }); - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Close question" %} -</div> -<div id="main-body" style="width:100%;margin-bottom:10px"> - <p>{% trans "Close the question" %}: <a href="{{ question.get_absolute_url }}"> - <strong>{{ question.get_question_title }}</strong></a> - </p> - - <form id="fmclose" action="{% url close question.id %}" method="post" > - {% csrf_token %} - <p> - <strong>{% trans "Reasons" %}:</strong> {{ form.reason }} - </p> - <div id="" style="padding-top:20px"> - <input type="submit" value="{% trans "OK to close" %}" class="submit" /> - <input id="btBack" type="button" class="submit" value="{% trans "Cancel" %}" /> - - </div> - - </form> -</div> -{% endblock %} -<!-- end template close.html --> diff --git a/forum/skins/light/templates/.svn/text-base/email_base.html.svn-base b/forum/skins/light/templates/.svn/text-base/email_base.html.svn-base deleted file mode 100755 index 211b394442682b0cff77c75b584899d2a20ac1c5..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/email_base.html.svn-base +++ /dev/null @@ -1,47 +0,0 @@ -{% load extra_filters %} -{% load extra_tags %} -{% load email_tags %} -{% load i18n %} - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <style type="text/css"> - body { - background: #FFF; - font-size: 12px; - line-height: 150%; - margin: 0; - padding: 0; - color: #000; - font-family: sans-serif; - } - - #wrapper { - width: 600px; - margin: auto; - padding: 0; - } - - a img { - border: none; - } - </style> - </head> - <body> - <a href="{% fullurl index %}"> - <img src="cid:logo" title="{% trans "home" %}" alt="{{settings.APP_TITLE}} logo"/> - </a> - <br /> - <p>{{ settings.APP_TITLE }}</p> - <br /><br /> - <div id="wrapper"> - <div id="room"> - <div id="CALeft"> - {% block content%} - {% endblock%} - </div> - </div> - <div class="spacer3"></div> - </div> - </body> -</html> \ No newline at end of file diff --git a/forum/skins/light/templates/.svn/text-base/feedback.html.svn-base b/forum/skins/light/templates/.svn/text-base/feedback.html.svn-base deleted file mode 100755 index 690e9439a73307315470d24b7250202149937922..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/feedback.html.svn-base +++ /dev/null @@ -1,72 +0,0 @@ -{% extends "base_content.html" %} -<!-- template about.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Feedback" %}{% endspaceless %}{% endblock %} -{% block forejs %} -{% endblock %} -{% block content %} -<div class="headNormal"> -{% trans "Give us your feedback!" %} -</div> -<div class="content"> - <form method="post" action="{% url feedback %}" accept-charset="utf-8"> - {% csrf_token %} - {% if user.is_authenticated %} - <p class="message"> - {% blocktrans with user.username as user_name %} - <span class='big strong'>Dear {{user_name}}</span>, we look forward to hearing your feedback. - Please type and send us your message below. - {% endblocktrans %} - <p> - {% else %} - <p class="message"> - {% blocktrans %} - <span class='big strong'>Dear visitor</span>, we look forward to hearing your feedback. - Please type and send us your message below. - {% endblocktrans %} - </p> - <div class="form-row"><label for="id_name">{{form.name.label}}</label><br/>{{form.name}}</div> - <div class="form-row"> - <label for="id_email">{{form.email.label}} - {% if form.errors.email %} - <strong>(please enter a valid email)</strong> - {% endif %} - </label><br/>{{form.email}} - </div> - {% endif %} - <div class="form-row"> - <label for="id_message">{{form.message.label}} - {% if form.errors.message %} - <strong>{% trans "(this field is required)" %}</strong> - {% endif %} - </label> - <br/> - {{form.message}} - </div> - - {% if form.recaptcha %} - <div class="form-row"> - <label for="recaptcha_response_field">Are you a human? - {% if form.errors.recaptcha %} - <strong>{% trans "(wrong captcha)" %}</strong> - {% endif %} - </label> - <br/> - <div style="float: left;"> - {{ form.recaptcha }} - </div> - <div class="clear"></div> - </div> - {% endif %} - - {{form.next}} - <div class="submit-row"> - <input type="submit" class="submit" value="{% trans "Send Feedback" %}"/> - <input type="submit" class="submit" name="cancel" value="{% trans "Cancel" %}"/> - </div> - </form> -</div> -{% endblock %} -<!-- end template about.html --> diff --git a/forum/skins/light/templates/.svn/text-base/footer.html.svn-base b/forum/skins/light/templates/.svn/text-base/footer.html.svn-base deleted file mode 100755 index f5090aa6322acea722c145db93539cdf165e76dc..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/footer.html.svn-base +++ /dev/null @@ -1,19 +0,0 @@ -{% load extra_tags ui_registry i18n %} - - -<div> - <div class="footerLinks" > - {% loadregistry footer_links %}<span class="link-separator"> |</span>{% endloadregistry %} - </div> - <p> - <a href="http://osqa.net" target="_blank" title="OSQA {{ settings.OSQA_VERSION }} ({{ settings.SVN_REVISION }})"> - powered by OSQA - </a> - </p> -</div> - <div id="licenseLogo"> - <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"> - <img src="{% media "/media/images/by-sa-88x31.png" %}" title="Creative Commons: Attribution - Share Alike" alt="cc-by-sa" width="88" height="31" /> - </a> - </div> - diff --git a/forum/skins/light/templates/.svn/text-base/header.html.svn-base b/forum/skins/light/templates/.svn/text-base/header.html.svn-base deleted file mode 100755 index 0e3a73f7d0805b9ef9fc76770bf9fa60e9670149..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/header.html.svn-base +++ /dev/null @@ -1,48 +0,0 @@ -<!-- template header.html --> -{% load extra_tags ui_registry i18n extra_filters markup %} - - <div id="roof"> - - <div id="logo"> - <a href="{% url index %}"> - <img src="{{ settings.APP_LOGO }}" title="{% trans "back to home page" %}" alt="{{settings.APP_TITLE}} logo"/> - </a> - </div> - - <div id="top"> - {% loadregistry header_links %}{% endloadregistry %} - </div> - - <div id="nav"> - {% loopregistry page_top_tabs %}{% spaceless %} - <a id="nav_{{ tab_name }}"{% ifequal tab tab_name %} class="on"{% endifequal %} href="{{ tab_url }}" >{{ tab_title }}</a> - {% endspaceless %}{% endloopregistry %} - <a id="nav_ask" href="{% url ask %}" class="special">{% trans "ask a question" %}</a> - </div> - </div> - - <div class="clear"></div> - - <div id="searchBar"> - <form action="{% url search %}" method="get"> - {% csrf_token %} - <div> - <input type="text" class="searchInput" value="{{ keywords }}" name="q" id="keywords" /> - <input type="submit" name="Submit" value="{% trans "search" %}" class="searchBtn" /> - </div> - <div class="options"> - <input id="type-question" type="radio" value="question" name="t" - checked="checked" /><label for="type-question">{% trans "questions" %}</label> - <input id="type-tag" type="radio" value="tag" name="t" /><label for="type-tag">{% trans "tags" %}</label> - <input id="type-user" type="radio" value="user" name="t" /><label for="type-user">{% trans "users" %}</label> - </div> - </form> - </div> - - {% if settings.USE_ANNOUNCEMENT_BAR|or_preview:request %} - <div id="announcement"> - {{ settings.ANNOUNCEMENT_BAR|or_preview:request|static_content:settings.ANNOUNCEMENT_BAR_RENDER_MODE }} - </div> - {% endif %} - -<!-- end template header.html --> diff --git a/forum/skins/light/templates/.svn/text-base/index.html.svn-base b/forum/skins/light/templates/.svn/text-base/index.html.svn-base deleted file mode 100755 index 94552e60490184e8a83b847fc40643cdb6a5ac1d..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/index.html.svn-base +++ /dev/null @@ -1,30 +0,0 @@ -{% extends "questions.html" %} -<!-- index.html --> -{% load general_sidebar_tags %} -{% load question_list_tags %} -{% load i18n %} -{% block fulltitle %}{{ settings.APP_TITLE }}{% endblock %} -{% block sidebar %} - {% if not request.user.is_authenticated %} - {% if settings.SHOW_WELCOME_BOX %} - <div class="boxA"> - <h3>{% trans "welcome to " %}{{ settings.APP_SHORT_NAME }}</h3> - <div class="body"> - {{ settings.APP_INTRO|safe }} - <div class="more"><a href="{% url about %}">{% trans "about" %} </a></div> - <div class="more"><a href="{% url faq %}">{% trans "faq" %} </a></div> - </div> - </div> - {% endif %} - {% endif %} - {% include "question_list/count.html" %} - {% sidebar_upper %} - {% if request.user.is_authenticated %} - {% tag_selector %} - {% endif %} - {% sidebar_lower %} - {% recent_tags %} - {% recent_awards %} -{% endblock %} -<!-- index.html --> - diff --git a/forum/skins/light/templates/.svn/text-base/logout.html.svn-base b/forum/skins/light/templates/.svn/text-base/logout.html.svn-base deleted file mode 100755 index 650ba044fc2dcd2cfa5c5f711481fabccd3d25c1..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/logout.html.svn-base +++ /dev/null @@ -1,23 +0,0 @@ -{% extends "base_content.html" %} -<!-- template logout.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Logout" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $('#btLogout').bind('click', function(){ window.location.href='{% url user_signout %}?next={{ next }}'; }); - }); - </script> -{% endblock %} -{% block content %} -<div class="headNormal"> - {% trans "Logout" %} -</div> -<div id="main-body" style="width:100%"> - <p>{% trans "As a registered user you can login with your OpenID, log out of the site or permanently remove your account." %}</p> - <input id="btLogout" type="button" class="submit" value="{% trans "Logout now" %}"><!-- style="width:150px">--> -</div> -{% endblock %} -<!-- end logout.html --> diff --git a/forum/skins/light/templates/.svn/text-base/markdown_help.html.svn-base b/forum/skins/light/templates/.svn/text-base/markdown_help.html.svn-base deleted file mode 100755 index 78e11ce71b97b2e07e616b85212862cf7d904312..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/markdown_help.html.svn-base +++ /dev/null @@ -1,250 +0,0 @@ -{% extends "base_content.html" %} -{% load extra_tags %} -{% load humanize %} -{% load i18n %} - -{% block fulltitle %}{% spaceless %}{% trans "Markdown Help" %}{% endspaceless %}{% endblock %} - -{% block forejs %} - <link rel="stylesheet" type="text/css" media="all" href="{% media "/media/style/markdown_help.css" %}" /> -{% endblock %} - -{% block content %} - <div id="main-wrapper"><br /><br /> - <div id="heading"> - <h1>{% trans "Markdown Syntax" %}</h1> - <p>{% blocktrans %}This document describes some of the more important parts of Markdown (for writers, that is). There's a lot more to the syntax than is mentioned here, though. To get the full syntax documentation, go to John Gruber's <a href="http://daringfireball.net/projects/markdown/syntax" rel="nofollow">Markdown Syntax</a> page{% endblocktrans %}</p> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Headers" %}</h2> - <div class="section-description"> - {% trans "For top-level headers underline the text with equal signs. For second-level headers use dashes to underline." %} - </div> - <table class="section-example"><tr> - <td> - <code>{% trans "This is an H1" %}</code><br /> - <code>============= </code> - </td> - <td> - <h1>{% trans "This is an H1" %}</h1> - </td> - </tr></table> - - <table class="section-example"><tr> - <td> - <code>{% trans "This is an H2" %}</code><br /> - <code>-------------</code> - </td> - <td> - <h2>{% trans "This is an H2" %}</h2> - </td> - </tr></table> - - <div class="section-description"> - {% blocktrans %}If you would rather, you can prefix headers with a hash (#) symbol instead. The number of hash symbols indicates the header level. For example, a single hash indicates a header level of one while two indicates the second header level:{% endblocktrans %} - </div> - <table class="section-example"><tr> - <td> - <code># {% trans "This is an H1" %}</code> - </td> - <td> - <h1>{% trans "This is an H1" %}</h1> - </td> - </tr></table> - - <table class="section-example"><tr> - <td> - <code>## {% trans "This is an H2" %}</code> - </td> - <td> - <h2>{% trans "This is an H2" %}</h2> - </td> - </tr></table> - - <table class="section-example"><tr> - <td> - <code>### {% trans "This is an H3" %}</code> - </td> - <td> - <h3>{% trans "This is an H3" %}</h3> - </td> - </tr></table> - - <div class="section-description"> - {% trans "Which you choose is a matter of style. Whichever you thinks looks better in the text document. In both cases, the final, fully formatted, document looks the same." %} - </div> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Paragraphs" %}</h2> - <div class="section-description"> - {% trans "Paragraphs are surrounded by blank lines." %} - </div> - <div class="section-example"> - <code>{% trans "This is paragraph one." %}</code> - </div><br /> - <div class="section-example"> - <code>{% trans "This is paragraph two." %}</code> - </div> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Links" %}</h2> - <div class="section-description"> - {% blocktrans %} - There are two parts to every link. - The first is the actual text that the user will see and it is surrounded by brackets. - The second is address of the page you wish to link to and it is surrounded in parenthesis. - {% endblocktrans %} - </div> - <table class="section-example"><tr> - <td> - <code>[{% trans "link text" %}]({% trans "http://example.com/" %})</code> - </td> - <td> - <a>{% trans "link text" %}</a> - </td> - </tr></table> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Formatting" %}</h2> - <div class="section-description"> - {% trans "To indicate bold text surround the text with two star (*) symbols or two underscore (_) symbols:" %} - </div> - <table class="section-example"><tr> - <td> - <code>**{% trans "This is bold" %}**</code> - </td> - <td> - <strong>{% trans "This is bold" %}</strong> - </td> - </tr></table> - <table class="section-example"><tr> - <td> - <code>__{% trans "This is also bold" %}__</code> - </td> - <td> - <strong>{% trans "This is also bold" %}</strong> - </td> - </tr></table> - - <div class="section-description"> - {% trans "To indicate italicized text surround the text with a single star (*) symbol or underscore (_) symbol:" %} - </div> - <table class="section-example"><tr> - <td> - <code>*{% trans "This is italics" %}*</code> - </td> - <td> - <i>{% trans "This is italics" %}</i> - </td> - </tr></table> - <table class="section-example"><tr> - <td> - <code>_{% trans "This is also italics" %}_</code> - </td> - <td> - <i>{% trans "This is also italics" %}</i> - </td> - </tr></table> - - <div class="section-description"> - {% trans "To indicate italicized and bold text surround the text with three star (*) symbol or underscore (_) symbol:" %} - </div> - <table class="section-example"><tr> - <td> - <code>***{% trans "This is bold and italics" %}***</code> - </td> - <td> - <strong><i>{% trans "This is bold and italics" %}</i></strong> - </td> - </tr></table> - <table class="section-example"><tr> - <td> - <code>___{% trans "This is also bold and italics" %}___</code> - </td> - <td> - <strong><i>{% trans "This is also bold and italics" %}</i></strong> - </td> - </tr></table> - </div> - - - <div class="section"> - <h2 class="section-title">{% trans "Blockquotes" %}</h2> - <div class="section-description"> - {% trans "To create an indented area use the right angle bracket (>) character before each line to be included in the blockquote." %} - </div> - <table class="section-example"><tr> - <td> - <code>> {% trans "This is part of a blockquote." %}</code><br /> - <code>> {% trans "This is part of the same blockquote." %}</code> - </td> - <td> - <p style="padding-left:15px;">{% trans "This is part of a blockquote." %}<br />{% trans "This is part of the same blockquote." %}</p> - </td> - </tr></table> - - <div class="section-description"> - {% trans "Rather than putting it in front of each line to include in the block quote you can put it at the beginning and end the quote with a newline." %} - </div> - <table class="section-example"><tr> - <td> - <code>> {% trans "This is part of a blockquote." %}</code><br /> - <code>{% trans "This continues the blockquote even though there's no bracket." %}</code><br /><br /> - <code>{% trans "The blank line ends the blockquote." %}</code> - </td> - <td> - <p style="padding-left:15px;">{% trans "This is part of a blockquote." %} <br /> {% trans "This continues the blockquote even though there's no bracket." %}</p> - <p>{% trans "The blank line ends the blockquote." %}</p> - </td> - </tr></table> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "Lists" %}</h2> - <div class="section-description"> - {% trans "To create a numbered list in Markdown, prefix each item in the list with a number followed by a period and space. The number you use actually doesn't matter." %} - </div> - <table class="section-example"><tr> - <td> - <code>1. {% trans "Item" %} 1</code><br /> - <code>2. {% trans "Item" %} 2</code><br /> - <code>3. {% trans "Item" %} 3</code> - </td> - <td> - <ol> - <li>{% trans "Item" %} 1</li> - <li>{% trans "Item" %} 2</li> - <li>{% trans "Item" %} 3</li> - </ol> - </td> - </tr></table> - - <div class="section-description"> - {% trans "To create a bulleted list, prefix each item in the list with a star (*) character." %} - </div> - <table class="section-example"><tr> - <td> - <code>* {% trans "A list item" %}</code><br /> - <code>* {% trans "Another list item" %}</code><br /> - <code>* {% trans "A third list item" %}</code> - </td> - <td> - <ul> - <li>{% trans "A list item" %}</li> - <li>{% trans "Another list item" %}</li> - <li>{% trans "A third list item" %}</li> - </ul> - </td> - </tr></table> - </div> - - <div class="section"> - <h2 class="section-title">{% trans "A Lot More" %}</h2> - <div class="section-description">{% blocktrans %}There's a lot more to the Markdown syntax than is mentioned here. But for creative writers, this covers a lot of the necessities. To find out more about Markdown than you'd ever want to really know, <a href="http://daringfireball.net/projects/markdown/syntax" target="_blank" rel="nofollow">go to the Markdown page where it all started</a>.{% endblocktrans %}</div> - </div> - </div> -{% endblock %} diff --git a/forum/skins/light/templates/.svn/text-base/notarobot.html.svn-base b/forum/skins/light/templates/.svn/text-base/notarobot.html.svn-base deleted file mode 100755 index dae82b4a546cc821d53d415ac312fadf82fd7ee5..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/notarobot.html.svn-base +++ /dev/null @@ -1,16 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Please prove that you are a Human Being" %}{% endspaceless %}{% endblock %} -{% block content %} -{% comment %} this form is set up to be used in wizards {% endcomment %} -<form name="notarobot" action="." method="POST"> - {% csrf_token %} - <div> - {{form}} - </div> - <input type="submit" value="{% trans "I am a Human Being" %}" class="submit" style="float:left"/> - <input type="hidden" name="{{ step_field }}" value="{{ step0 }}" /> - {{ previous_fields|safe }} - </form> -</form> -{% endblock %} diff --git a/forum/skins/light/templates/.svn/text-base/opensearch.html.svn-base b/forum/skins/light/templates/.svn/text-base/opensearch.html.svn-base deleted file mode 100755 index 0c9d6bf270a65eb2b5602959f0d3e5743122bb54..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/opensearch.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n %} -<?xml version="1.0" encoding="UTF-8"?> -<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> - <ShortName>{{ settings.APP_SHORT_NAME }} {% trans "Search" %}</ShortName> - <Description>{% trans "Search" %} {{ settings.APP_SHORT_NAME }} {% trans "using your browser." %}</Description> - <Tags>{{ settings.APP_KEYWORDS }}</Tags> - <Url type="text/html" template="{{ settings.APP_URL }}/{% trans "search" %}/?q={searchTerms}&t=question"/> -</OpenSearchDescription> \ No newline at end of file diff --git a/forum/skins/light/templates/.svn/text-base/page.html.svn-base b/forum/skins/light/templates/.svn/text-base/page.html.svn-base deleted file mode 100755 index cf9b459d0ee06de653ad07f6a9ce3e809cac6fc5..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/page.html.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -{% extends base %} -{% load i18n markup node_tags general_sidebar_tags %} -{% block title %}{% spaceless %}{{ page.title }}{% endspaceless %}{% endblock %} - -{% block content %} -<div class="headNormal">{{ page.title }}</div> -<div class="content"> -{{ body }} -</div> -{% if page.extra.comments %} - {% comments page request.user %} -{% endif %} -{% endblock %} - -{% ifequal page.extra.template "sidebar" %} - {% block sidebar %} - {% sidebar_upper %} - {% if page.extra.sidebar %} - {% if page.extra.sidebar_wrap %}<div class="boxC"><div class="body">{% endif %} - {{ sidebar }} - {% if page.extra.sidebar_wrap %}</div></div>{% endif %} - {% endif %} - {% sidebar_lower %} - {% endblock %} -{% endifequal %} - - diff --git a/forum/skins/light/templates/.svn/text-base/pagesize.html.svn-base b/forum/skins/light/templates/.svn/text-base/pagesize.html.svn-base deleted file mode 100755 index 5037f1f6c7b06eb4be852f93a40cbbb67bd9ccb2..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/pagesize.html.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -<!-- template pagesize.html --> -{% spaceless %} -{% load i18n %} -{% if is_paginated %} -<div class="paginator"> - <span class="text">{% trans "posts per page" %}</span> - {% ifequal pagesize 10 %} - <span class="curr">10</span> - {% else %} - <span class="page"><a href="{{base_url}}pagesize=10">10</a></span> - {% endifequal %} - - {% ifequal pagesize 30 %} - <span class="curr">30</span> - {% else %} - <span class="page"><a href="{{base_url}}pagesize=30">30</a></span> - {% endifequal %} - - {% ifequal pagesize 50 %} - <span class="curr">50</span> - {% else %} - <span class="page"><a href="{{base_url}}pagesize=50">50</a></span> - {% endifequal %} -</div> -{% endif %} -{% endspaceless %} -<!-- end template pagesize.html --> diff --git a/forum/skins/light/templates/.svn/text-base/paginator.html.svn-base b/forum/skins/light/templates/.svn/text-base/paginator.html.svn-base deleted file mode 100755 index 2fba5425185779331fc3b83a6ebd578ac20f9700..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/paginator.html.svn-base +++ /dev/null @@ -1,38 +0,0 @@ -<!-- paginator.html --> -{% spaceless %} -{% load i18n %} -{% if is_paginated %} -<div class="paginator"> -{% if has_previous %}<span class="prev"><a href="{{base_url}}page={{ previous }}{{ extend_url }}" title="{% trans "previous" %}"> -« {% trans "previous" %}</a></span>{% endif %} -{% if not in_leading_range %} - {% for num in pages_outside_trailing_range %} - <span class="page"><a href="{{base_url}}page={{ num }}{{ extend_url }}" >{{ num }}</a></span> - {% endfor %} - ... -{% endif %} - -{% for num in page_numbers %} - {% ifequal num page %} - {% ifequal pages 1 %} - {% else %} - <span class="curr" title="{% trans "current page" %}">{{ num }}</span> - {% endifequal %} - {% else %} - <span class="page"><a href="{{base_url}}page={{ num }}{{ extend_url }}" title="{% trans "page number " %}{{ num }}{% trans "number - make blank in english" %}">{{ num }}</a></span> - {% endifequal %} -{% endfor %} - -{% if not in_trailing_range %} - ... - {% for num in pages_outside_leading_range reversed %} - <span class="page"><a href="{{base_url}}page={{ num }}{{ extend_url }}" title="{% trans "page number " %}{{ num }}{% trans "number - make blank in english" %}">{{ num }}</a></span> - {% endfor %} -{% endif %} - -{% if has_next %}<span class="next"><a href="{{base_url}}page={{ next }}{{ extend_url }}" title="{% trans "next page" %}">{% trans "next page" %} »</a></span>{% endif %} -</div> -{% endif %} - -{% endspaceless %} -<!-- end paginator.html --> diff --git a/forum/skins/light/templates/.svn/text-base/privacy.html.svn-base b/forum/skins/light/templates/.svn/text-base/privacy.html.svn-base deleted file mode 100755 index e66086ddfe854c344f28db3d56f4ca4dabae8268..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/privacy.html.svn-base +++ /dev/null @@ -1,42 +0,0 @@ -{% extends "base_content.html" %} -<!-- privacy.html --> -{% load extra_tags %} -{% load i18n %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Privacy policy" %}{% endspaceless %}{% endblock %} -{% block forejs %} -{% endblock %} -{% block content %} -<div class="headNormal"> - {% trans "Privacy policy" %} -</div> -<div id="main-body" style="width:100%"> - <p> - {% trans "general message about privacy" %} - </p> - - <h3 class="subtitle">{% trans "Site Visitors" %}</h3> - <p> - {% trans "what technical information is collected about visitors" %} - </p> - - <h3 class="subtitle">{% trans "Personal Information" %}</h3> - <p> - {% trans "details on personal information policies" %} - </p> - - <h3 class="subtitle">{% trans "Other Services" %}</h3> - <p> - {% trans "details on sharing data with third parties" %} - </p> - - <h3 class="subtitle">Cookies</h3> - <p> - {% trans "cookie policy details" %} - </p> - <h3 class="subtitle">{% trans "Policy Changes" %}</h3> - <p>{% trans "how privacy policies can be changed" %} - </p> -</div> -{% endblock %} -<!-- end privacy.html --> diff --git a/forum/skins/light/templates/.svn/text-base/question.html.svn-base b/forum/skins/light/templates/.svn/text-base/question.html.svn-base deleted file mode 100755 index 228285730fd1946d0fbfe269fd765e4b6d94d203..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/question.html.svn-base +++ /dev/null @@ -1,331 +0,0 @@ -{% extends "base.html" %} -<!-- question.html --> -{% load node_tags %} -{% load extra_tags %} -{% load extra_filters %} -{% load general_sidebar_tags %} -{% load smart_if %} -{% load humanize %} -{% load i18n %} -{% load cache %} -{% block metadescription %}{{ question.meta_description }}{% endblock %} -{% block metakeywords %}{{question.tagname_meta_generator}}{% endblock %} -{% block meta %} - <link rel="canonical" href="{{settings.APP_BASE_URL}}{{question.get_absolute_url}}" /> - <link rel="alternate" type="application/rss+xml" title="RSS" href="{{ question.get_absolute_url }}?type=rss"> -{% endblock %} -{% block title %}{% spaceless %}{{ question.headline }}{% endspaceless %}{% endblock %} -{% block forejs %} - {% if not question.nis.closed %} - <script type='text/javascript' src='{% media "/media/js/osqa.question.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/jquery.caret.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - - {% if embed_youtube_videos %} - <script type='text/javascript' src='{% media "/media/js/viewbox_min.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/youtube.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/viewbox.css" %}" /> - {% endif %} - {% endif %} - - <script type="text/javascript"> - $().ready(function(){ - $("#nav_questions").attr('className',"on"); - var answer_sort_tab = "{{ tab_id }}"; - - if (answer_sort_tab) { - $("#" + answer_sort_tab).attr('className',"on"); - } - - $('#editor').TextAreaResizer(); - - //toggle preview of editor - var display = true; - var txt = "[{% trans "hide preview" %}]"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "[{% trans "show preview" %}]" : "[{% trans "hide preview" %}]"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - }); - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - - if($("textarea#editor")[0].value != "") { - return yourWorkWillBeLost(e); - } - - var commentBoxes = $("textarea.commentBox"); - for(var index = 0; index < commentBoxes.length; index++) { - if(commentBoxes[index].value != "") { - return yourWorkWillBeLost(e); - } - } - } - window.addEventListener('beforeunload', beforeUnload, true); - </script> - <noscript> - <style> - .comment.not_top_scorer { - display: block; - } - .comment-form-container { - display: block; - } - .div.comment-tools { - display: none; - } - </style> - </noscript> -{% endblock %} - -{% block content %} -<div class="headNormal"> - <h1><a href="{{ question.get_absolute_url }}">{{ question.headline }}</a></h1> -</div> -<div id="main-body" class=""> - <div id="askform"> - <table style="width:100%;" id="question-table" {% post_classes question %}> - <tr> - <td style="width:30px;vertical-align:top"> - <div class="vote-buttons"> - {% vote_buttons question request.user %} - {% favorite_mark question request.user %} - </div> - </td> - <td> - <div id="item-right"> - <div class="question-body"> - {{ question.html|safe }} - </div> - <div id="question-tags" class="tags-container tags"> - {% for tag in question.tagname_list %} - <a href="{% url tag_questions tag|urlencode %}" class="post-tag tag-link-{{ tag }}" - title="{% blocktrans with tag as tagname %}see questions tagged '{{ tagname }}'{% endblocktrans %}" rel="tag">{{ tag }}</a> - {% endfor %} - </div> - <div id="question-controls" class="post-controls"> - {% post_controls question request.user %} - {% wiki_symbol request.user question %} - </div> - <div class="post-update-info-container"> - {% contributors_info question %} - </div> - {% comments question request.user %} - </div> - - </td> - </tr> - </table> - {% if question.nis.closed %} - <div class="question-status" style="margin-bottom:15px"> - <h3> - {% blocktrans with question.nstate.closed.extra as close_reason %}The question has been closed for the following reason "{{ close_reason }}" by{% endblocktrans %} - <a href="{{ question.nstate.closed.by.get_profile_url }}">{{ question.nstate.closed.by.username }}</a> - {% diff_date question.nstate.closed.at %} - </h3> - </div> - {% endif %} - {% if answers %} - <hr/> - <div class="tabBar"> - <a name="sort-top"></a> - <div class="headQuestions"> - {% blocktrans count answers.paginator.count as counter %}One Answer:{% plural %}{{counter}} Answers:{% endblocktrans %} - </div> - {{ answers.paginator.sort_tabs }} - </div> - {{ answers.paginator.page_numbers }} - - {% for answer in answers.paginator.page %} - <a name="{{ answer.id }}"></a> - <div id="answer-container-{{ answer.id }}" class="answer {% post_classes answer %}{% ifequal answer.id focused_answer_id %} focusedAnswer{% endifequal %}"> - <table style="width:100%;"> - <tr> - <td style="width:30px;vertical-align:top"> - <div class="vote-buttons"> - {% vote_buttons answer request.user %} - {% accept_button answer request.user %} - </div> - </td> - <td> - <div class="item-right"> - <div class="answer-body"> - {{ answer.html|safe }} - </div> - <div class="answer-controls post-controls"> - {% post_controls answer request.user %} - {% wiki_symbol request.user answer %} - </div> - <div class="post-update-info-container"> - {% contributors_info answer %} - </div> - {% comments answer request.user %} - </div> - </td> - </tr> - </table> - </div> - {% endfor %} - <div class="paginator-container-left"> - {{ answers.paginator.page_numbers }} - </div> - {% endif %} - <form id="fmanswer" action="{% url answer question.id %}" method="post"> - {% csrf_token %} - <div style="clear:both"> - </div> - - {% if not question.closed %} - <div style="padding:10px 0 0 0;"> - {% spaceless %} - <div class="headNormal"> - {% if answers %} - {% trans "Your answer" %} - {% else %} - {% trans "Be the first one to answer this question!" %} - {% endif %} - </div> - {% endspaceless %} - </div> - {% comment %} - {% if not request.user.is_authenticated %} - <div class="message">{% trans "You can answer anonymously and then login." %}</div> - {% else %} - <p class="message"> - {% ifequal request.user question.author %} - {% trans "Answer your own question only to give an answer." %} - {% else %} - {% trans "Please only give an answer, no discussions." %} - {% endifequal %} - {% if not request.user.email_valid_and_can_answer %} - {% blocktrans %}Remember, your answer will not be published until you validate your email.{% endblocktrans %} - <a href="{% url send_validation_email %}">{% trans "Send me a validation link." %}</a> - {% endif %} - </p> - {% endif %} - {% endcomment %} - - <div id="description" class="" > - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ answer.text }} - <div class="preview-toggle"> - <table width="100%"> - <tr> - <td> - <span id="pre-collapse" - title="{% trans "Toggle the real time Markdown editor preview" %}"> - {% trans "toggle preview" %} - </span> - </td> - <td style="text-align: right;" id="editor-metrics"></td> - {% if settings.WIKI_ON %} - <td style="text-align:right;"> - {{ answer.wiki }} - <span style="font-weight:normal;cursor:help" - title="{{answer.wiki.help_text}}"> - {{ answer.wiki.label_tag }} - </span> - </td> - {% endif %} - </tr> - - </table> - </div> - {{ answer.text.errors }} - <div id="previewer" class="wmd-preview"></div> - </div> - - {% if answer.recaptcha %} - <div class="question-captcha" style="float: left;"> - {{ answer.recaptcha.errors }} - {{ answer.recaptcha }} - </div> - <div class="clear"></div> - {% endif %} - - <p><span class="form-error"></span></p> - <input type="button" - {% if user.is_anonymous %} - value="{% trans "Login/Signup to Post Your Answer" %}" - {% else %} - {% if user == question.author %} - value="{% trans "Answer Your Own Question" %}" - {% else %} - value="{% trans "Answer the question" %}" - {% endif %} - {% endif %} - class="submit" style="float:left" onclick="submitClicked(event, this.form)"/> - {% endif %} - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -<div class="boxC" id="subscription_box"> - {% include "subscription_status.html" %} -</div> - -{% markdown_help %} - -{% sidebar_upper %} - -{% cache 60 questions_tags settings.APP_URL question.id %} -<div class="boxC"> - <p> - {% trans "Question tags" %}: - </p> - <p class="tags" > - {% for tag in question.tags.all %} - <a href="{% url tag_questions tag.name|urlencode %}" - class="tag-link-{{ tag.name }}" - title="{% trans "see questions tagged"%}'{{tag.name}}'{% trans "using tags" %}" - rel="tag">{{ tag.name }}</a> <span class="tag-number">×{{ tag.used_count|intcomma }}</span><br/> - {% endfor %} - </p> - <p> - {% trans "question asked" %}: <strong title="{{ question.added_at }}">{% diff_date question.added_at %}</strong> - </p> - <p> - {% trans "question was seen" %}: <strong>{{ question.view_count|intcomma }} {% trans "times" %}</strong> - </p> - <p> - {% trans "last updated" %}: <strong title="{{ question.last_activity_at }}">{% diff_date question.last_activity_at %}</strong> - </p> -</div> -{% endcache %} -{% sidebar_lower %} -<div class="boxC"> - <h3 class="subtitle">{% trans "Related questions" %}</h3> - <div class="questions-related"> - - {% for question in similar_questions %} - <p> - <a href="{{ question.get_absolute_url }}">{{ question.headline }}</a> - </p> - {% endfor %} - - </div> -</div> - -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end question.html --> diff --git a/forum/skins/light/templates/.svn/text-base/question_edit.html.svn-base b/forum/skins/light/templates/.svn/text-base/question_edit.html.svn-base deleted file mode 100755 index 4f4395080af6cc136e1e8796111129f745f13941..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/question_edit.html.svn-base +++ /dev/null @@ -1,168 +0,0 @@ -{% extends "base.html" %} -<!-- question_edit.html --> -{% load i18n %} -{% load extra_tags %} -{% block title %}{% spaceless %}{% trans "Edit question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type='text/javascript' src='{% media "/media/js/wmd/showdown.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/wmd/wmd.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/html_sanitizer.js" %}'></script> - <link rel="stylesheet" type="text/css" href="{% media "/media/js/wmd/wmd.css" %}" /> - <script type="text/javascript"> - //todo move javascript out - $().ready(function(){ - $("#nav_questions").attr('className',"on"); - $('#editor').TextAreaResizer(); - - - //toggle preview of editor - var display = true; - var txt = "[{% trans "hide preview" %}]"; - $('#pre-collapse').text(txt); - $('#pre-collapse').bind('click', function(){ - txt = display ? "[{% trans "show preview" %}]" : "[{% trans "hide preview" %}]"; - display = !display; - $('#previewer').toggle(); - $('#pre-collapse').text(txt); - }); - - //Tags autocomplete action - $("#id_tags").autocomplete("{% url matching_tags %}", { - matchContains: true, - max: 20, - multiple: true, - multipleSeparator: " ", - highlightItem: true, - scroll: true, - scrollHeight: 300, - /*formatItem: function(row, i, max) { - return row.n + " ("+ row.c +")"; - }, - formatResult: function(row, i, max){ - return row.n; - }*/ - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - - $('#id_revision').unbind().change(function(){ - $("#select_revision").click(); - }); - - init = $("textarea#editor")[0].value; - - title = $("input#id_title")[0].value; - body = $("textarea#editor")[0].value; - tag = $("input#id_tags")[0].value; - }); - - function submitClicked(e, f) { - if(!(browserTester('chrome') || browserTester('safari'))) { - $("input.submit")[0].disabled=true; - $("input.submit")[1].disabled=true; - } - window.removeEventListener('beforeunload', beforeUnload, true); - if (f) { - f.submit(); - } - } - - function beforeUnload(e) { - if($("input#id_title")[0].value != title || $("textarea#editor")[0].value != body || $("input#id_tags")[0].value != tag) { - return yourWorkWillBeLost(e); - } - } - window.addEventListener('beforeunload', beforeUnload, true); - - var init = ""; - var title = ""; - var body = ""; - var tag = ""; - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% block edittype %}{% trans "Edit question" %}{% endblock %} [<a href="{{ question.get_absolute_url }}">{% trans "back" %}</a>] -</div> -<div id="main-body" class="ask-body"> - <div id="askform"> - <form id="fmedit" action="" method="post"> - {% csrf_token %} - <label for="id_revision" ><strong>{% trans "revision" %}:</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"%}"> - </div> - <div class="form-item"> - <label for="id_title" ><strong>{{ form.title.label_tag }}:</strong></label> <span class="form-error"></span><br/> - {{ form.title }} {{ form.title.errors }} - <div class="title-desc"> - {{ form.title.help_text }} - </div> - </div> - <div class="form-item"> - <div id="wmd-button-bar" class="wmd-panel"></div> - {{ form.text }} - <span class="form-error"></span> - <div class="preview-toggle"> - <table width="100%"> - <tr> - <td> - <span id="pre-collapse" title="{% trans "Toggle the real time Markdown editor preview" %}">{% trans "toggle preview" %}</span> - </td> - <td style="text-align: right;" id="editor-metrics"></td> - {% if settings.WIKI_ON %} - <td style="text-align:right;"> - {{ form.wiki }} <span style="color:#000;cursor:help" title="{{form.wiki.help_text}}">{{ form.wiki.label_tag }} </span> - </td> - {% endif %} - </tr> - - </table> - </div> - <div id="previewer" class="wmd-preview"></div> - </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> - <strong>{{ form.summary.label_tag }}</strong> <br/> - {{ form.summary }} {{ form.summary.errors }} - <div class="title-desc"> - {{ form.summary.help_text }} - </div> - - {% if form.recaptcha %} - <div class="question-captcha" style="float: left"> - {{ form.recaptcha.errors }} - {{ form.recaptcha }} - </div> - <div class="clear"></div> - {% endif %} - - <div class="error" ></div> - <input type="button" value="{% trans "Save edit" %}" class="submit" onclick="submitClicked(event, this.form)" /> - <input type="button" value="{% trans "Cancel" %}" class="submit" onclick="submitClicked(event, null); history.back(-1);" /> - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -{% include "question_edit_tips.html" %} -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end question_edit.html --> diff --git a/forum/skins/light/templates/.svn/text-base/question_edit_tips.html.svn-base b/forum/skins/light/templates/.svn/text-base/question_edit_tips.html.svn-base deleted file mode 100755 index ce7ac952c8b348d859d3d6a95dd36be33d0921d0..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/question_edit_tips.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -<!-- question_edit_tips.html --> -{% load markup %} -{% load i18n general_sidebar_tags %} -<div class="boxC" id="title_side_bar"> - <p class="subtitle darkred">{% trans "Title Tips" %}</p> - <div class="list-item"> - {{ settings.QUESTION_TITLE_TIPS|markdown:"settingsparser" }} - <p class='info-box-follow-up-links'> - <a href="{% url faq %}" target="_blank" title="{% trans "see frequently asked questions" %}">{% trans "faq" %} »</a> - </p> - </div> -</div> - -{% markdown_help %} - -<div class="boxC" id="tags_side_bar" align="left"> - <p class="subtitle darkred">{% trans "What Are Tags" %}</p> - <div class="list-item"> - {{ settings.QUESTION_TAG_TIPS|markdown:"settingsparser" }} - </div> -</div> - - -<!-- end question_edit_tips.html --> - \ No newline at end of file diff --git a/forum/skins/light/templates/.svn/text-base/question_retag.html.svn-base b/forum/skins/light/templates/.svn/text-base/question_retag.html.svn-base deleted file mode 100755 index 6a5266c68f0830540fc6447b874df8e7c8c84643..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/question_retag.html.svn-base +++ /dev/null @@ -1,89 +0,0 @@ -{% extends "base.html" %} -<!-- question_retag.html --> -{% load extra_tags %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Change tags" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - - $().ready(function(){ - $("#id_tags").autocomplete("{% url matching_tags %}", { - matchContains: true, - max: 20, - multiple: true, - multipleSeparator: " ", - highlightItem: true, - scroll: true, - scrollHeight: 300, - /*formatItem: function(row, i, max) { - return row.n + " ("+ row.c +")"; - }, - formatResult: function(row, i, max){ - return row.n; - }*/ - formatItem: function(row, i, max, value) { - return row[1] + " (" + row[2] + ")"; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - - }); - - }); - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Change tags" %} [<a href="{{ question.get_absolute_url }}">{% trans "back" %}</a>] -</div> -<div id="main-body" class="ask-body"> - <div id="askform"> - <form id="fmretag" action="{% url edit_question question.id %}" method="post"> - {% csrf_token %} - <h3> - {{ question.headline }} - </h3> - <div id="description" class="edit-content-html"> - {{ question.html|safe }} - </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 "Save edit" %}" class="submit" /> - <input type="button" value="{% trans "Cancel" %}" class="submit" onclick="history.back(-1);" /> - </form> - </div> -</div> -{% endblock %} - -{% block sidebar %} -<div class="boxC"> - <p class="subtitle">{% trans "Why use and modify tags?" %}</p> - <ul class="list-item"> - <li> - {% trans "tags help us keep Questions organized" %} - </li> - <li> - {% trans "tag editors receive special awards from the community" %} - </li> - </ul> - <p class='info-box-follow-up-links'> - <a href="{% url faq %}">faq »</a> - </p> -</div> - -{% endblock %} - -{% block endjs %} -{% endblock %} -<!-- end question_retag.html --> diff --git a/forum/skins/light/templates/.svn/text-base/question_summary_list_roll.html.svn-base b/forum/skins/light/templates/.svn/text-base/question_summary_list_roll.html.svn-base deleted file mode 100755 index b2ce45fc76f1afc9dfd1f78b6e006796ef170e3a..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/question_summary_list_roll.html.svn-base +++ /dev/null @@ -1,55 +0,0 @@ - <div class="qstA"> - <h2> - <a href="{{ question.get_absolute_url }}">{{ question.headline }}</a> - </h2> - <div class="stat"> - <table> - <tr> - <td><span class="num">{{ question.answer_count|intcomma }}</span> </td> - <td><span class="num">{{ question.score|intcomma }}</span> </td> - <td><span class="num">{{ question.view_count|decorated_int|safe }}</span> </td> - </tr> - <tr> - <td><span class="unit">{% trans "answers" %}</span></td> - <td><span class="unit">{% trans "votes" %}</span></td> - <td><span class="unit">{% trans "views" %}</span></td> - </tr> - </table> - </div> - - <div class="summary"> - {{ question.summary }}... - </div> - - {% ifequal tab_id 'active'%} - {% if question.wiki and settings.WIKI_ON %} - <span class="from wiki">{% trans "community wiki" %}</span> - <span class="date" title="{{ question.added_at }}">{% diff_date question.added_at %}</span> - {% else %} - <div class="from"> - {% comment %}{% gravatar question.last_activity_by 24 %}{% endcomment %} - <span class="author"><a href="{{ question.last_activity_by.get_profile_url }}">{{ question.last_activity_by }}</a></span> - <span class="score">{% get_score_badge question.last_activity_by %} </span> - <span class="date" title="{{ question.last_activity_at }}">{% diff_date question.last_activity_at %}</span> - </div> - {% endif %} - {% else %} - {% if question.wiki and settings.WIKI_ON %} - <span class="from wiki">{% trans "community wiki" %}</span> - <span class="date" title="{{ question.added_at }}">{% diff_date question.added_at %}</span> - {% else %} - <div class="from"> - {% comment %}{% gravatar question.author 24 %}{% endcomment %} - <span class="author"><a href="{{ question.author.get_profile_url }}">{{ question.author }}</a></span> - <span class="score">{% get_score_badge question.author %} </span> - <span class="date" title="{{ question.added_at }}">{% diff_date question.added_at %}</span> - </div> - {% endif %} - {% endifequal %} - - <div class="tags"> - {% for tag in question.tagname_list %} - <a class="tag-link-{{ tag }}" href="{% url tag_questions tag|urlencode %}" title="{% trans "see questions tagged" %}'{{ tag }}'{% trans "using tags" %}" rel="tag">{{ tag }}</a> - {% endfor %} - </div> - </div> diff --git a/forum/skins/light/templates/.svn/text-base/questions.html.svn-base b/forum/skins/light/templates/.svn/text-base/questions.html.svn-base deleted file mode 100755 index f470ba3ef36fb58e5ed971a911ddb8d137660c04..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/questions.html.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -{% extends "base.html" %} -<!-- questions.html --> -{% load question_list_tags %} -{% load i18n %} -{% load extra_tags %} -{% load general_sidebar_tags %} - -{% block title %}{% spaceless %}{{ page_title }}{% endspaceless %}{% endblock %} - -{% block metadescription %}{% spaceless %} - {% if tag %} - {% blocktrans with settings.APP_TITLE as app_title %}Questions and answers about {{ tag }} on {{ app_title }}{% endblocktrans %} - {% endif %} -{% endspaceless %}{% endblock %} - -{% block meta %} - <link rel="alternate" type="application/rss+xml" title="RSS" href="{{ feed_url }}" /> -{% endblock %} - -{% block content %} - -<div class="tabBar"> - {% include "question_list/title.html" %} - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" href="{{ feed_url }}" title="{% trans "subscribe to question RSS feed" %}"></a> - {{ questions.paginator.sort_tabs }} -</div> -<div id="listA">{% for question in questions.paginator.page %} - {% if show_summary %} - {% question_list_item question question_summary=yes %} - {% else %} - {% question_list_item question %} - {% endif %} -{% endfor %}</div> -{% endblock %} - -{% block tail %} - <div class="pager">{{ questions.paginator.page_numbers }}</div> - <div class="pagesize">{{ questions.paginator.page_sizes }}</div> -{% endblock %} - -{% block sidebar %} - {% include "question_list/count.html" %} - {% sidebar_upper %} - {% tag_selector %} - {% sidebar_lower %} - {% question_list_related_tags questions.paginator.page %} - -{% endblock %} -<!-- end questions.html --> diff --git a/forum/skins/light/templates/.svn/text-base/reopen.html.svn-base b/forum/skins/light/templates/.svn/text-base/reopen.html.svn-base deleted file mode 100755 index 7de075ee14411f4b7df0c9ff643c2550d0ab9580..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/reopen.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% extends "base_content.html" %} -<!-- reopen.html --> -{% load extra_tags %} -{% load i18n %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Reopen question" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - $().ready(function(){ - $('#btBack').bind('click', function(){ history.back(); }); - }); - </script> -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Reopen question" %} -</div> -<div id="main-body" style="width:100%"> - <p>{% trans "Open the previously closed question" %}: <a href="{{ question.get_absolute_url }}"><span class="big">{{ question.headline }}</span></a> - - </p> - <p><strong>{% trans "The question was closed for the following reason " %}"{{ question.get_close_reason_display }}"{% trans "reason - leave blank in english" %} <a href="{{ question.closed_by.get_profile_url }}">{{ question.closed_by.username }}</a> {% trans "on "%} {% diff_date question.closed_at %}<font class="darkred">{% trans "date closed" %}</font> - </strong> - </p> - - <form id="fmclose" action="{% url reopen question.id %}" method="post"> - {% csrf_token %} - <div id="" style="padding:20px 0 20px 0"> - <input type="submit" value="{% trans "Reopen this question" %}" class="submit" /> - <input id="btBack" type="button" value="{% trans "Cancel" %}" class="submit" /> - </div> - </form> -</div> -{% endblock %} -<!-- end reopen.html --> diff --git a/forum/skins/light/templates/.svn/text-base/revisions.html.svn-base b/forum/skins/light/templates/.svn/text-base/revisions.html.svn-base deleted file mode 100755 index 234b764447c88716456de64ba78b97e35eeed472..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/revisions.html.svn-base +++ /dev/null @@ -1,78 +0,0 @@ -{% extends "base_content.html" %} -{% load node_tags %} -{% load extra_tags %} -{% load i18n %} -{% load extra_filters %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Revision history" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - - $(document).ready(function() { - rev_bodies = $('div.rev-body'); - if(rev_bodies.length > 0)toggleRev(rev_bodies.length); - if(rev_bodies.length > 1)toggleRev(rev_bodies.length-1); - - for(var index = 0; index < rev_bodies.length; index++) { - rev_bodies.get(index); - } - }); - - function toggleRev(id) { - var rev_body = $('div#rev-body-' + id).get(0); - var rev_arrow = $('img#rev-arrow-' + id).get(0); - if (rev_body.style.display == "none") { - rev_body.style.display = ""; - rev_arrow.src="{% media "/media/images/expander-arrow-hide.gif" %}" - } else { - rev_body.style.display = "none"; - rev_arrow.src="{% media "/media/images/expander-arrow-show.gif" %}" - } - } - - </script> -{% endblock %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% trans "Revision history" %}[<a href="{{ post.get_absolute_url }}">{% trans "back" %}</a>] -</div> -<div id="main-body" class=""> - <div id="revisions"> - {% for revision in revisions %} - <div class="revision"> - <div id="rev-header-{{ revision.inst.revision }}" class="header {% ifequal post.author revision.inst.author %}author{% endifequal %}"> - <div class="header-controls"> - <table width="100%"> - <tr> - <td width="20" style="vertical-align:middle"><img id="rev-arrow-{{ revision.inst.revision }}" - class="rev-arrow" - onclick="toggleRev({{ revision.inst.revision }})" - src="{% media "/media/images/expander-arrow-show.gif" %}" - alt="{% trans "click to hide/show revision" %}"/> - </td> - <td width="30px" style="vertical-align:middle"><span class="revision-number" title="{% trans "revision" %} {{ revision.inst.revision }}">{{ revision.inst.revision }}</span></td> - <td width="200px" style="vertical-align:middle"> - <div class="summary"><span>{{ revision.inst.summary }}</span></div> - </td> - <td align="right"> - <div class="revision-mark" > - {% reviser_info revision.inst %} - </div> - </td> - </tr> - - </table> - </div> - </div> - <div id="rev-body-{{ revision.inst.revision }}" class="diff body rev-body" style="display:none"> - {{ revision.diff|safe }} - </div> - </div> - {% endfor %} - </div> -</div> -{% endblock %} - -{% block endjs %} -{% endblock %} diff --git a/forum/skins/light/templates/.svn/text-base/search.html.svn-base b/forum/skins/light/templates/.svn/text-base/search.html.svn-base deleted file mode 100755 index 05b9de6fad3fa018b2b204e51195094ad0cf065d..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/search.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% extends "base_content.html" %} - -{% load i18n %} - -{% block content %} -<div id="main-bar" class="headNormal"> - {% blocktrans with settings.APP_SHORT_NAME as app_name %} - Search in {{ app_name }} - {% endblocktrans %} -</div> -<div id="main-body" style="text-align: center; height: 400px;"> -<form action="{% url search %}" method="get"> - {% csrf_token %} - <div> - <input type="text" class="searchInput" value="{{ keywords }}" name="q" id="keywords" style="width: 600px" /> - <input type="submit" name="Submit" value="{% trans "search" %}" class="searchBtn" /> - </div> - <div class="options"> - <input id="type-question" type="radio" value="question" name="t" - checked="checked" /><label for="type-question">{% trans "questions" %}</label> - <input id="type-tag" type="radio" value="tag" name="t" /><label for="type-tag">{% trans "tags" %}</label> - <input id="type-user" type="radio" value="user" name="t" /><label for="type-user">{% trans "users" %}</label> - </div> -</form> -</div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/.svn/text-base/sitemap_section_index.xml.svn-base b/forum/skins/light/templates/.svn/text-base/sitemap_section_index.xml.svn-base deleted file mode 100755 index 70333757e0788d129c537e4d2629ca530d392651..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/sitemap_section_index.xml.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> -{% for location in locations %} - <sitemap><loc>{{ location }}</loc></sitemap> -{% endfor %} -</sitemapindex> diff --git a/forum/skins/light/templates/.svn/text-base/static.html.svn-base b/forum/skins/light/templates/.svn/text-base/static.html.svn-base deleted file mode 100755 index eff93ae64585fa7226e65e0d6808941e20cad7d0..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/static.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% load markup %} -{% block title %}{% spaceless %}{{ title }}{% endspaceless %}{% endblock %} - -{% block content %} -<div class="headNormal">{{ title }}</div> -<div class="content"> -{{ content|markdown:"settingsparser" }} -</div> -{% endblock %} - diff --git a/forum/skins/light/templates/.svn/text-base/subscription_status.html.svn-base b/forum/skins/light/templates/.svn/text-base/subscription_status.html.svn-base deleted file mode 100755 index 49ec02f7ec10ed365824d255d222bee0afadc7df..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/subscription_status.html.svn-base +++ /dev/null @@ -1,43 +0,0 @@ -{% spaceless %} -{% load i18n extra_tags %} -<h3 class="subtitle">{% trans "Follow this question" %}</h3> -<strong>{% trans "By Email" %}:</strong> -{% if request.user.is_authenticated %} - <div class="subscription-status"> - {% if subscription %} - {% if subscription.auto_subscription %} - <p>{% trans "You were automatically subscribed to this question." %}</p> - {% else %} - <p>{% trans "You are subscribed to this question." %}</p> - {% endif %} - {% else %} - <p>{% trans "You are not subscribed to this question." %}</p> - {% endif %} - </div> - <p><a class="ajax-command sidebar_button subscription_switch" href="{% url subscribe_simple id=question.id %}"> - {% if subscription %} - {% trans "unsubscribe me" %} - {% else %} - {% trans "subscribe me" %} - {% endif %} - </a></p> - <p> - {% blocktrans with request.user.get_user_subscriptions_url as subscriptions_url %} - (you can adjust your notification settings on your <a href="{{ subscriptions_url }}">profile</a>) - {% endblocktrans %} - </p> -{% else %} - <p>{% trans "Once you sign in you will be able to subscribe for any updates here" %}</p> -{% endif %} -<strong>{% trans "By RSS" %}:</strong> -<p> - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" - href="{{ question.get_absolute_url }}?type=rss" title="{% trans "subscribe to answers" %}"></a> - {% trans "Answers" %} -</p> -<p> - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" - href="{{ question.get_absolute_url }}?type=rss&comments=yes" title="{% trans "subscribe to comments and answers" %}"></a> - {% trans "Answers and Comments" %} -</p> -{% endspaceless %} diff --git a/forum/skins/light/templates/.svn/text-base/tags.html.svn-base b/forum/skins/light/templates/.svn/text-base/tags.html.svn-base deleted file mode 100755 index 56062c554e6c3d85580d5673c23d13eb5d3afae9..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/tags.html.svn-base +++ /dev/null @@ -1,63 +0,0 @@ -{% extends "base_content.html" %} -<!-- tags.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} -{% block title %}{% spaceless %}{% trans "Tag list" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - /*<![CDATA[*/ - $().ready(function(){ - $("#ipSearchTag").focus(); - - var orderby = "{{ tab_id }}"; - if(orderby != "used" && orderby != "name") - orderby = "used"; - $("#sort_" + orderby).attr('className',"on"); - $("#type-tag").attr('checked',true); - - Hilite.exact = false; - Hilite.elementid = "searchtags"; - Hilite.debug_referrer = location.href; - }); - /*]]>*/ - </script> -{% endblock %} -{% block content %} -<!-- Tabs --> -<div class="tabBar"> - <div class="headQuestions">{% trans "Tag list" %}</div> - {{ tags.paginator.sort_tabs }} -</div> -<div id="searchtags"> -<p> -{% if stag %} - {% trans "All tags matching query" %} '<span class="darkred"><strong>{{ stag }}</strong></span>': -{% endif %} -{% if not tags.paginator.count %} - <span>{% trans "Nothing found" %}</span> -{% endif %} -</p> -{% if tags.paginator.count %} -<ul class="tagsList tags"> -{% for tag in tags.paginator.page %} - <li> - <a class="tag-link-{{ tag }}" href="{% url tag_questions tag|urlencode %}" title="{% trans "see questions tagged" %}'{{ tag }}'{% trans "using tags" %}" rel="tag"> - {{ tag }} - </a> - <span class="tag-number">× {{ tag.used_count|intcomma }}</span> - <br/> - - </li> -{% endfor %} -</ul> -{% endif %} -</div> - -{% endblock %} -{% block tail %} -<div class="pager"> - {{ tags.paginator.page_numbers }} -</div> -{% endblock %} -<!-- end tags.html --> diff --git a/forum/skins/light/templates/.svn/text-base/user.html.svn-base b/forum/skins/light/templates/.svn/text-base/user.html.svn-base deleted file mode 100755 index 61c63a0d3cb6dac88fb9c9b432153380ea32fe24..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/.svn/text-base/user.html.svn-base +++ /dev/null @@ -1,43 +0,0 @@ -{% extends "base_content.html" %} -<!-- user.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load smart_if %} - -{% block title %}{% spaceless %}{{ page_title }}{% endspaceless %}{% endblock %} -{% block forestyle%} - <style type="text/css"> - .history-table td { padding: 5px; } - .user-stats-table { margin-left:50px; } - </style> -{% endblock %} -{% block forejs %} - {% if request.user.is_superuser or request.user == view_user %} - <script type="text/javascript">google.load("jquery", "1.4.2");google.load("jqueryui", "1.8.1");</script> - <script type="text/javascript"> - response_commands['update_profile_karma'] = function(new_karma) { - $('#user-reputation').css('background', 'yellow'); - $('#user-reputation').html(new_karma); - $('#user-reputation').animate({ backgroundColor: "transparent" }, 1000); - } - </script> - <link rel="stylesheet" href="http://jquery-ui.googlecode.com/svn/tags/latest/themes/base/jquery-ui.css" type="text/css" media="all" /> - <link rel="stylesheet" href="http://static.jquery.com/ui/css/demo-docs-theme/ui.theme.css" type="text/css" media="all" /> - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/user.css" %}"/> - {% endif %} - <style type="text/css"> - #room { - border: 0; - } - </style> - {% block userjs %}{% endblock %} -{% endblock %} -{% block content %} - <div id="mainbar-full"> - {% include "users/info.html" %} - {% include "users/tabs.html" %} - {% block usercontent %} - {% endblock %} - </div> -{% endblock %}<!-- end user.html --> diff --git a/forum/skins/light/templates/auth/.svn/all-wcprops b/forum/skins/light/templates/auth/.svn/all-wcprops deleted file mode 100755 index 0be72c376e111151f38ccd10c659017267d5e1d5..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/all-wcprops +++ /dev/null @@ -1,53 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1243/osqa/trunk/forum/skins/default/templates/auth -END -mail_already_validated.html -K 25 -svn:wc:ra_dav:version-url -V 95 -/svnroot/!svn/ver/634/osqa/trunk/forum/skins/default/templates/auth/mail_already_validated.html -END -auth_settings.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/auth/auth_settings.html -END -welcome_email.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/520/osqa/trunk/forum/skins/default/templates/auth/welcome_email.html -END -temp_login_email.html -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/520/osqa/trunk/forum/skins/default/templates/auth/temp_login_email.html -END -temp_login_request.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/auth/temp_login_request.html -END -signin.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/auth/signin.html -END -complete.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1243/osqa/trunk/forum/skins/default/templates/auth/complete.html -END -mail_validation.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/520/osqa/trunk/forum/skins/default/templates/auth/mail_validation.html -END diff --git a/forum/skins/light/templates/auth/.svn/entries b/forum/skins/light/templates/auth/.svn/entries deleted file mode 100755 index 923c1e5aaa92c4acc831df1a95f560913bc7eb82..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/entries +++ /dev/null @@ -1,300 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/auth -http://svn.osqa.net/svnroot - - - -2012-04-04T23:10:46.497540Z -1243 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -temp_login_email.html -file - - - - -2012-07-01T12:37:36.185376Z -e2884a82a56c7bb1a64759fdc72f3625 -2010-07-12T18:51:59.506597Z -520 -matt - - - - - - - - - - - - - - - - - - - - - -1250 - -temp_login_request.html -file - - - - -2012-07-01T12:37:36.185376Z -661cefe6b08d2a2f7e07ff616b02bed8 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1222 - -signin.html -file - - - - -2012-07-01T12:37:36.185376Z -2aa1853bb793c9d485273bb4e71b9f29 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -8084 - -complete.html -file - - - - -2012-07-01T12:37:36.185376Z -4c2b2596304a4fbd9c12a5da3505fda5 -2012-04-04T23:10:46.497540Z -1243 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -5111 - -mail_validation.html -file - - - - -2012-07-01T12:37:36.185376Z -febd7967ea0ea92e5c91237c5f451afc -2010-07-12T18:51:59.506597Z -520 -matt - - - - - - - - - - - - - - - - - - - - - -1228 - -mail_already_validated.html -file - - - - -2012-07-01T12:37:36.185376Z -493d791cae46829d6fa3e31d43a5ce22 -2010-12-27T20:39:21.471947Z -634 -jordan - - - - - - - - - - - - - - - - - - - - - -458 - -auth_settings.html -file - - - - -2012-07-01T12:37:36.185376Z -cc2a81973e5af0a1cd51507a7bfac489 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1879 - -welcome_email.html -file - - - - -2012-07-01T12:37:36.185376Z -1f8ffcdbacf4ed74b0463f0a32aa1854 -2010-07-12T18:51:59.506597Z -520 -matt - - - - - - - - - - - - - - - - - - - - - -2024 - diff --git a/forum/skins/light/templates/auth/.svn/prop-base/complete.html.svn-base b/forum/skins/light/templates/auth/.svn/prop-base/complete.html.svn-base deleted file mode 100755 index 13eec79857182dd56cbc1e26e0c803c9fcd473ab..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/prop-base/complete.html.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 415 -/osqa/branches/cacheimp/forum/skins/default/templates/auth/complete.html:874-939 -/osqa/branches/carpenter/forum/skins/default/templates/auth/complete.html:691-725 -/osqa/branches/hernani/forum/skins/default/templates/auth/complete.html:772-832 -/osqa/branches/jambazov/forum/skins/default/templates/auth/complete.html:675-831 -/osqa/branches/notification-config/forum/skins/default/templates/auth/complete.html:693-845 -END diff --git a/forum/skins/light/templates/auth/.svn/text-base/auth_settings.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/auth_settings.html.svn-base deleted file mode 100755 index 969036d6c499650c900381ca809df8c95d6c6533..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/auth_settings.html.svn-base +++ /dev/null @@ -1,39 +0,0 @@ -{% extends "user.html" %} -<!-- changepw.html --> -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "Authentication settings" %}{% endspaceless %}{% endblock %} -{% block usercontent %} -<h2>{% trans "Authentication settings" %}</h2> -{% if auth_keys %} - <p class="message">{% blocktrans %}These are the external authentication providers currently associated with your account.{% endblocktrans %}</p> - <div> - {% for key in auth_keys %} - <p>{{ key.name }} (<a href="{% url user_remove_external_provider id=key.id %}">{% trans "remove" %}</a>)</p> - {% endfor %} - </div> -{% endif %} -{% if not auth_keys %} - <p class="message">{% blocktrans %}You currently have no external authentication provider associated with your account.{% endblocktrans %}</p> -{% endif %} -{% ifequal view_user request.user %} - <input type="button" class="submit" value="{% trans "Add new provider" %}" onclick="window.location='{% url user_add_external_provider %}'" /> -{% endifequal %} -{% if allow_local_auth %} -{% if has_password %} - <p class="message">{% blocktrans %}This is where you can change your password. Make sure you remember it!{% endblocktrans %}</p> -{% else %} - <p class="message">{% blocktrans %}You can set up a password for your account, so you can login using standard username and password!{% endblocktrans %}</p> -{% endif %} -<div class="aligned"> - <form action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - <ul id="changepw-form" class="form-horizontal-rows"> - {{form.as_ul}} - </ul> - <div class="submit-row"><input type="submit" class="submit" value="{% if has_password %}{% trans "Change password" %}{% endif %}{% if not has_password %}{% trans "Create password" %}{% endif %}" /></div> - </form> - </div> -{% endif %} -{% endblock %} -<!-- end changepw.html --> diff --git a/forum/skins/light/templates/auth/.svn/text-base/complete.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/complete.html.svn-base deleted file mode 100755 index 1c327bfeb4b0d59ef9443224ce54af3083a19ccc..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/complete.html.svn-base +++ /dev/null @@ -1,110 +0,0 @@ -{% extends "base_content.html" %} -<!-- complete.html --> -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "Connect your OpenID with this site" %}{% endspaceless %}{% endblock %} -{% block content %} - <div id="main-bar" class="headNormal"> - {% trans "Connect your OpenID with your account on this site" %} - </div> - <div id="completetxt" > - <div class="message"> - {# Only display the OpenID greeting if a provider is detected. #} - {% if provider %} - <p> - <b>{% trans "You are here for the first time with " %}{{ provider }}</b> - </p> - {% endif %} - <p> - {% trans "Please choose your screen name and confirm your email address. A valid email address is necessary to receive notifications about activity in the areas of this community you're most interested in, and will help you become an involved participant in this community." %} - </p> - </div> - <p style="display:none">{% trans "This account already exists, please use another." %}</p> - </div> - - {% if form1.errors %} - <ul class="errorlist"> - {% if form1.non_field_errors %} - {% for error in form1.non_field_errors %} - <li>{{error}}</li> - {% endfor %} - {% endif %} - </ul> - {% endif %} - - <div class="login"> - <form name="fregister" action="" method="POST"> - {% csrf_token %} - {{ form1.next }} - <div class="form-row-vertical margin-bottom"> - <label for="id_username">{{ form1.username.label }}</label> - {% if form1.username.errors %} - <p class="error">{{ form1.username.errors|join:", " }}</p> - {% endif %} - {{ form1.username }} - </div> - <div class="form-row-vertical margin-bottom"> - <label for="id_email">{{ form1.email.label }}</label> - {% if form1.email.errors %} - <p class="error">{{ form1.email.errors|join:", " }}</p> - {% endif %} - {{ form1.email }} - </div> - <div class="form-row-vertical margin-bottom"> - <label for="id_real_name">{{ form1.real_name.label }}</label> - {% if form1.real_name.errors %} - <p class="error">{{ form1.real_name.errors|join:", " }}</p> - {% endif %} - {{ form1.real_name }} - </div> - {% if form1.password1 %} - <div class="form-row-vertical margin-bottom"> - <label for="password1_id">{{ form1.password1.label }}</label> - {% if form1.password1.errors %} - <p class="error">{{ form1.password1.errors|join:", " }}</p> - {% endif %} - {{ form1.password1 }} - </div> - <div class="form-row-vertical margin-bottom"> - <label for="password2_id">{{ form1.password2.label }}</label> - {% if form1.password2.errors %} - <p class="error">{{ form1.password2.errors|join:", " }}</p> - {% endif %} - {{ form1.password2 }} - </div> - {% endif %} - {% if form1.recaptcha %} - <div class="form-row-vertical margin-bottom"> - <label for="recaptcha_id">{{ form1.recaptcha.label }}</label> - {% if form1.recaptcha.errors %} - <p class="error">{{ form1.recaptcha.errors|join:", " }}</p> - {% endif %} - {{ form1.recaptcha }} - </div> - {% endif %} - <div class="submit-row"><input type="submit" class="submit" name="bnewaccount" id="bnewaccount" value="{% trans "create account" %}"/></div> - </form> - </div> - {% comment %}<!-- this form associates openID with an existing password-protected account, not yet functional --> - {% if form2 %} - <div class="login" style="display:none"> - <form name="fverify" action="{% url user_register %}" method="POST"> - {% csrf_token %} - {{ form2.next }} - <fieldset style="padding:10px"> - <legend class="big">{% trans "Existing account" %}</legend> - <div class="form-row"><label for="id_username">{% trans "user name" %}</label><br/>{{ form2.username }}</div> - <div class="form-row"><label for="id_passwordl">{% trans "password" %}</label><br/>{{ form2.password }}</div> - <p><span class='big strong'>(Optional) receive updates by email</span> - only sent when there are any.</p> - <!--todo double check translation from chinese 确认 = "Register" --> - <div class="submit-row"> - <input type="submit" class="submit" name="bverify" value="{% trans "Register" %}"/> - <a href="{% url user_sendpw %}">{% trans "Forgot your password?" %}</a> - </div> - </fieldset> - </form> - </div> - {% endif %} - {% endcomment %} -{% endblock %} -<!-- end complete.html --> diff --git a/forum/skins/light/templates/auth/.svn/text-base/mail_already_validated.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/mail_already_validated.html.svn-base deleted file mode 100755 index dd37fa38ff9e68caef981d12c2aa907b6734cd4c..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/mail_already_validated.html.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -{% extends "base_content.html" %} -<!-- complete.html --> -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "This e-mail has already been validated" %}{% endspaceless %}{% endblock %} -{% block content %} - -<div class="error"> - -<h1>{% blocktrans %}Already validated{% endblocktrans %}</h1> - -<p>{% blocktrans %}This e-mail has already been validated{% endblocktrans %}</p> - -</div> - -{% endblock %} -<!-- end complete.html --> diff --git a/forum/skins/light/templates/auth/.svn/text-base/mail_validation.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/mail_validation.html.svn-base deleted file mode 100755 index 82029d620862c0f7dd6952ddd1a9ebbb4887cfc7..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/mail_validation.html.svn-base +++ /dev/null @@ -1,30 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Your email validation link {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}">{% trans "Please use the following link to help us verify your email address:" %}</p> - - <p style="{{ p_style }}"><a style="{{ a_style }}" href="{% fullurl auth_validate_email user=recipient.id,code=validation_code %}">{% trans "Validate my email address" %}</a></p> - - <p style="{{ p_style }}">{% trans "If the above link is not clickable, copy and paste this url into your web browser's address bar:" %}</p> - - <p style="{{ p_style }}">{% fullurl auth_validate_email user=recipient.id,code=validation_code %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% trans "Copy and paste this url into your web browser's address bar to help us verify your email address:" %} - -{% fullurl auth_validate_email user=recipient.id,code=validation_code %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/auth/.svn/text-base/signin.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/signin.html.svn-base deleted file mode 100755 index 5514cc52823ecdaed5a8922a1d8574f62d39381f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/signin.html.svn-base +++ /dev/null @@ -1,188 +0,0 @@ -{% extends "base.html" %} - -{% load i18n %} -{% load extra_tags %} - -{% block title %}{% spaceless %}{% trans "Login" %}{% endspaceless %}{% endblock %} - -{% block forejs %} - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/auth.css" %}"/> - {% for provider in all_providers %} - {% for location in provider.extra_css %} - <link rel="stylesheet" type="text/css" media="screen" href="{{ location }}"/> - {% endfor %} - {% endfor %} -{% endblock %} - -{% block content %} - {% for provider in all_providers %} - {% if provider.pre_code %} - {{ provider.pre_code|safe }} - {% endif %} - {% endfor %} - <div class="headNormal"> - {% trans "User login" %} - </div> - {% if msg %} - <p class="error">{{ msg }}</p> - {% endif %} - {% for provider in top_stackitem_providers %} - <form class="signin_form" method="POST" action="{% url auth_provider_signin provider=provider.id %}" accept-charset="utf-8"> - {% csrf_token %} - {% include provider.stack_item_template %} - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </form> - {% endfor %} - {% if top_stackitem_providers %} - <h3 class="or_label">{% trans 'Or...' %}</h3> - {% endif %} - <div style="width:600px;float:left;margin-bottom:5px;"> - {% blocktrans %} - External login services use <b><a href="http://openid.net/">OpenID</a></b> technology, where your password always stays confidential between - you and your login provider and you don't have to remember another one. - {% endblocktrans %} - </div> - {% if request.user.is_anonymous %} - <div style="width:600px;float:left;margin-bottom:5px;"> - <input type="checkbox" checked="checked" id="validate_email" /> - {% trans "Validate my email after I login." %} - </div> - {% endif %} - <div id="bigicon_providers"> - {% for provider in bigicon_providers %} - <div class="provider_logo big" name="{{ provider.id }}"> - <div class="inner"> - {% ifequal provider.type "DIRECT" %} - <a class="provider_direct" href="{% url auth_provider_signin provider=provider.id %}"> - <img src="{% media provider.icon %}" /> - </a> - {% endifequal %} - {% ifequal provider.type "CUSTOM" %} - {% include provider.code_template %} - {% endifequal %} - {% ifequal provider.type "SIMPLE_FORM" %} - <img alt="{{ provider.simple_form_context.your_what }}" class="simple_form_provider" src="{% media provider.icon %}" /> - {% endifequal %} - </div> - </div> - {% endfor %} - </div> - <div id="smallicon_providers"> - {% for provider in smallicon_providers %} - <div class="provider_logo small" name="{{ provider.id }}"> - <div class="inner"> - {% ifequal provider.type "DIRECT" %} - <a class="provider_direct" href="{% url auth_provider_signin provider=provider.id %}"> - <img src="{% media provider.icon %}" /> - </a> - {% endifequal %} - {% ifequal provider.type "CUSTOM" %} - {% include provider.code_template %} - {% endifequal %} - {% ifequal provider.type "SIMPLE_FORM" %} - <img alt="{{ provider.simple_form_context.your_what }}" class="simple_form_provider" src="{% media provider.icon %}" /> - {% endifequal %} - </div> - </div> - {% endfor %} - </div> - <form name="signin_form" id="signin_form" class="signin_form" method="POST" action=""> - {% csrf_token %} - <div id="signin_form_slot"></div> - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </form> - {% for provider in stackitem_providers %} - <h3 class="or_label">{% trans 'Or...' %}</h3> - <form class="signin_form" method="POST" action="{% url auth_provider_signin provider=provider.id %}" accept-charset="utf-8"> - {% csrf_token %} - {% include provider.stack_item_template %} - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </form> - {% endfor %} - <h3 class="or_label">{% trans 'Or...' %}</h3> - <form name="signin_form" id="dummy_form_unused" class="signin_form" method="POST" action=""> - {% csrf_token %} - <fieldset> - {% trans 'Click' %} <a href="{% url auth_request_tempsignin %}">{% trans 'here' %}</a> {% trans "if you're having trouble signing in." %} - </fieldset> - </form> - <script type="text/html" id="simple_form_template"> - <fieldset id="slot_form"> - <p id="provider_name_slot">{% trans 'Enter your ' %}%%YOUR_WHAT%%</p> - <div><p><span></span> - <input id="input_field" type="text" name="input_field" /><span></span> - <input id="ssignin" name="ssignin" type="submit" value="Login" /> - </p></div> - <input type="hidden" class="validate_email" name="validate_email" value="yes" /> - </fieldset> - </script> - <script type="text/javascript"> - $(function() { - var signin_url = "{% url auth_provider_signin provider='PROVIDER' %}"; - - function set_validate_email() { - var validate = $('#validate_email').attr('checked') ? 'yes' : 'no'; - $('.validate_email').attr('value', validate); - - $('.provider_direct').each(function() { - var current_url = $(this).attr('href'); - if (!/\?validate_email\=(yes|no)$/.test(current_url)) { - current_url += ('?validate_email=' + validate); - } else { - current_url = current_url.replace(/(yes|no)$/, validate); - } - - $(this).attr('href', current_url); - }) - } - - $('#validate_email').change(set_validate_email); - - function set_form_action(el) { - var provider = el.parents('.provider_logo').attr('name'); - $('#signin_form').attr('action', signin_url.replace('PROVIDER', provider)); - } - - $('.provider_logo').click(function() { - $('.provider_logo').removeClass('selected'); - $(this).addClass('selected'); - }); - - $('.simple_form_provider').click(function() { - $('#signin_form_slot').html(''); - var new_html = $('#simple_form_template').html() - .replace('%%YOUR_WHAT%%', $(this).attr('alt')); - $('#signin_form_slot').html(new_html); - set_form_action($(this)); - set_validate_email(); - }) - - set_validate_email(); - }); - </script> -{% endblock %} - -{% block sidebar %} -<div class="boxC"> - <h3 class="subtitle">{% trans "Why use OpenID?" %}</h3> - <ul class="list-item"> - <li> - {% trans "with openid it is easier" %} - </li> - <li> - {% trans "reuse openid" %} - </li> - <li> - {% trans "openid is widely adopted" %} - </li> - <li> - {% trans "openid is supported open standard" %} - </li> - - </ul> - <p class="info-box-follow-up-links"> - <a href="http://openid.net/what/" target="_blank">{% trans "Find out more" %} </a><br/> - <a href="http://openid.net/get/" target="_blank">{% trans "Get OpenID" %} </a> - </p> -</div> -{% endblock%} diff --git a/forum/skins/light/templates/auth/.svn/text-base/temp_login_email.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/temp_login_email.html.svn-base deleted file mode 100755 index 32ade899f9fab341036be8d16807bf3b5d0d02d0..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/temp_login_email.html.svn-base +++ /dev/null @@ -1,31 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Temporary login link{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %}The following link grants you a one time access to your account at {{ app_name }}.{% endblocktrans %} - </p> - <p style="{{ p_style }}"><a style="{{ a_style }}" href="{% fullurl auth_tempsignin user=recipient.id,code=temp_login_code %}">{% trans "Go to your account" %}</a></p> - - <p style="{{ p_style }}">{% trans "If the above link is not clickable, copy and paste this url into your web browser's address bar:" %}</p> - - <p style="{{ p_style }}">{% fullurl auth_tempsignin user=recipient.id,code=temp_login_code %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}The following url grants you a one time access to your account at {{ app_name }}.{% endblocktrans %} - -{% fullurl auth_tempsignin user=recipient.id,code=temp_login_code %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/auth/.svn/text-base/temp_login_request.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/temp_login_request.html.svn-base deleted file mode 100755 index 70f740e2d8e917318b6d380a893b6725571f8bcf..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/temp_login_request.html.svn-base +++ /dev/null @@ -1,29 +0,0 @@ -{% extends "base.html" %} - -{% load i18n %} -{% block head %}{% endblock %} -{% block title %}{% spaceless %}{% trans "Request temporary login key" %}{% endspaceless %}{% endblock %} -{% block content %} -<div class="headNormal">{% trans "Account: request temporary login key" %}</div> -<p class="message">{% blocktrans %} - If you're experiencing problems accessing your account, or if you forgot your password, - here you can request a temporary login key. Fill out your account email and we'll send you a temporary access link that - will enable you to access your account. This token is valid only once and for a limited period of time. - {% endblocktrans %}</p> -<div class="aligned"> - {% if form.errors %} - <ul class="errorlist"> - {% for error in form.errors %} - <li>{{ error }}</li> - {% endfor %} - </ul> - {% endif %} - <form action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - <ul id="changepw-form" class="form-horizontal-rows"> - {{form.as_ul}} - </ul> - <div class="submit-row"><input type="submit" class="submit" value="{% trans "Send link" %}" /></div> - </form> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/auth/.svn/text-base/welcome_email.html.svn-base b/forum/skins/light/templates/auth/.svn/text-base/welcome_email.html.svn-base deleted file mode 100755 index 1adcba2f87e4302603e7d2641a99113d213f3cab..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/auth/.svn/text-base/welcome_email.html.svn-base +++ /dev/null @@ -1,46 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_greeting = True - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Welcome to {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %}Howdy and welcome to {{ app_name }}. We know you're busy, so we'll keep this real simple.{% endblocktrans %}, - </p> - - <p style="{{ p_style }}">{% trans "Here's your login info (store it in a cool dry place):" %}</p> - - <p style="{{ p_style }}">{% trans "Username: " %} {{ recipient.username }}<br /> - <b>{% trans "Password: As IF we would send your password in cleartext!" %}</b></p> - - <p style="{{ p_style }}">{% trans "The following link will help us verify your email address:" %}</p> - - <p style="{{ p_style }}"><a style="{{ a_style }}" href="{% fullurl auth_validate_email user=recipient.id,code=validation_code %}">{% trans "Validate my email address" %}</a></p> - - <p style="{{ p_style }}">{% trans "If the above link is not clickable, copy and paste this url into your web browser's address bar:" %}</p> - - <p style="{{ p_style }}">{% fullurl auth_validate_email user=recipient.id,code=validation_code %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}Howdy and welcome to {{ app_name }}. We know you're busy, so we'll keep this real simple.{% endblocktrans %}, -{% trans "Here's your login info (store it in a cool dry place):" %} - -{% trans "Username: " %} {{ recipient.username }} -{% trans "Password: As IF we would send your password in cleartext!" %} - -{% trans "Copy and paste this url into your web browser's address bar to help us verify your email address:" %} - -{% fullurl auth_validate_email user=recipient.id,code=validation_code %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/feeds/.svn/all-wcprops b/forum/skins/light/templates/feeds/.svn/all-wcprops deleted file mode 100755 index df943c984c88c1b13869b5d1389fb206a3a20e76..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/feeds/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/503/osqa/trunk/forum/skins/default/templates/feeds -END -rss_answer_title.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/503/osqa/trunk/forum/skins/default/templates/feeds/rss_answer_title.html -END -rss_title.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/503/osqa/trunk/forum/skins/default/templates/feeds/rss_title.html -END -rss_description.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/17/osqa/trunk/forum/skins/default/templates/feeds/rss_description.html -END diff --git a/forum/skins/light/templates/feeds/.svn/entries b/forum/skins/light/templates/feeds/.svn/entries deleted file mode 100755 index f3836a7c84033668cce10d3e6924e89e33df3515..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/feeds/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/feeds -http://svn.osqa.net/svnroot - - - -2010-07-08T18:33:06.630780Z -503 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -rss_answer_title.html -file - - - - -2012-07-01T12:37:36.293376Z -0db803ad484722ee79d78c50f587a3e9 -2010-07-08T18:33:06.630780Z -503 -hernani - - - - - - - - - - - - - - - - - - - - - -108 - -rss_title.html -file - - - - -2012-07-01T12:37:36.293376Z -b18ae1e100d6825c13cccaeb3c1e01b0 -2010-07-08T18:33:06.630780Z -503 -hernani - - - - - - - - - - - - - - - - - - - - - -20 - -rss_description.html -file - - - - -2012-07-01T12:37:36.293376Z -bdc61e429a32de6f6fa9cd51e3c8a25e -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -19 - diff --git a/forum/skins/light/templates/feeds/.svn/text-base/rss_answer_title.html.svn-base b/forum/skins/light/templates/feeds/.svn/text-base/rss_answer_title.html.svn-base deleted file mode 100755 index 6b5d5ecd57252aa309337170385066772cba9489..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/feeds/.svn/text-base/rss_answer_title.html.svn-base +++ /dev/null @@ -1,2 +0,0 @@ -{% load i18n %} -{% blocktrans with obj.author.username as author %}Answer by {{ author }}{% endblocktrans %} \ No newline at end of file diff --git a/forum/skins/light/templates/feeds/.svn/text-base/rss_description.html.svn-base b/forum/skins/light/templates/feeds/.svn/text-base/rss_description.html.svn-base deleted file mode 100755 index fa781907e907904d02f0027a19655e6f44207067..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/feeds/.svn/text-base/rss_description.html.svn-base +++ /dev/null @@ -1 +0,0 @@ -{{ obj.html|safe }} \ No newline at end of file diff --git a/forum/skins/light/templates/feeds/.svn/text-base/rss_title.html.svn-base b/forum/skins/light/templates/feeds/.svn/text-base/rss_title.html.svn-base deleted file mode 100755 index be322ee31c34ded5f805643030a1cefb1e4a1f78..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/feeds/.svn/text-base/rss_title.html.svn-base +++ /dev/null @@ -1 +0,0 @@ -{{ obj.title|safe }} \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/all-wcprops b/forum/skins/light/templates/node/.svn/all-wcprops deleted file mode 100755 index 468451ef0d186443f681b0fb20746e74a429e544..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/all-wcprops +++ /dev/null @@ -1,101 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1261/osqa/trunk/forum/skins/default/templates/node -END -reviser_info.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/templates/node/reviser_info.html -END -award_points.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/1261/osqa/trunk/forum/skins/default/templates/node/award_points.html -END -accept_button.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/624/osqa/trunk/forum/skins/default/templates/node/accept_button.html -END -vote_buttons.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/34/osqa/trunk/forum/skins/default/templates/node/vote_buttons.html -END -revision.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/node/revision.html -END -convert_to_comment.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/315/osqa/trunk/forum/skins/default/templates/node/convert_to_comment.html -END -permanent_link.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1029/osqa/trunk/forum/skins/default/templates/node/permanent_link.html -END -comment_skeleton.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/1194/osqa/trunk/forum/skins/default/templates/node/comment_skeleton.html -END -flagged_item.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/298/osqa/trunk/forum/skins/default/templates/node/flagged_item.html -END -post_controls.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/494/osqa/trunk/forum/skins/default/templates/node/post_controls.html -END -contributors_info.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/958/osqa/trunk/forum/skins/default/templates/node/contributors_info.html -END -convert_to_question.html -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/829/osqa/trunk/forum/skins/default/templates/node/convert_to_question.html -END -report.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/320/osqa/trunk/forum/skins/default/templates/node/report.html -END -comments.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1244/osqa/trunk/forum/skins/default/templates/node/comments.html -END -wiki_symbol.html -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/329/osqa/trunk/forum/skins/default/templates/node/wiki_symbol.html -END -favorite_mark.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/34/osqa/trunk/forum/skins/default/templates/node/favorite_mark.html -END diff --git a/forum/skins/light/templates/node/.svn/entries b/forum/skins/light/templates/node/.svn/entries deleted file mode 100755 index eb40dc88a90c5228b5f028ff3417670173dfecd4..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/entries +++ /dev/null @@ -1,572 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/node -http://svn.osqa.net/svnroot - - - -2012-05-09T20:59:46.733114Z -1261 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -wiki_symbol.html -file - - - - -2012-07-01T12:37:36.289376Z -d5fc8f65a89702d9c461b1a1197ec3cd -2010-05-25T21:28:23.158598Z -329 -hernani - - - - - - - - - - - - - - - - - - - - - -376 - -favorite_mark.html -file - - - - -2012-07-01T12:37:36.289376Z -790e925d9e1e9b1a0286c4ebf241d3f7 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -388 - -reviser_info.html -file - - - - -2012-07-01T12:37:36.289376Z -91acce27623957282985b1389e6e8e15 -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -402 - -award_points.html -file - - - - -2012-07-01T12:37:36.289376Z -873e2ecb669fe87f10944cd235909b47 -2012-05-09T20:59:46.733114Z -1261 -jordan - - - - - - - - - - - - - - - - - - - - - -2271 - -accept_button.html -file - - - - -2012-07-01T12:37:36.289376Z -d3639f9332a5226b3e6746141f7c88d4 -2010-12-22T22:33:54.794574Z -624 -jordan - - - - - - - - - - - - - - - - - - - - - -1153 - -vote_buttons.html -file - - - - -2012-07-01T12:37:36.289376Z -e8e656e8d88af5294c04e99ea45e238f -2010-04-15T22:54:00.905320Z -34 -hernani - - - - - - - - - - - - - - - - - - - - - -696 - -revision.html -file - - - - -2012-07-01T12:37:36.289376Z -9cce4874dce3e17d89639cceeba6f185 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -333 - -convert_to_comment.html -file - - - - -2012-07-01T12:37:36.289376Z -9779fb5c101403ef4d49d2adb5ef6429 -2010-05-24T11:10:22.346396Z -315 -hernani - - - - - - - - - - - - - - - - - - - - - -254 - -permanent_link.html -file - - - - -2012-07-01T12:37:36.289376Z -87e7dd0ffc6b1a9b8ba88ec491de6c11 -2011-05-07T13:42:43.295163Z -1029 -jordan - - - - - - - - - - - - - - - - - - - - - -1657 - -comment_skeleton.html -file - - - - -2012-07-01T12:37:36.289376Z -3eae45d2ebbeaefc67bf3ecda2a69df2 -2011-10-24T22:14:16.239154Z -1194 -jordan - - - - - - - - - - - - - - - - - - - - - -3480 - -flagged_item.html -file - - - - -2012-07-01T12:37:36.289376Z -6a89b3c4e49d6dbda208f2a718a400a1 -2010-05-18T15:58:10.566270Z -298 -qw3rty - - - - - - - - - - - - - - - - - - - - - -126 - -post_controls.html -file - - - - -2012-07-01T12:37:36.293376Z -8875fe9ecf5e0824fa2c544dbe74cffd -2010-07-07T01:33:19.874560Z -494 -hernani - - - - - - - - - - - - - - - - - - - - - -992 - -contributors_info.html -file - - - - -2012-07-01T12:37:36.293376Z -0a73fb99b88c97e1eb4aaefba9938e55 -2011-04-10T15:21:07.747529Z -958 -jordan - - - - - - - - - - - - - - - - - - - - - -1215 - -convert_to_question.html -file - - - - -2012-07-01T12:37:36.293376Z -0951b00f4e410ff11d01dd456bc4e9cb -2011-03-13T01:29:36.233655Z -829 -hernani - - - - - - - - - - - - - - - - - - - - - -184 - -report.html -file - - - - -2012-07-01T12:37:36.293376Z -adab8945bc29a4059b07abf0043d0347 -2010-05-25T01:45:49.169649Z -320 -hernani - - - - - - - - - - - - - - - - - - - - - -441 - -comments.html -file - - - - -2012-07-01T12:37:36.289376Z -6b9e8c806455df30eef0e5b4be1c0f8a -2012-04-06T14:04:20.696707Z -1244 -jordan - - - - - - - - - - - - - - - - - - - - - -3383 - diff --git a/forum/skins/light/templates/node/.svn/text-base/accept_button.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/accept_button.html.svn-base deleted file mode 100755 index 653f8b181e2ea7d581111b946372be97e3e7aae9..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/accept_button.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n %} - -{% if can_accept %} - <a id="accept-answer-{{ answer.id }}" class="ajax-command accept-answer{% if answer.nis.accepted %} on{% endif %}" - title=" {% if answer.nis.accepted %} - {% blocktrans with answer.nstate.accepted.by.username as who %}{{ who }} has selected this answer as the correct answer{% endblocktrans %} - {% else %} - {% trans "mark this answer as the accepted answer" %} - {% endif %}" - bn:on="{% blocktrans with answer.nstate.accepted.by.username as who %}{{ who }} has selected this answer as the correct answer{% endblocktrans %}" - bn:off="{% trans "mark this answer as the accepted answer" %}" - href="{% url accept_answer id=answer.id %}" rel="nofollow"> - </a> -{% else %} - {% if answer.nis.accepted %} - <a class="accept-answer on" - title="{% blocktrans with answer.nstate.accepted.by.username as who %}{{ who }} has selected this answer as the correct answer{% endblocktrans %}" - href="{% url accept_answer id=answer.id %}" rel="nofollow"> - </a> - {% endif %} -{% endif %} - diff --git a/forum/skins/light/templates/node/.svn/text-base/award_points.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/award_points.html.svn-base deleted file mode 100755 index 3b60e8f9aa523d4af81f9010a6d567a1d711ec58..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/award_points.html.svn-base +++ /dev/null @@ -1,75 +0,0 @@ -{% load i18n %} - -<p> - {% blocktrans %} - If you like this answer you can award {{ awarded_user }} with reputation points. - {% endblocktrans %} -</p> - -<p> - {% blocktrans %} - Use the slider below or the input field to choose the amount of points you would like to give. - {% endblocktrans %} -</p> - -<table> - <tr> - <td width="50%">{% trans "Points:" %}</td> - <td width="50%"><input type="text" name="points" id="points_input" value="1" style="border: 1px solid #ccc; padding: 1px 2px;" /></td> - </tr> -</table> - -<div class="award_points_slider"></div> - -<script> - var awardPointsNotified = false; - var reputation_to_comment = {{ reputation_to_comment }}; - var user_reputation = {{ user.reputation }}; - - function points_award_confirm(reputation, event) { - var message = '<div style="max-width: 300px !important; text-align: left;">'; - message += "{% blocktrans %}Your karma points will be below the minimum reputation to comment. Are you sure you want to award points?{% endblocktrans %}"; - message += "</div>"; - - if ((user_reputation - reputation) < reputation_to_comment && !awardPointsNotified) { - awardPointsNotified = true; - - var doptions = { - html: message, - extra_class: 'confirm', - yes_text: messages.yes, - show_no: true, - no_callback: function() { - $(".dialog").fadeOut("fast", function() { - $('.dialog').remove(); - }) - }, - - no_text: messages.no - } - - doptions.event = event; - show_dialog(doptions); - } - } - - $('.award_points_slider').slider({ - min: 1, max: user_reputation, - slide: function(evt, ui) { - $('#points_input').val(ui.value); - points_award_confirm(Number(ui.value), evt) - } - }); - - $('#points_input').live('change keyup', function(evt) { - if ($(this).val() > user_reputation) { - $(this).attr('value', user_reputation); - } - - points_award_confirm(Number($(this).val()), evt); - - $('.award_points_slider').slider('option', 'value', $(this).val()); - - }); - -</script> \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/comment_skeleton.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/comment_skeleton.html.svn-base deleted file mode 100755 index c9f95e1b77b8685c0e890e69f2d01d04a3880f22..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/comment_skeleton.html.svn-base +++ /dev/null @@ -1,60 +0,0 @@ -{% load extra_tags %} -{% load i18n %} - -<div class="clear"></div> -<div id="comment-{{ post.id }}-form-container" class="comment-form-container"> - {% if can_comment %} - <form id="comment-{{ post.id }}-form" method="post" action="{% url comment id=post.id %}" accept-charset="utf-8"> - {% csrf_token %} - <div class="comment-form-widgets-container"> - <textarea name="comment" class="commentBox" id="comment"></textarea> - <div class="comment-form-buttons"> - <span id="comment-{{ post.id }}-chars-left" class="comment-chars-left"> - <span class="comments-char-left-count">{{ min_length }}|{{ max_length }}</span> - <span class="comments-chars-togo-msg">{% trans "characters needed" %}</span> - <span class="comments-chars-left-msg">{% trans "characters left" %}</span> - </span> - <input type="submit" class="comment-submit" value="{% trans " comment" %}" /> - <input type="submit" class="comment-cancel" value="{% trans " cancel" %}" /> - </div> - <div class="clear"></div> - {% if user.can_use_canned_comments %} - <div class="canned_comment"> - <span id="post-{{ post.id }}-menu" class="context-menu"> - <span id="post-{{ post.id }}-menu-trigger" class="action-link context-menu-trigger">{% trans "Use canned comment" %}</span> - <ul id="post-{{ post.id }}-menu-dropdown" class="context-menu-dropdown" style="width: 275px;"> - {% for canned_comment in canned_comments %} - <li class="item"> - <a style="white-space: pre-wrap;" href="javascript:void(0);" onclick="canned_comment({{ post.id }}, jQuery(this).text())">{{ canned_comment }}</a> - </li> - {% endfor %} - </ul> - </span> - </div> - {% endif %} - </div> - <script type="text/html" class="new-comment-skeleton" id="new-comment-skeleton-{{ post.id }}"> - <div class="comment{% if not comment.top_scorer %} not_top_scorer{% endif %}" id="comment-%ID%"> - <div id="post-%ID%-score" class="comment-score"></div> - <div class="comment-text">%COMMENT%</div> - <div class="comment-info" id="comment-%ID%-info"> - <a id="comment-%ID%-edit" href="%EDIT_URL%" title="{% trans "Edit comment" %}" - class="comment-edit" rel="nofollow"> </a> - <a id="comment-%ID%-delete" href="%DELETE_URL%" title="{% trans "Delete comment" %}" - class="ajax-command comment-delete confirm" rel="nofollow"> </a> - <a rel="nofollow" id="comment-%ID%-convert" style="display:none;" href="%CONVERT_URL%" title="{% trans "Convert comment to answer" %}" - class="ajax-command comment-convert confirm" rel="nofollow"> </a> - - <span class="comment-age">({% trans "just now" %})</span> - <a class="comment-user" href="%PROFILE_URL%">%USERNAME%</a> - {% if user.is_authenticated %} - {% if show_gravatar %}{% gravatar user 18 %}{% endif %} - {% endif %} - </div> - </div> - </script> - </form> - {% endif %} -</div> -<div class="clear"></div> - diff --git a/forum/skins/light/templates/node/.svn/text-base/comments.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/comments.html.svn-base deleted file mode 100755 index a84ef89d5583d46b518aa6a61ee647e75434f683..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/comments.html.svn-base +++ /dev/null @@ -1,56 +0,0 @@ -{% load extra_tags %} -{% load i18n %} - -{% if show_latest_comments_first %}{% include "node/comment_skeleton.html" %}{% endif %} - -<div class="comments-container" id="comments-container-{{ post.id }}"> - {% for comment in comments %} - <a name="{{ comment.id }}"></a> - <div class="comment{% if not comment.top_scorer %} not_top_scorer{% endif %}" id="comment-{{comment.id}}"> - <div id="post-{{ comment.id }}-score" class="comment-score">{% if comment.score %}{{ comment.score }}{% endif %}</div> - <div class="comment-text">{{ comment.comment }}</div> - <div class="comment-info" id="comment-{{comment.id}}-info"> - {% if comment.can_like %} - <a id="post-{{ comment.id }}-upvote" href="{% url like_comment id=comment.id %}" - title="{% trans "I like this comment (click again to cancel)" %}" class="ajax-command comment-like{% if comment.likes %} on{% endif %}" - rel="nofollow"> </a> - {% endif %} - {% if comment.can_edit %} - <a id="comment-{{ comment.id }}-edit" href="{% url node_markdown id=comment.id %}" title="{% trans "Edit comment" %}" - class="comment-edit" rel="nofollow"> </a> - {% endif %} - {% if comment.can_delete %} - <a id="comment-{{ comment.id }}-delete" href="{% url delete_comment id=comment.id %}" title="{% trans "Delete comment" %}" - class="ajax-command comment-delete confirm" rel="nofollow"> </a> - {% endif %} - {% if comment.can_convert %} - <a rel="nofollow" id="comment-{{ comment.id }}-convert" href="{% url convert_comment id=comment.id %}" title="{% trans "Convert comment to answer" %}" - class="ajax-command comment-convert confirm" rel="nofollow"> </a> - <a rel="nofollow" id="comment-{{ comment.id }}-convert-to-question" href="{% url convert_to_question id=comment.id %}?node_type=comment" title="{% trans "Convert comment to question" %}" - class="comment-convert-to-question" rel="nofollow"> </a> - {% endif %} - - {% if comment.additional_controls %} - {{ comment.additional_controls }} - {% endif %} - - <span class="comment-age">({% diff_date comment.added_at %})</span> - <a class="comment-user userinfo" href="{{comment.user.get_profile_url}}">{{comment.user.decorated_name}}</a> - {% if show_gravatar %}{% gravatar comment.user 18 %}{% endif %} - </div> - </div> - {% endfor %} -</div> -<div id="comment-tools-{{ post.id }}" class="comment-tools"> - {% ifnotequal showing total %} - <span class="comments-showing"> - {% blocktrans %}showing {{ showing }} of {{ total }}{% endblocktrans %} - </span> - <a href="#" class="show-all-comments-link">{% blocktrans %}show {{ more_comments_count }} more comments{% endblocktrans %}</a> - {% endifnotequal %} - {% if can_comment %} - <a href="#" class="add-comment-link">{% trans "add new comment" %}</a> - {% endif %} -</div> - -{% if not show_latest_comments_first %}{% include "node/comment_skeleton.html" %}{% endif %} diff --git a/forum/skins/light/templates/node/.svn/text-base/contributors_info.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/contributors_info.html.svn-base deleted file mode 100755 index 28bf49baa4a32cecd15ebb1ddc3283c01025e42f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/contributors_info.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% load extra_tags i18n %} -<div class='post-update-info post-update-info-user'> - <p style="line-height:12px;"> - {{ node_verb }} - <strong>{% diff_date node.added_at %}</strong> - </p> - {% gravatar node.author 32 %} - <p><a {% if node.author.is_suspended %}class="suspended-user" {% endif %}href="{{ node.author.get_profile_url }}">{{ node.author.decorated_name }}</a><br/> - {% get_score_badge node.author %}<br /> - {% get_accept_rate node.author %}</p> -</div> -{% if node.last_edited %} - <div class='post-update-info post-update-info-edited'> - <p style="line-height:12px;"> - <a href="{{ node.get_revisions_url }}"> - {{ node.last_edited.verb }} - <strong>{% diff_date node.last_edited.at %}</strong> - </a> - </p> - {% ifnotequal node.author node.last_edited.by %} - {% gravatar node.last_edited.by 32 %} - <p><a {% if node.last_edited.by.is_suspended %}class="suspended-user" {% endif %}href="{{ node.last_edited.by.get_profile_url }}">{{ node.last_edited.by.decorated_name }}</a><br/> - {% get_score_badge node.last_edited.by %}</p> - {% endifnotequal %} - </div> -{% endif %} diff --git a/forum/skins/light/templates/node/.svn/text-base/convert_to_comment.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/convert_to_comment.html.svn-base deleted file mode 100755 index cbaa4cd980f0e6e3de6580d951b75abc3b545383..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/convert_to_comment.html.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -{% load i18n %} - -<div> - <p>{% trans "Place the comment under:" %}</p> - <select name="under"> - {% for id, descr in nodes %} - <option value="{{ id }}">{{ descr }}</option> - {% endfor %} - </select> -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/convert_to_question.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/convert_to_question.html.svn-base deleted file mode 100755 index 3656c4bf4d51cd6219025dcaac711f5139c60698..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/convert_to_question.html.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -{% extends "question_edit.html" %} -{% load i18n %} -{% block title %}{% trans "Convert to question" %}{% endblock %} -{% block edittype %}{% trans "Convert to question" %}{% endblock %} diff --git a/forum/skins/light/templates/node/.svn/text-base/favorite_mark.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/favorite_mark.html.svn-base deleted file mode 100755 index 6cfaac9ce0dfe67cc6602bb6398f7fff9bfa332e..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/favorite_mark.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n %} - -<a id="favorite-mark" title="{% trans "mark/unmark this question as favorite (click again to cancel)" %}" - class="ajax-command favorite-mark {% if favorited %} on{% endif %}" - href="{% url mark_favorite id=question.id %}" rel="nofollow"> </a> -<div id="favorite-count" class="favorite-count"> - {% if favorite_count %}{{ favorite_count }}{% endif %} -</div> diff --git a/forum/skins/light/templates/node/.svn/text-base/flagged_item.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/flagged_item.html.svn-base deleted file mode 100755 index b22c48bbf6a09aeb300760abdc0e3060cf9963b2..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/flagged_item.html.svn-base +++ /dev/null @@ -1,6 +0,0 @@ -{% load extra_tags %} -<div class='post-update-info'> - {{ action.describe|safe }} - at - {{ action.action_date }} -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/permanent_link.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/permanent_link.html.svn-base deleted file mode 100755 index 194f4116728f01242fe09cc393a61a35b1ec2fc2..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/permanent_link.html.svn-base +++ /dev/null @@ -1,53 +0,0 @@ -{% load i18n extra_tags %} - -<p> -{% blocktrans %} -Would you like to copy the permanent link to your clipboard? -{% endblocktrans %} -</p> - -{% spaceless %} -<p><label for="permanent_link_url" style="font-size: 13px;">{% trans "Permanent link" %}:</label></p> -<p><textarea id="permanent_link_url" name="permanent_link_url" style="font-size: 12px;" readonly="readonly">{{ url }}</textarea></p> -{% endspaceless %} - -<script type="text/javascript" src="{% media "/media/js/ZeroClipboard.js" %}"></script> -<script type="text/javascript"> -$(document).ready(function() { - // We highlight the content of the text field on click event - $('#permanent_link_url').click(function() { - $(this).select(); - }); - - // We use ZeroClipboard to copy the URL - ZeroClipboard.setMoviePath('{% media '/media/js/ZeroClipboard.swf' %}'); - - // Create the Client Clip - var clip = new ZeroClipboard.Client(); - - // Create the glue when on mouse-over event - $('#copy_clip_button').live('mouseover', function() { - // Take the URL from the input - clip.setText($('#permanent_link_url').val()); - - // Create the glue - clip.glue('copy_clip_button'); - - // Simulate click on the OK button when we hear a moseDown event on the glue - clip.addEventListener('mouseDown', function() { - $('#copy_clip_button').click(); - }); - - // Reposition the clip - clip.addEventListener('complete', function() { - clip.reposition(); - }); - }); - - // Hide the clip if someone clicks on the cancel button - $('.dialog-no').live('click', function() { - clip.hide(); - }); - -}); -</script> diff --git a/forum/skins/light/templates/node/.svn/text-base/post_controls.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/post_controls.html.svn-base deleted file mode 100755 index bbe1e22effa35c85664a322183ebbc9bc706b776..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/post_controls.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n %} -{% spaceless %} -{% for control in controls %} - <span class="action-link"> - <a rel="nofollow" title="{{ control.title }}" class="{{ control.classes }}" href="{{ control.url }}">{{ control.text }}</a> - </span> - {% ifnotequal controls|last control %} - <span class="action-link-separator">|</span> - {% endifnotequal %} -{% endfor %} -{% if menu|length %} - <span class="action-link-separator">|</span> - <span id="node-{{ post.id }}-menu" class="context-menu"> - <span id="node-{{ post.id }}-menu-trigger" class="action-link context-menu-trigger">{% trans "more" %} ▼</span> - <ul id="node-{{ post.id }}-menu-dropdown" class="context-menu-dropdown"> - {% for item in menu %} - <li class="item"><a rel="nofollow" class="{{ item.classes }}" href="{{ item.url }}" title="{{ item.title }}" >{{ item.text }}</a></li> - {% endfor %} - </ul> - </span> -{% endif %} -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/report.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/report.html.svn-base deleted file mode 100755 index 1635d7d6726f4dedbea54610a06c714685ed74e7..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/report.html.svn-base +++ /dev/null @@ -1,14 +0,0 @@ -{% load i18n %} - -{% trans "Please select a reason bellow or use the text box to input your own reason." %} -<select class="prompt-examples"> - {% for type in types %} - <option value="{{ type }}">{{ type }}</option> - {% endfor %} -</select> -<textarea name="prompt">{{ types|first }}</textarea> -<script> -$('.prompt-examples').change(function() { - $('textarea[name=prompt]').val($(this).val()) -}) -</script> \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/reviser_info.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/reviser_info.html.svn-base deleted file mode 100755 index ac3df282bc898979b5e7bffeffaf06697d82728d..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/reviser_info.html.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -{% load extra_tags %} -<div class='post-update-info'> - <p style="line-height:12px;"> - <strong>{% diff_date revision.revised_at %}</strong> - </p> - <a href="{{ revision.author.get_profile_url }}">{% gravatar revision.author 32 %}</a> - <p><a href="{{ revision.author.get_profile_url }}">{{ revision.author.username }}</a><br/> - {% get_score_badge revision.author %}</p> -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/revision.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/revision.html.svn-base deleted file mode 100755 index d6ac677509e109d3503ac56af1dada9c956c18b3..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/revision.html.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -{% spaceless %} - {% if title %}<h1>{{ title }}</h1>{% endif %} - <div class="text">{{ html }}</div> - {% if tags %} - <div class="tags"> - {% for tag in tags %} - <a class="post-tag tag-link-{{ tag }}">{{ tag }}</a> - {% endfor %} - </div> - {% endif %} -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/vote_buttons.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/vote_buttons.html.svn-base deleted file mode 100755 index 9b95d607bf7b49232c66677c7b8fc72b3a2867ff..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/vote_buttons.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load i18n %} - -<a id="post-{{ post.id }}-upvote" title="{% trans "I like this post (click again to cancel)" %}" - class="ajax-command post-vote up {% ifequal user_vote "up" %} on{% endifequal %}" - href="{% url vote_post id=post.id,vote_type='up' %}" rel="nofollow"> </a> -<div id="post-{{ post.id }}-score" class="post-score" - title="{% trans "current number of votes" %}"> - {{ post.score }} -</div> -<a id="post-{{ post.id }}-downvote" title="{% trans "I dont like this post (click again to cancel)" %}" - class="ajax-command post-vote down{% ifequal user_vote "down" %} on{% endifequal %}" - href="{% url vote_post id=post.id,vote_type='down' %}" rel="nofollow"> </a> \ No newline at end of file diff --git a/forum/skins/light/templates/node/.svn/text-base/wiki_symbol.html.svn-base b/forum/skins/light/templates/node/.svn/text-base/wiki_symbol.html.svn-base deleted file mode 100755 index 3146a975cf679e603021b3bfd93a78575f707a8e..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/node/.svn/text-base/wiki_symbol.html.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -{% load i18n extra_tags %} -{% spaceless %} -{% if is_wiki %} - <div class="community-wiki"> - {% blocktrans %}This {{ post_type }} is marked "community wiki".{% endblocktrans %} - {% if can_edit %} - <br />{% blocktrans %}Feel free to <a href="{{ edit_url }}">edit it</a>.{% endblocktrans %} - {% endif %} - </div> -{% endif %} -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/light/templates/notifications/.svn/all-wcprops b/forum/skins/light/templates/notifications/.svn/all-wcprops deleted file mode 100755 index a2efa1840c0e5336304a26d1bb82f29972ce8bf3..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/all-wcprops +++ /dev/null @@ -1,59 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/notifications -END -answeraccepted.html -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/985/osqa/trunk/forum/skins/default/templates/notifications/answeraccepted.html -END -newanswer.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newanswer.html -END -base.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/notifications/base.html -END -newcomment.html -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newcomment.html -END -base_text.html -K 25 -svn:wc:ra_dav:version-url -V 92 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/notifications/base_text.html -END -digest.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/978/osqa/trunk/forum/skins/default/templates/notifications/digest.html -END -newmember.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newmember.html -END -newquestion.html -K 25 -svn:wc:ra_dav:version-url -V 93 -/svnroot/!svn/ver/980/osqa/trunk/forum/skins/default/templates/notifications/newquestion.html -END -feedback.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/978/osqa/trunk/forum/skins/default/templates/notifications/feedback.html -END diff --git a/forum/skins/light/templates/notifications/.svn/entries b/forum/skins/light/templates/notifications/.svn/entries deleted file mode 100755 index b050574c3bfa6cb8adf42037f435a4ea014f2098..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/entries +++ /dev/null @@ -1,334 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/notifications -http://svn.osqa.net/svnroot - - - -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -base_text.html -file - - - - -2012-07-01T12:37:36.229376Z -0335514f2d3c7fde925a47140798e52a -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - - - - - - - - -449 - -digest.html -file - - - - -2012-07-01T12:37:36.233376Z -7c4b34fc12f8cdaaeae753dd0d589364 -2011-04-13T22:14:14.670858Z -978 -jordan - - - - - - - - - - - - - - - - - - - - - -5352 - -newmember.html -file - - - - -2012-07-01T12:37:36.233376Z -5d85220d6ca575208054879925fa6e7d -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1381 - -newquestion.html -file - - - - -2012-07-01T12:37:36.233376Z -e7009ee79bb26c1adf9bab13007d2fef -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1947 - -feedback.html -file - - - - -2012-07-01T12:37:36.233376Z -67f714ce025b048df60d383e2be15236 -2011-04-13T22:14:14.670858Z -978 -jordan - - - - - - - - - - - - - - - - - - - - - -1055 - -answeraccepted.html -file - - - - -2012-07-01T12:37:36.233376Z -9d409e1930d99017df36d796725c3440 -2011-04-14T21:51:36.682181Z -985 -jordan - - - - - - - - - - - - - - - - - - - - - -1338 - -newanswer.html -file - - - - -2012-07-01T12:37:36.233376Z -211103ae3b3e748983032c8f12973fbb -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1560 - -base.html -file - - - - -2012-07-01T12:37:36.233376Z -e99fc8b729362264ef6d8cc201671eae -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - - - - - - - - -1561 - -newcomment.html -file - - - - -2012-07-01T12:37:36.229376Z -bd0968bd3b39644dd4702ff41e007379 -2011-04-13T22:32:02.209464Z -980 -jordan - - - - - - - - - - - - - - - - - - - - - -1906 - diff --git a/forum/skins/light/templates/notifications/.svn/text-base/answeraccepted.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/answeraccepted.html.svn-base deleted file mode 100755 index 5157bd0addbac8e92d2aa775bac33d8ae50f7992..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/answeraccepted.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - answer_author = html.mark_safe(smart_str(answer.author.username)) - question = answer.question - question_title = html.mark_safe(smart_str(question.title)) - accepted_by = html.mark_safe(smart_str(answer.nstate.accepted.by.username)) - accepted_by_link = html.objlink(answer.nstate.accepted.by, style=settings.EMAIL_ANCHOR_STYLE) - answer_author_link = html.objlink(answer.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} An answer to: {{ question_title }} has been accepted{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ accepted_by_link }} has just accepted {{ answer_author_link }}'s answer on his question - {{ question_link }}. - {% endblocktrans %} - </p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ accepted_by }} has just accepted {{ answer_author }}'s answer on his question -"{{ question_title }}". -{% endblocktrans %} -{% endtextcontent %} - -{% endemail %} diff --git a/forum/skins/light/templates/notifications/.svn/text-base/base.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/base.html.svn-base deleted file mode 100755 index 320b16412f9ef363cfe2f31159f66827873c42eb..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/base.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% load extra_filters extra_tags i18n email_tags %} - -{% declare %} - p_style = smart_str(settings.EMAIL_PARAGRAPH_STYLE) - a_style = smart_str(settings.EMAIL_ANCHOR_STYLE) - hr_style = "color:#ccc;border:0;height:1px;background-color:#ccc;margin-bottom:20px;" - small_style = "color:#333333;font-family:'Lucida Grande', Trebuchet, Helvetica, sans-serif;font-size:12px;" - table_style = "border:20px %s solid;margin:10px auto 10px auto;width:750px;text-align:left;" % settings.EMAIL_BORDER_COLOR -{% enddeclare %} -<html> -<head> -<base href="{{ settings.APP_URL }}"> -</head> -<body style="margin:0;"> -<center> -<table style="{{ table_style }}"> -<tbody><tr><td style="padding:20px;"> -<a href="{{ settings.APP_URL }}" style="border: 0;"><img src="{{ settings.APP_URL }}{{ settings.APP_LOGO }}" alt="{{settings.APP_TITLE}}" border="0"/></a> -<hr style="{{ hr_style }}" /> -{% if not exclude_greeting %} -<p style="{{ p_style }}">{% trans "Hello" %} {{ recipient.username }},</p> -{% endif %} -{% block content %}{% endblock%} -<p style="{{ p_style }}">{% trans "Thanks" %},<br />{{settings.APP_SHORT_NAME}}</p> -{% if not exclude_finetune %} -<p style="{{ p_style }}">{% trans "P.S. You can always fine-tune which notifications you receive" %} -<a href="{{ settings.APP_URL }}{{ recipient.get_user_subscriptions_url }}" style="{{ a_style }}">{% trans "here" %}</a>. -{% endif %} -</p> -<hr style="{{ hr_style }}" /> -<p style="{{ p_style }}"><small style="{{ small_style }}">{{ settings.EMAIL_FOOTER_TEXT }}</small></p> -</td></tr></tbody></table> -</center> -</body> -</html> diff --git a/forum/skins/light/templates/notifications/.svn/text-base/base_text.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/base_text.html.svn-base deleted file mode 100755 index ed2ebdf70daf10953de39f4866de37d37a982621..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/base_text.html.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -{% load extra_filters extra_tags i18n email_tags %} - -{% if not exclude_greeting %} -{% trans "Hello" %} {{ recipient.username }}, -{% endif %} - -{% block content %}{% endblock%} - -{% trans "Thanks" %}, -{{settings.APP_SHORT_NAME}} - -{% if not exclude_finetune %} -{% trans "P.S. You can always fine-tune which notifications you receive here:" %} -{{ settings.APP_URL }}{{ recipient.get_user_subscriptions_url }} -{% endif %} - -{{ settings.EMAIL_FOOTER_TEXT }} \ No newline at end of file diff --git a/forum/skins/light/templates/notifications/.svn/text-base/digest.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/digest.html.svn-base deleted file mode 100755 index 91757b86f4fe22af07b3fa4386bbbac6e03f7ebb..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/digest.html.svn-base +++ /dev/null @@ -1,146 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_unicode(settings.APP_SHORT_NAME) - app_url = settings.APP_URL - - new_member_links = html.mark_safe(smart_unicode(", ".join([html.objlink(u, style=settings.EMAIL_ANCHOR_STYLE) for u in new_members]))) - new_question_count = digest.count - -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Daily digest{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - {% declare %} - new_questions_link = html.hyperlink(smart_unicode(app_url) + reverse('questions') + '?sort=' + _('latest'), smart_unicode(_('new questions')), style=a_style) - user_questions = digest.get_for_user(recipient) - subscribed_url = '%s%s' % (app_url, recipient.get_subscribed_url()) - subscriptions_link = html.hyperlink(subscribed_url, _('subscriptions'), style=a_style) - {% enddeclare %} - - <p style="{{ p_style }}"> - {% blocktrans %} - This is a brief of what's going on the {{ app_name }} community since our last update. - {% endblocktrans %} - </p> - - {% if new_member_count %} - <p style="{{ p_style }}"> - {% if show_all_users %} - {% blocktrans %} - There are {{ new_member_count }} new members in the community. {{ new_member_links }} were the most active so far. - {% endblocktrans %} - {% else %} - {% blocktrans %} - {{ new_member_links }} have joined the {{ app_name }} community. - {% endblocktrans %} - {% endif %} - {% endif %} - </p> - - {% if new_question_count %} - - <p style="{{ p_style }}"> - {% blocktrans %} - {{ new_question_count }} {{ new_questions_link }} were posted since our last update. - {% endblocktrans %} - </p> - - {% if user_questions.interesting %} - <p style="{{ p_style }}"> - {% trans "We think you might like the following questions:" %} - </p> - <ul> - {% for q in user_questions.interesting %} - <li> - <a style="{{ a_style }}" href="{{ app_url }}{{ q.get_absolute_url }}">{{ q.title }}</a> - </li> - {% endfor %} - </ul> - {% endif %} - - {% if user_questions.may_help %} - <p style="{{ p_style }}"> - {% trans "These new questions didn't get many attention from the community, but we think you may be able to help:" %} - </p> - <ul> - {% for q in user_questions.may_help %} - <li> - <a style="{{ a_style }}" href="{{ app_url }}{{ q.get_absolute_url }}">{{ q.title }}</a> - </li> - {% endfor %} - </ul> - - {% if user_questions.subscriptions %} - <p style="{{ p_style }}"> - {% blocktrans %}Meanwhile, some of your {{ subscriptions_link }} have new updates since you last visited them:{% endblocktrans %} - </p> - <ul> - {% for q in user_questions.subscriptions %} - <li> - <a style="{{ a_style }}" href="{{ app_url }}{{ q.get_absolute_url }}">{{ q.title }}</a> - </li> - {% endfor %} - </ul> - {% endif %} - - {% endif %} - - {% endif %} - - {% if recipient.is_superuser %} - {% declare %} - flagged_url = html.hyperlink(smart_unicode(app_url + reverse('admin_flagged_posts')), smart_unicode(str(flagged_count) + ' ' + _('posts')), style=a_style) - {% enddeclare %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ flagged_url }} have been marked as flagged. - {% endblocktrans %} - </p> - {% endif %} - - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}This is a brief of what's going on the {{ app_name }} community since our last update.{% endblocktrans %} - -{% if new_member_count %} -{% if show_all_users %} -{% blocktrans %}There are {{ new_member_count }} new members in the community. {{ new_member_links }} were the most active so far.{% endblocktrans %} -{% else %} -{% blocktrans %}{{ new_member_links }} have joined the {{ app_name }} community.{% endblocktrans %} -{% endif %} -{% endif %} - -{% if new_question_count %} -{% blocktrans %}{{ new_question_count }} new questions were posted since our last update.{% endblocktrans %} - -{% if user_questions.interesting %}{% trans "We think you might like the following questions:" %} -{% for q in user_questions.interesting %} -* {{ q.title }} -{% endfor %} -{% endif %} - -{% if user_questions.may_help %} -{% trans "These new questions didn't get many attention from the community, but we think you may be able to help:" %} -{% for q in user_questions.may_help %} -* {{ q.title }} -{% endfor %} - -{% if user_questions.subscriptions %} -{% blocktrans %}Meanwhile, some of your subscriptions have new updates since you last visited them:{% endblocktrans %} -{% for q in user_questions.subscriptions %} -* {{ q.title }} -{% endfor %} -{% endif %} -{% endif %} -{% endif %} - -{% if recipient.is_superuser %} -{% blocktrans %}{{ flagged_count }} posts have been marked as flagged.{% endblocktrans %} -{% endif %} -{% endtextcontent %} -{% endemail %} diff --git a/forum/skins/light/templates/notifications/.svn/text-base/feedback.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/feedback.html.svn-base deleted file mode 100755 index bb70300e3973d15a0c472bbe0c28dde82500a322..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/feedback.html.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = smart_str(settings.EMAIL_SUBJECT_PREFIX) - app_name = smart_str(settings.APP_SHORT_NAME) - - exclude_greeting = True - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Feedback message from {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% trans "Sender" %}:{% if name %}{{ name }}{% else %}{% trans "anonymous" %}{% endif %}<br /> - {% trans "email" %}: {{ email }} - <br/> - ip: {{ ip }} - </p> - - <blockquote> - {% trans "Message body:" %} {{ message }} - </blockquote> - - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% trans "Sender" %}: {% if name %}{{ name|safe }}{% else %}{% trans "anonymous" %}{% endif %} -{% trans "email" %}: {{ email|safe }} -ip: {{ ip }} - -{% trans "Message body:" %} {{ message|safe }} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/notifications/.svn/text-base/newanswer.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/newanswer.html.svn-base deleted file mode 100755 index 1f3140ce4851c26a525b60849e87b6d8dae33710..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/newanswer.html.svn-base +++ /dev/null @@ -1,44 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_str(settings.APP_SHORT_NAME) - safe_app_name = html.mark_safe(smart_str(settings.APP_SHORT_NAME)) - answer_author = html.mark_safe(smart_str(answer.author.username)) - question = answer.question - question_title = html.mark_safe(smart_str(question.title)) - safe_body = html.html2text(smart_str(answer.html)) - author_link = html.objlink(answer.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} New answer to: {{ question_title }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ author_link }} has just posted a new answer on {{ app_name }} to the question - {{ question_link }}: - {% endblocktrans %} - </p> - - <blockquote> - {{ answer.html|safe }} - </blockquote> - - <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ answer_author }} has just posted a new answer on {{ safe_app_name }} to the question -"{{ question_title }}": -{% endblocktrans %} -{{ safe_body }} - -{% trans "Don't forget to come over and cast your vote." %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/notifications/.svn/text-base/newcomment.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/newcomment.html.svn-base deleted file mode 100755 index b72b86722573906a965e9a4cb04fff76b541196f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/newcomment.html.svn-base +++ /dev/null @@ -1,46 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - post = comment.parent - question = post.question and post.question or post - post_author = smart_str(post.author.username) - safe_post_author = html.mark_safe(smart_str(post.author.username)) - comment_author = html.mark_safe(smart_str(comment.author)) - question_title = html.mark_safe(smart_str(question.title)) - safe_body = html.html2text(smart_str(comment.comment)) - author_link = html.objlink(comment.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} New comment on: {{ question_title }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %}{{ author_link }} has just posted a comment on {% endblocktrans %} - {% ifnotequal post question %} - {% blocktrans %}the answer posted by {{ post_author }} to {% endblocktrans %} - {% endifnotequal %} - {% blocktrans %}the question {{ question_link }}{% endblocktrans %} - </p> - - <blockquote> - {{ comment.comment }} - </blockquote> - - <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %}{{ comment_author }} has just posted a comment on {% endblocktrans %} -{% ifnotequal post question %} -{% blocktrans %}the answer posted by {{ safe_post_author }} to {% endblocktrans %} -{% endifnotequal %} -{% blocktrans %}the question "{{ question_title }}"{% endblocktrans %} -{{ safe_body }} - -{% trans "Don't forget to come over and cast your vote." %} -{% endtextcontent %} - -{% endemail %} diff --git a/forum/skins/light/templates/notifications/.svn/text-base/newmember.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/newmember.html.svn-base deleted file mode 100755 index aa5d5ec2bf949f6d5e5e35bdaf7b911c42fbab84..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/newmember.html.svn-base +++ /dev/null @@ -1,34 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_str(settings.APP_SHORT_NAME) - safe_app_name = html.mark_safe(smart_str(settings.APP_SHORT_NAME)) - app_url = smart_str(settings.APP_URL) - newmember_name = smart_str(newmember.username) - safe_newmember_name = html.mark_safe(smart_str(newmember.username)) - newmember_url = smart_str(newmember.get_profile_url()) - newmember_link = html.objlink(newmember, style=settings.EMAIL_ANCHOR_STYLE) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} {{ safe_newmember_name }} is a new member on {{ safe_app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ newmember_link }} has just joined {{ app_name }}. - View <a style="{{ a_style }}" href="{{ app_url }}{{ newmember_url }}">{{ newmember_name }}'s profile</a>. - {% endblocktrans %} - </p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ safe_newmember_name }} has just joined {{ safe_app_name }}. You can visit {{ safe_newmember_name }}'s profile using the following url: -{{ app_url }}{{ newmember_url }} -{% endblocktrans %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/notifications/.svn/text-base/newquestion.html.svn-base b/forum/skins/light/templates/notifications/.svn/text-base/newquestion.html.svn-base deleted file mode 100755 index 1f48a380a7e3c76153de9708515be3132a4db8b2..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/notifications/.svn/text-base/newquestion.html.svn-base +++ /dev/null @@ -1,47 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX)) - app_name = smart_str(settings.APP_SHORT_NAME) - safe_app_name = html.mark_safe(smart_str(settings.APP_SHORT_NAME)) - question_author = html.mark_safe(smart_str(question.author.username)) - question_url = smart_str(settings.APP_URL + question.get_absolute_url()) - question_title = html.mark_safe(smart_str(question.title)) - question_tags = html.mark_safe(smart_str(question.tagnames)) - safe_body = html.html2text(smart_str(question.html)) - author_link = html.objlink(question.author, style=settings.EMAIL_ANCHOR_STYLE) - question_link = html.objlink(question, style=settings.EMAIL_ANCHOR_STYLE) - tag_links = html.mark_safe(smart_str(" ".join([html.objlink(t, style=settings.EMAIL_ANCHOR_STYLE) for t in question.tags.all()]))) -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} New question: {{ question_title }} on {{ safe_app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - <p style="{{ p_style }}"> - {% blocktrans %} - {{ author_link }} has just posted a new question on {{ app_name }}, entitled - {{ question_link }} - and tagged "<em>{{ tag_links }}</em>". Here's what it says: - {% endblocktrans %} - </p> - - <blockquote> - {{ question.html|safe }} - </blockquote> - - <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p> - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} -{% blocktrans %} -{{ question_author }} has just posted a new question on {{ safe_app_name }}, entitled -"{{ question_title }}" and tagged {{ question_tags }}: -{% endblocktrans %} -{{ safe_body }} - -{% trans "Don't forget to come over and cast your vote." %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/osqaadmin/.svn/all-wcprops b/forum/skins/light/templates/osqaadmin/.svn/all-wcprops deleted file mode 100755 index 7aca1bdd4536308d1108f54de13b892fcbf488f4..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/all-wcprops +++ /dev/null @@ -1,101 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1223/osqa/trunk/forum/skins/default/templates/osqaadmin -END -maintenance.html -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/maintenance.html -END -dashboard.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/571/osqa/trunk/forum/skins/default/templates/osqaadmin/dashboard.html -END -statistics.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/254/osqa/trunk/forum/skins/default/templates/osqaadmin/statistics.html -END -set.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/set.html -END -moderation.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/moderation.html -END -graph.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/254/osqa/trunk/forum/skins/default/templates/osqaadmin/graph.html -END -createuser.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/createuser.html -END -test_email_settings.html -K 25 -svn:wc:ra_dav:version-url -V 97 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/templates/osqaadmin/test_email_settings.html -END -static_pages.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1074/osqa/trunk/forum/skins/default/templates/osqaadmin/static_pages.html -END -index.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/234/osqa/trunk/forum/skins/default/templates/osqaadmin/index.html -END -djstyle_base.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/1223/osqa/trunk/forum/skins/default/templates/osqaadmin/djstyle_base.html -END -base.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/1223/osqa/trunk/forum/skins/default/templates/osqaadmin/base.html -END -nodeman.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/1061/osqa/trunk/forum/skins/default/templates/osqaadmin/nodeman.html -END -mail_test.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/796/osqa/trunk/forum/skins/default/templates/osqaadmin/mail_test.html -END -flagged_posts.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/298/osqa/trunk/forum/skins/default/templates/osqaadmin/flagged_posts.html -END -edit_page.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/osqaadmin/edit_page.html -END diff --git a/forum/skins/light/templates/osqaadmin/.svn/dir-prop-base b/forum/skins/light/templates/osqaadmin/.svn/dir-prop-base deleted file mode 100755 index 5d2def4d900073d4bfa79d0216ca66e1b70fe6a6..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/dir-prop-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 390 -/osqa/branches/cacheimp/forum/skins/default/templates/osqaadmin:874-939 -/osqa/branches/carpenter/forum/skins/default/templates/osqaadmin:691-725 -/osqa/branches/hernani/forum/skins/default/templates/osqaadmin:772-832 -/osqa/branches/jambazov/forum/skins/default/templates/osqaadmin:675-831 -/osqa/branches/notification-config/forum/skins/default/templates/osqaadmin:693-793,809,811-812,825-827 -END diff --git a/forum/skins/light/templates/osqaadmin/.svn/entries b/forum/skins/light/templates/osqaadmin/.svn/entries deleted file mode 100755 index bebe891370bfeae5e1cb181a6813746c3dc1f20a..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/entries +++ /dev/null @@ -1,572 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/osqaadmin -http://svn.osqa.net/svnroot - - - -2012-01-25T11:35:23.115526Z -1223 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -test_email_settings.html -file - - - - -2012-07-01T12:37:36.273376Z -485b7b5a3b04043acc371da57855f27c -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -545 - -static_pages.html -file - - - - -2012-07-01T12:37:36.273376Z -bc4f9208a10790ae14e2876e865fe4d6 -2011-06-24T13:41:57.766668Z -1074 -jordan - - - - - - - - - - - - - - - - - - - - - -1395 - -index.html -file - - - - -2012-07-01T12:37:36.273376Z -df9fe7603b99c3920add4a1c397bd5b2 -2010-05-12T19:34:52.959194Z -234 -rick - - - - - - - - - - - - - - - - - - - - - -4119 - -djstyle_base.html -file - - - - -2012-07-01T12:37:36.273376Z -3b4a605fe78a8eadd9168c4b27f9d23a -2012-01-25T11:35:23.115526Z -1223 -jordan - - - - - - - - - - - - - - - - - - - - - -8611 - -base.html -file - - - - -2012-07-01T12:37:36.273376Z -9da9fa2a45e9846c6eb1c0621a25c21f -2012-01-25T11:35:23.115526Z -1223 -jordan - - - - - - - - - - - - - - - - - - - - - -1853 - -nodeman.html -file - - - - -2012-07-01T12:37:36.269376Z -1e099b9cc99f9927438713286b967ec2 -2011-06-10T15:04:48.557924Z -1061 -jordan - - - - - - - - - - - - - - - - - - - - - -24458 - -mail_test.html -file - - - - -2012-07-01T12:37:36.269376Z -df16c08da5b0d6f0d643dffd8e4960e9 -2011-03-07T22:10:47.786740Z -796 -jordan - - - - - - - - - - - - - - - - - - - - - -637 - -flagged_posts.html -file - - - - -2012-07-01T12:37:36.269376Z -c8ea7362559d925cd030f3cdb26f27bf -2010-05-18T15:58:10.566270Z -298 -qw3rty - - - - - - - - - - - - - - - - - - - - - -836 - -edit_page.html -file - - - - -2012-07-01T12:37:36.269376Z -09ba0d93e0d6e918bdf0d52b110fe407 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1420 - -maintenance.html -file - - - - -2012-07-01T12:37:36.269376Z -7a44affe25f49f25316363e6d42e6ec3 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1013 - -dashboard.html -file - - - - -2012-07-01T12:37:36.269376Z -a5fe88cd76a06674a746487bb2dfe3e9 -2010-08-26T13:21:21.792855Z -571 -hernani - - - - - - - - - - - - - - - - - - - - - -3800 - -statistics.html -file - - - - -2012-07-01T12:37:36.269376Z -95a6650475a9ccc594aa31ddfa780b13 -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - - - - - - - - -1108 - -set.html -file - - - - -2012-07-01T12:37:36.269376Z -12e8c5fbf88f454f8f78b9ac47ce20a0 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -1280 - -moderation.html -file - - - - -2012-07-01T12:37:36.273376Z -16d0fd8aa980c455b97f47f13b8d4f38 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -5174 - -graph.html -file - - - - -2012-07-01T12:37:36.269376Z -5bb3cc2beac980335b5709402c3e1290 -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - - - - - - - - -335 - -createuser.html -file - - - - -2012-07-01T12:37:36.273376Z -cea6a285e3cdb25675af6b7a2aad65df -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -483 - diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/base.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/base.html.svn-base deleted file mode 100755 index d27b2161afb6e184f65d6726c28174d5e05f8b93..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/base.html.svn-base +++ /dev/null @@ -1,58 +0,0 @@ -{% extends "base.html" %} - -{% load i18n extra_tags general_sidebar_tags %} - -{% block title %}{% trans "Site Administration" %}{% endblock %} - -{% block forejs %} - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/admin.css" %}"/> - <script type="text/javascript" src="{% media "/media/js/osqa.admin.js" %}"></script> - {% block adminjs %}{% endblock %} -{% endblock %} - -{% block content %} - <div class="headNormal"> - {% trans "OSQA administration area" %} - {% block subtitle %}{% endblock %} - </div> - <div id="admin_page_description"> - {% block description %}{% endblock %} - </div> - <div> - {% block admincontent %} - {% endblock %} - </div> -{% endblock %} - -{% block sidebar %} - {% if hide_navigation %} - - {% else %} - <div class="boxC"> - <a href="{% url admin_switch_interface %}?to=djstyle">{% trans "Switch to django style interface" %}</a> - <h3 class="subtitle">{% trans "Administration menu" %}</h3> - <ul> - {% for set in allsets.values %} - <li><a href="{% url admin_set set.name %}">{{ set.title }}</a></li> - {% endfor %} - - {% for set in othersets %} - <li> - <a href="{% url admin_set set.name %}">{{ set.title }}</a> - </li> - {% endfor %} - - <li><a href="{% url admin_maintenance %}">{% trans "Maintenance mode" %}</a></li> - <li><a href="{% url admin_flagged_posts %}">{% trans "Flagged Posts" %}</a></li> - {% for name,tool in tools %} - <li><a href="{% url admin_tools name %}">{{ tool }}</a></li> - {% endfor %} - </ul> - </div> - {% if markdown %} - {% markdown_help %} - {% endif %} - - {% endif %} -{% endblock %} - - diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/createuser.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/createuser.html.svn-base deleted file mode 100755 index 65c61b9103d1d2b563a807f5775679331cb1c17e..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/createuser.html.svn-base +++ /dev/null @@ -1,21 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %} - {% trans "Create User" %} -{% endblock %} -{% block description %} - {% trans "Quick creation of a new user" %} -{% endblock %} - -{% block admincontent %} - <form action="" method="POST"> - {% csrf_token %} - <table> - {{ form.as_table }} - <tr><th></th><td><input type="submit" value="{% trans "Save" %}"></td></tr> - </table> - </form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/dashboard.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/dashboard.html.svn-base deleted file mode 100755 index ec56e7808ac503d66682edee0961e5ad4f84cdb3..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/dashboard.html.svn-base +++ /dev/null @@ -1,81 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %} - {% trans "Dashboard" %} -{% endblock %} -{% block description %} - {% trans "Welcome to the OSQA administration area." %} -{% endblock %} - -{% block admincontent %} - <div class="module" style="width:49%; display: inline-block; vertical-align: top;"> - <table style="width: 100%; height: 100%;"> - <caption>{% trans "Quick statistics" %}</caption> - <tr> - <td> - {{ statistics.total_questions }} {% trans "question" %}{{ statistics.total_questions|pluralize }} ({{ statistics.questions_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_answers }} {% trans "answer" %}{{ statistics.total_answers|pluralize }} ({{ statistics.answers_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_users }} {% trans "user" %}{{ statistics.total_users|pluralize }} ({{ statistics.users_last_24 }} {% trans "joined in the last 24 hours" %}) - </td> - </tr> - </table> - </div> - <div class="module" style="width:49%; display: inline-block;"> - <table> - <caption>{%trans "Site status" %}</caption> - <tr> - <td> - {% ifequal settings_pack "bootstrap" %} - {% trans "Your site is running in bootstrap mode, click the button below to revert to defaults." %}<br /> - {% else %} - {% ifequal settings_pack "default" %} - {% trans "Your site is running in standard mode, click the button below to run in bootstrap mode." %}<br /> - {% else %} - {% trans "Your site is running with some customized settings, click the buttons below to run with defaults or in bootstrap mode" %} - {% endifequal %} - {% endifequal %} - {% ifnotequal settings_pack "default" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to revert to the defaults?" %}')) window.location='{% url admin_go_defaults %}';">{% trans "revert to defaults" %}</button> - {% endifnotequal %} - {% ifnotequal settings_pack "bootstrap" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to run bootstrap mode?" %}')) window.location='{% url admin_go_bootstrap %}';">{% trans "go bootstrap" %}</button> - {% endifnotequal %} - </td> - </tr> - <tr> - <td> - <em>"Bootstrap mode" relaxes the minimum required reputation to perform actions like voting and commenting. - This is useful to help new communities get started.</em> - </td> - </tr> - </table> - </div> - <div class="module" style="width:98%; display: inline-block;"> - <table width="100%"> - <caption>{% trans "Recent activity" %}</caption> - <tr> - <td colspan="2"> - <table id="result_list" width="100%"> - {% for activity in recent_activity.paginator.page %} - <tr class="{% cycle 'row1' 'row2' %}"><td>{% activity_item activity request.user %}</td></tr> - {% endfor %} - </table> - </td> - </tr> - </table> - <p class="paginator"> - {{ recent_activity.paginator.page_numbers }} - </p> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/djstyle_base.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/djstyle_base.html.svn-base deleted file mode 100755 index 2f771921d2267c5ab26c711797fa1d0c44229aa7..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/djstyle_base.html.svn-base +++ /dev/null @@ -1,146 +0,0 @@ -{% load extra_tags extra_filters i18n %} - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> - <link rel="stylesheet" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/base.css" type="text/css"/> - <link rel="stylesheet" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/forms.css" type="text/css"/> - <link rel="stylesheet" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/changelists.css" type="text/css"/> - <!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="{{ settings.ADMIN_MEDIA_PREFIX }}css/ie.css" /><![endif]--> - <link rel="stylesheet" type="text/css" media="screen" href="{% media "/media/style/djstyle_admin.css" %}"/> - <script src="http://www.google.com/jsapi" type="text/javascript"></script> - <script type="text/javascript"> - //<!-- - google.load("jquery", "1.3"); - //--> - </script> - <script type="text/javascript" src="{% media "/media/js/osqa.admin.js" %}"></script> - {% block adminjs %}{% endblock %} - <title>{% trans "OSQA administration area" %} - {% block subtitle %}{% endblock %}</title> -</head> -<body> -<div id="container" class="change-list"> - <div id="header"> - {% block header %} - <div id="branding"> - <h1 id="site-name">{{ settings.APP_SHORT_NAME }} - {% trans "Administration Area" %} </h1> - </div> - {% endblock %} - <div id="user-tools"> - {% trans "Welcome," %} - <strong>{{ request.user.username }}</strong>. - <a href="{% url admin_switch_interface %}?to=default">{% trans "To standard interface" %}</a> - / <a href="{% url index %}">{% trans "Back to home page" %}</a> - / <a href="{% url logout %}">{% trans "Log out" %}</a> - </div> - </div> - <div class="breadcrumbs"> - <a href="{% url index %}">{% trans "Home" %}</a> > - <a href="{% url admin_index %}">{% trans "Dashboard" %}</a> > - {% block pagename %}{% endblock %} - - {% block description %}{% endblock %} - </div> - <div id="content" class="{% if hide_navigation %}flex{% else %}colMS{% endif %}"> - <div id="content-main"> - {% autoescape off %} - {% for message in user_messages %} - <p class="admin_message">{{ message }}</p> - {% endfor %} - {% endautoescape %} - {% block admincontent %}{% endblock %} - </div> - {% if hide_navigation %} - - {% else %} - <div id="content-related"> - {% if unsaved %} - <div id="changes-box" class="module"> - <h2>{% trans "Unpublished changes" %}</h2> - <p> - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" /> - {% trans "Items marked with this icon have unpublished changes." %} - </p> - </div> - {% endif %} - <div id="basic-sets-menu" class="module"> - <h2>{% trans "Basic settings" %}</h2> - <ul> - <li><a href="{% url admin_set allsets.basic.name %}">{{ allsets.basic.title }}</a></li> - <li><a href="{% url admin_set allsets.users.name %}">{{ allsets.users.title }}</a></li> - <li><a href="{% url admin_set allsets.email.name %}">{{ allsets.email.title }}</a></li> - <li><a href="{% url admin_set allsets.paths.name %}">{{ allsets.paths.title }}</a></li> - <li><a href="{% url admin_set allsets.urls.name %}">{{ allsets.urls.title }}</a></li> - <li><a href="{% url admin_set allsets.extkeys.name %}">{{ allsets.extkeys.title }}</a></li> - </ul> - </div> - <div id="workflow-sets-menu" class="module"> - <h2>{% trans "Workflow settings" %}</h2> - <ul> - <li><a href="{% url admin_set allsets.repgain.name %}">{{ allsets.repgain.title }}</a></li> - <li><a href="{% url admin_set allsets.minrep.name %}">{{ allsets.minrep.title }}</a></li> - <li><a href="{% url admin_set allsets.voting.name %}">{{ allsets.voting.title }}</a></li> - <li><a href="{% url admin_set allsets.accept.name %}">{{ allsets.accept.title }}</a></li> - <li><a href="{% url admin_set allsets.badges.name %}">{{ allsets.badges.title }}</a></li> - </ul> - </div> - <div id="forum-sets-menu" class="module"> - <h2>{% trans "Forum settings" %}</h2> - <ul> - <li><a href="{% url admin_set allsets.form.name %}">{{ allsets.form.title }}</a></li> - <li><a href="{% url admin_set allsets.view.name %}">{{ allsets.view.title }}</a></li> - <li><a href="{% url admin_set allsets.moderation.name %}">{{ allsets.moderation.title }}</a></li> - </ul> - </div> - <div id="pages-sets-menu" class="module"> - <h2>{% trans "Static content" %}</h2> - <ul> - <li><a href="{% url admin_static_pages %}">{% trans "Custom Pages" %}</a></li> - <li><a href="{% url admin_set allsets.about.name %}">{{ allsets.about.title }}</a></li> - <li><a href="{% url admin_set allsets.faq.name %}">{{ allsets.faq.title }}</a></li> - <li><a href="{% url admin_set allsets.sidebar.name %}">{{ allsets.sidebar.title }}</a></li> - <li> - <a href="{% url admin_set allsets.css.name %}">{{ allsets.css.title }}</a> - {% if "css"|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - <li> - <a href="{% url admin_set allsets.headandfoot.name %}">{{ allsets.headandfoot.title }}</a> - {% if "headandfoot"|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - <li> - <a href="{% url admin_set allsets.head.name %}">{{ allsets.head.title }}</a> - {% if "head"|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - </ul> - </div> - <div id="other-sets-menu" class="module"> - <h2>{% trans "Other settings" %}</h2> - <ul> - {% for set in othersets %} - <li> - <a href="{% url admin_set set.name %}">{{ set.title }}</a> - {% if set.name|contained_in:unsaved %}<img width="12" height="12" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_alert.gif" alt="{% trans "Unsaved changes" %}" />{% endif %} - </li> - {% endfor %} - </ul> - </div> - <div id="tools-menu" class="module"> - <h2>{% trans "Tools" %}</h2> - <ul> - <li><a href="{% url admin_maintenance %}">{% trans "Maintenance mode" %}</a></li> - <li><a href="{% url admin_flagged_posts %}">{% trans "Flagged Posts" %}</a></li> - {% for name,tool in tools %} - <li><a href="{% url admin_tools name %}">{{ tool }}</a></li> - {% endfor %} - </ul> - </div> - </div> - {% endif %} - </div> - <div id="footer" class="breadcumbs"> - <a href="http://www.osqa.net">OSQA</a> <span class="version">{{ settings.OSQA_VERSION }} ({{ settings.SVN_REVISION }})</span> - </div> - </div> -</body> \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/edit_page.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/edit_page.html.svn-base deleted file mode 100755 index ea7c0a98369ffc85bee30a45c145ebc9d7263974..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/edit_page.html.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -{% extends basetemplate %} - -{% load i18n extra_filters %} - -{% block subtitle %}{% trans "Editing page" %}{% endblock %} -{% block pagename %} - <a href="{% url admin_static_pages %}">{% trans "Static Pages" %}</a> > - {% if page %}{% trans "Editing page" %}{% else %}{% trans "Creating page" %}{% endif %} -{% endblock %} -{% block description %} - {% if page %}{{ page.title }}{% else %}{% trans "New page" %}{% endif %} - ({% if published %}{% trans "Published" %}{% else %}{% trans "Unpublished" %}{% endif %}) -{% endblock %} - -{% block admincontent %} - <form action="" method="post" accept-charset="utf-8"> - {% csrf_token %} - <table style="width: 100%"> - {{ form.as_table }} - <tr> - <th></th> - <td> - {% if page %} - <input id="submit" name="submit" type="submit" value="{% trans "Edit" %}" /> - {% else %} - <input id="submit" name="submit" type="submit" value="{% trans "Save" %}" /> - {% endif %} - {% if published %} - <input id="unpublish" name="unpublish" type="submit" value="{% trans "Unpublish" %}" /> - {% else %} - <input id="publish" name="publish" type="submit" value="{% trans "Publish" %}" /> - {% endif %} - </td> - </tr> - </table> - </form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/flagged_posts.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/flagged_posts.html.svn-base deleted file mode 100755 index a58d13e956d49a8e731c51cf6cd7c00c40f223ab..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/flagged_posts.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %}{% trans "Flagged Posts" %}{% endblock %} -{% block pagename %}{% trans "Flagged Posts" %}{% endblock %} -{% block description %}{% trans "This are the posts that have been flagged by users." %}{% endblock %} - -{% block admincontent %} - <div class="module" style="width:98%; display: inline-block;"> - <table width="100%"> - <caption>{% trans "Flagged Posts" %}</caption> - <tr> - <td colspan="2"> - <table width="100%"> - {% for post in flagged_posts %} - <tr><td>{% flagged_item post request.user %}</td></tr> - {% endfor %} - </table> - </td> - </tr> - </table> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/graph.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/graph.html.svn-base deleted file mode 100755 index ee84f9e131eee6d49014cd068a1b660f4e1c9155..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/graph.html.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -<div class="module" style="width:385px; height:300px; display: inline-block;"> - <table style="width: 100%; height: 100%"> - <caption>{{ graph.caption }}</caption> - <tr> - <td> - <div style="width: 100%; height: 100%" id="{{ graph.id }}"></div> - </td> - </tr> - </table> -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/index.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/index.html.svn-base deleted file mode 100755 index 30c3f65e415c24b18ca31d82d56d0f2ffbc2706e..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/index.html.svn-base +++ /dev/null @@ -1,80 +0,0 @@ -{% extends "osqaadmin/base.html" %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %} - {% trans "Dashboard" %} -{% endblock %} -{% block description %} - {% trans "Welcome to the OSQA administration area." %} -{% endblock %} - -{% block admincontent %} - <table width="100%"> - <tr> - <td width="50%" valign="top"> - <h3>{%trans "Site statistics" %}</h3> - <table> - <tr> - <td> - {{ statistics.total_questions }} {% trans "question" %}{{ statistics.total_questions|pluralize }} ({{ statistics.questions_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_answers }} {% trans "answer" %}{{ statistics.total_answers|pluralize }} ({{ statistics.answers_last_24 }} {% trans "in the last 24 hours" %}) - </td> - </tr> - <tr> - <td> - {{ statistics.total_users }} {% trans "user" %}{{ statistics.total_users|pluralize }} ({{ statistics.users_last_24 }} {% trans "joined in the last 24 hours" %}) - </td> - </tr> - </table> - </td> - <td valign="top"> - <h3>{%trans "Site status" %}</h3> - <table> - <tr> - <td> - {% ifequal settings_pack "bootstrap" %} - {% trans "Your site is running in bootstrap mode, click the button below to revert to defaults." %}<br /> - {% else %} - {% ifequal settings_pack "default" %} - {% trans "Your site is running in standard mode, click the button below to run in bootstrap mode." %}<br /> - {% else %} - {% trans "Your site is running with some customized settings, click the buttons below to run with defaults or in bootstrap mode" %} - {% endifequal %} - {% endifequal %} - {% ifnotequal settings_pack "default" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to revert to the defaults?" %}')) window.location='{% url admin_go_defaults %}';">{% trans "revert to defaults" %}</button> - {% endifnotequal %} - {% ifnotequal settings_pack "bootstrap" %} - <button onclick="if (window.confirm('{% trans "Are you sure you want to run bootstrap mode?" %}')) window.location='{% url admin_go_bootstrap %}';">{% trans "go bootstrap" %}</button> - {% endifnotequal %} - </td> - </tr> - <tr> - <td> - <em>"Bootstrap mode" relaxes the minimum required reputation to perform actions like voting and commenting. - This is useful to help new communities get started.</em> - </td> - </tr> - </table> - <h3>{%trans "Recalculate scores and reputation" %}</h3> - <button onclick="if (window.confirm('{% trans "This is a heavy operation, are you sure?" %}')) window.location='{% url admin_denormalize %}';">{% trans "Recalculate" %}</button> - </td> - </tr> - <tr> - <td colspan="2"> - <h3>{% trans "Recent activity" %}</h3> - <table width="100%"> - {% for activity in recent_activity %} - {% activity_item activity request.user %} - {% endfor %} - </table> - </td> - </tr> - </table> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/mail_test.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/mail_test.html.svn-base deleted file mode 100755 index 41bd9441bc9c4155cd2c7a63590e05e2a311598b..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/mail_test.html.svn-base +++ /dev/null @@ -1,22 +0,0 @@ -{% load i18n extra_tags email_tags %} - -{% declare %} - prefix = settings.EMAIL_SUBJECT_PREFIX - app_name = settings.APP_SHORT_NAME - - exclude_finetune = True -{% enddeclare %} - -{% email %} - {% subject %}{% blocktrans %}{{ prefix }} Your email settings are correct: {{ app_name }}{% endblocktrans %}{% endsubject %} - - {% htmlcontent notifications/base.html %} - {% trans "If you see this content your E-Mail settings are correct." %} - {% endhtmlcontent %} - -{% textcontent notifications/base_text.html %} - {% trans "If you see this content your E-Mail settings are correct." %} -{% endtextcontent %} - -{% endemail %} - diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/maintenance.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/maintenance.html.svn-base deleted file mode 100755 index 0e4a7320296e88161801d5d4bcca46ba4857aca3..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/maintenance.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} - -{% block subtitle %}{% trans "Maintenance mode" %}{% endblock %} -{% block pagename %}{% trans "Maintenance mode" %}{% endblock %} -{% block description %}{% trans "Maintainance mode allows you to close your site for maintainance, allowing only a predetermined set of ip addresses to access it normally." %}{% endblock %} - -{% block admincontent %} -<form method="POST" action=""> - {% csrf_token %} - {% if in_maintenance %} - <h1>{% trans "Your site is currently running on maintenance mode." %}</h1> - <p>{% trans "You can adjust the settings bellow" %}</p> - {% endif %} - <table> - {{ form.as_table }} - </table> - {% if in_maintenance %} - <input type="submit" name="adjust" value="{% trans "Adjust settings" %}" /> - <input type="submit" name="open" value="{% trans "Open site" %}" /> - {% else %} - <input type="submit" name="close" value="{% trans "Close for maintenance" %}" /> - {% endif %} -</form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/moderation.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/moderation.html.svn-base deleted file mode 100755 index 050f1f176aef861a6447a0c779fb091f48068243..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/moderation.html.svn-base +++ /dev/null @@ -1,102 +0,0 @@ -{% extends basetemplate %} - -{% load i18n humanize %} - -{% block subtitle %}{% trans "Moderation" %}{% endblock %} -{% block pagename %}{% trans "Moderation" %}{% endblock %} -{% block description %}{% trans "These tools allow you to search for undesired behaviours and cheating patterns." %}{% endblock %} - -{% block admincontent %} - <div class="module"> - <form action="" id="changelist" method="POST"> - {% csrf_token %} - <div class="actions"> - {% trans "Verify:" %} - <input type="text" size="3" name="limit" id="filter-limit" value="5" /> - <select name="sort" id="filter-sort"> - <option value="high-rep">{% trans "highest ranking users" %}</option> - <option value="newer">{% trans "newer users" %}</option> - <option value="older">{% trans "older users" %}</option> - <option value="ids">{% trans "users with these ids" %}</option> - </select> - <span id="filter-ids" style="display: none"> - <input type="text" name="ids" size="15" /> - <small>{% trans "(Comma separated list of user ids)" %}</small> - </span> - <input type="submit" value="{% trans "Go" %}" /> - </div> - </form> - <script type="text/javascript"> - $(function() { - $limit = $('#filter-limit'); - $sort = $('#filter-sort'); - $ids = $('#filter-ids'); - - function verify_sort() { - if ($sort.val() == "ids") { - $ids.show(); - $limit.hide(); - } else { - $ids.hide(); - $limit.show(); - } - } - - verify_sort(); - $sort.change(verify_sort); - }) - </script> - {% if cheaters %} - <table cellspacing="0" width="100%"> - <caption>{% trans "Possible cheaters" %}</caption> - {% for cheater, fakes in cheaters %} - <tr> - <td> - <div class="cheater-info"> - <p><a href="{{ cheater.get_profile_url }}">{{ cheater.username }}</a></p> - <p><b>{% trans "Email" %}</b> - {% if cheater.email_isvalid %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-yes.gif" alt="{% trans "Validated" %}" /> - {% else %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-no.gif" alt="{% trans "Not validated" %}" /> - {% endif %} - <a href="mailto: {{ cheater.email }}">{{ cheater.email }}</a></p> - <p><b>{% trans "Reputation:" %}</b> {{ cheater.reputation|intcomma }}</p> - </div> - <table cellspacing="0" width="100%"> - <thead> - <tr> - <th>{% trans "Profile" %}</th> - <th>{% trans "Email" %}</th> - <th>{% trans "Reputation" %}</th> - <th>{% trans "Affecting actions" %}</th> - <th>{% trans "Cross ips" %}</th> - <th>{% trans "Cheating score" %}</th> - </tr> - </thead> - <caption>{% trans "Possible fake accounts" %}</caption> - {% for fake in fakes %} - <tr> - <td><a href="{{ fake.get_profile_url }}">{{ fake.username }}</a></td> - <td> - {% if fake.email_isvalid %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-yes.gif" alt="{% trans "Validated" %}" /> - {% else %} - <img src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon-no.gif" alt="{% trans "Not validated" %}" /> - {% endif %} - <a href="mailto: {{ fake.email }}">{{ fake.email }}</a> - </td> - <td>{{ fake.reputation|intcomma }}</td> - <td>{{ fake.fdata.affect_count }} {% trans "out of" %} {{ fake.fdata.total_actions }} ({{ fake.fdata.action_ratio|stringformat:".2f" }}%)</td> - <td>{{ fake.fdata.cross_ip_count }} {% trans "out of" %} {{ fake.fdata.total_ip_count }} ({{ fake.fdata.cross_ip_ratio|stringformat:".2f" }}%)</td> - <td>{{ fake.fdata.fake_score|stringformat:".2f" }}</td> - </tr> - {% endfor %} - </table> - </td> - </tr> - {% endfor %} - </table> - {% endif %} - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/nodeman.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/nodeman.html.svn-base deleted file mode 100755 index ca86af5b5604ea9b8368606f5b9c0e0ae9cdf0b3..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/nodeman.html.svn-base +++ /dev/null @@ -1,518 +0,0 @@ -{% extends basetemplate %} - -{% load i18n user_tags extra_tags extra_filters %} - -{% block adminjs %} - <script type="text/javascript"> - $(function() { - var $form = $('#changelist-search'); - - $('#all-node-type-link').click(function() { - $('#type-filter-container').find('input').remove(); - $form.submit(); - }); - - $('.node-type-link').click(function() { - var link_type = $(this).attr('href').substring(1); - - if ($('#type-filter-container').find('input[value=' + link_type + ']').length == 0) { - $('#type-filter-container').append($("<input name=\"node_type\" type=\"hidden\" value=\"" + link_type + "\" />")); - } else { - $('#type-filter-container').find('input[value=' + link_type + ']').remove(); - } - - $form.submit(); - }); - - $('#all-state-link').click(function() { - $('#state-filter-container').find('input').remove(); - $form.submit(); - }); - - $('.state-type-link').click(function() { - var state_type = $(this).attr('href').substring(1); - - if ($('#state-filter-container').find('input[value=' + state_type + ']').length == 0) { - $('#state-filter-container').append($("<input name=\"state_type\" type=\"hidden\" value=\"" + state_type + "\" />")); - } else { - $('#state-filter-container').find('input[value=' + state_type + ']').remove(); - } - - $form.submit(); - }); - - $('.action-select').change(function() { - $('#action-toggle').removeAttr('checked'); - var $tr = $(this).parents('tr'); - if ($(this).attr('checked')) { - $tr.addClass('selected'); - } else { - $tr.removeClass('selected'); - } - }).change(); - - $('#action-toggle').change(function() { - var $rows = $('#result_list').find('tbody').find('tr'); - var $boxes = $('#result_list').find('tbody').find('input'); - - if ($(this).attr('checked')) { - $rows.addClass('selected'); - $boxes.attr('checked', 'checked') - } else { - $rows.removeClass('selected'); - $boxes.removeAttr('checked'); - } - }); - - $('#author-selector').autocomplete('{% url matching_users %}', { - minChars: 1, - matchContains: true, - max: 10, - - formatItem: function(row, i, max, value) { - return row[1] + ' (' + row[2] + ' {% trans "rep" %})'; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - }); - - $('#author-selector').result(function(event, data, formatted) { - if ($('#author-filter-container').find('input[value=' + data[0] + ']').length == 0) { - $('#author-filter-container').append($("<input name=\"authors\" type=\"hidden\" value=\"" + data[0] + "\" />")); - $form.submit(); - } - }); - - $('.author-filter-remover').click(function() { - var id = $(this).attr('rel'); - if ($('#author-filter-container').find('input[value=' + id + ']').length > 0) { - $('#author-filter-container').find('input[value=' + id + ']').remove(); - $form.submit(); - } - }); - - $('#tag-selector').autocomplete('{% url matching_tags %}', { - minChars: 1, - matchContains: true, - max: 10, - - formatItem: function(row, i, max, value) { - return row[1] + ' (' + row[2] + ' {% trans "uses" %})'; - }, - - formatResult: function(row, i, max, value){ - return row[1]; - } - }); - - $('#tag-selector').result(function(event, data, formatted) { - if ($('#tag-filter-container').find('input[value=' + data[0] + ']').length == 0) { - $('#tag-filter-container').append($("<input name=\"tags\" type=\"hidden\" value=\"" + data[0] + "\" />")); - $form.submit(); - } - }); - - $('.tag-filter-remover').click(function() { - var id = $(this).attr('rel'); - if ($('#tag-filter-container').find('input[value=' + id + ']').length > 0) { - $('#tag-filter-container').find('input[value=' + id + ']').remove(); - $form.submit(); - } - }); - - $('#filter-name-box').one('focus', function() { - $(this).val(''); - $(this).css('color', 'black'); - }); - - $('#filter-name-box').keyup(function() { - if ($(this).val().trim().length > 0) { - $('#save-filter-button').removeAttr('disabled'); - $('#save-filter-button').css('color', 'black'); - } else { - $('#save-filter-button').css('color', '#AAA'); - $('#save-filter-button').attr('disabled', 'disabled'); - } - }); - - var resize_data = null; - - $('.col-resizer').mousedown(function(e) { - var $to_resize = $(this).prev(); - - resize_data = { - resizer: $(this), - to_resize: $to_resize, - start_width: $to_resize.innerWidth(), - x_start: e.pageX, - } - }); - - $('body').mousemove(function(e) { - if (resize_data != null) { - var new_size = (resize_data.start_width - (resize_data.x_start - e.pageX)) + 'px'; - resize_data.to_resize.css({'max-width': new_size, 'min-width': new_size}) - resize_data.resizer.css('max-width', '3px'); - } - }); - - $('body').mouseup(function() { - if (resize_data != null) - resize_data = null; - }); - - $('#filter-panel-header').click(function() { - $('#filter-panel').slideToggle(); - }); - - $('#state-filter-type').change(function() { - $('#state-filter-type-hidden').val($(this).val()); - $form.submit(); - }); - - $('#reset-text-filter').click(function() { - $('#text-filter-input').val(''); - $form.submit(); - return false; - }); - }); - </script> - <style> - #toolbar ul li { - list-style-type: none; - display: inline; - margin-right: 12px; - } - - #result_list tr td.deleted { - background-color: #FDD; - border-bottom: 1px solid #a9a9a9; - } - - #result_list tr td.accepted { - background-color: #DFD; - border-bottom: 1px solid #a9a9a9; - } - - span.question-deleted { - text-decoration: line-through; - } - - .col-resizer { - width: 2px; - min-width: 2px; - min-width: 2px; - cursor: col-resize; - padding: 0 0 0 0; - } - </style> - <script type="text/javascript">window.__admin_media_prefix__ = "{{ settings.ADMIN_MEDIA_PREFIX }}";</script> - <link href="{{ settings.ADMIN_MEDIA_PREFIX }}css/base.css" rel="stylesheet" type="text/css" media="screen" /> - <script type="text/javascript"> - /* gettext identity library */ - - function gettext(msgid) { return msgid; } - function ngettext(singular, plural, count) { return (count == 1) ? singular : plural; } - function gettext_noop(msgid) { return msgid; } - - function interpolate(fmt, obj, named) { - if (named) { - return fmt.replace(/%\(\w+\)s/g, function(match){return String(obj[match.slice(2,-2)])}); - } else { - return fmt.replace(/%s/g, function(match){return String(obj.shift())}); - } - } - - /* formatting library */ - - var formats = new Array(); - - formats['DATETIME_FORMAT'] = 'N j, Y, P'; - formats['DATE_FORMAT'] = 'N j, Y'; - formats['DECIMAL_SEPARATOR'] = '.'; - formats['MONTH_DAY_FORMAT'] = 'F j'; - formats['NUMBER_GROUPING'] = '0'; - formats['TIME_FORMAT'] = 'P'; - formats['FIRST_DAY_OF_WEEK'] = '0'; - formats['TIME_INPUT_FORMATS'] = ['%H:%M:%S', '%H:%M']; - formats['THOUSAND_SEPARATOR'] = ','; - formats['DATE_INPUT_FORMATS'] = ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']; - formats['YEAR_MONTH_FORMAT'] = 'F Y'; - formats['SHORT_DATE_FORMAT'] = 'm/d/Y'; - formats['SHORT_DATETIME_FORMAT'] = 'm/d/Y P'; - formats['DATETIME_INPUT_FORMATS'] = ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M', '%m/%d/%y']; - - function get_format(format_type) { - var value = formats[format_type]; - if (typeof(value) == 'undefined') { - return msgid; - } else { - return value; - } - } - - </script> - <script type="text/javascript" src="{{ settings.ADMIN_MEDIA_PREFIX }}js/core.js"></script> -{% endblock %} - -{% block subtitle %} - {% trans "Node manager" %} -{% endblock %} -{% block description %} - {% trans "Nodes bulk management" %} -{% endblock %} - -{% block admincontent %} - <div id="changelist" class="module filtered"> - <div id="toolbar"> - <form method="get" action="" id="changelist-search"> - {% csrf_token %} - <div> - <div> - <label><img alt="Search" src="{{ settings.ADMIN_MEDIA_PREFIX }}img/admin/icon_searchbox.png"></label> - <input type="text" size="40" name="text" id="text-filter-input" value="{{ text }}"> - <input type="submit" value="{% trans "Search" %}"> - {% if text %} - <small><a href="#" id="reset-text-filter">{% trans "reset text filter" %}</a></small> - {% endif %} - <br /> - <ul> - <li> - <label> - <input type="radio" name="text_in" value="title"{% ifequal text_in "title" %} checked="checked"{% endifequal %} /> - {% trans "Title" %}</label> - </li> - <li> - <label> - <input type="radio" name="text_in" value="body"{% ifequal text_in "body" %} checked="checked"{% endifequal %} /> - {% trans "Body" %}</label> - </li> - <li> - <label> - <input type="radio" name="text_in" value="both"{% ifequal text_in "both" %} checked="checked"{% endifequal %} /> - {% trans "Title and Body" %}</label> - </li> - </ul> - </div> - </div> - <input type="hidden" name="sort" value="{{ nodes.paginator.current_sort }}" /> - <input type="hidden" id="state-filter-type-hidden" name="state_filter_type" value="" /> - <div style="display: none;" id="author-filter-container"> - {% for u in authors %} - <input name="authors" type="hidden" value="{{ u.id }}" /> - {% endfor %} - </div> - <div style="display: none;" id="tag-filter-container"> - {% for t in tags %} - <input name="tags" type="hidden" value="{{ t.id }}" /> - {% endfor %} - </div> - <div id="type-filter-container" style="display: none;"> - {% for type in type_filter %} - <input name="node_type" type="hidden" value="{{ type }}" /> - {% endfor %} - </div> - <div id="state-filter-container" style="display: none;"> - {% for type in state_filter %} - <input name="state_type" type="hidden" value="{{ type }}" /> - {% endfor %} - </div> - </form> - </div> - <div id="changelist-filter"> - <h2 id="filter-panel-header">{% trans "Filter" %}<small> ({% trans "Click to show/hide" %})</small></h2> - <div id="filter-panel"> - <h3>{% trans "By type" %}</h3> - <ul> - <li {% if not type_filter %} class="selected"{% endif %}> - <a id="all-node-type-link" href="#all" title="{% trans "click to clear the type filter" %}">{% trans "all" %}</a> - </li> - {% for type, name in node_types %} - <li{% if type|contained_in:type_filter %} class="selected" title="{% trans "click to remove from the filter" %}"{% else %} title="{% trans "click to add to the filter" %}"{% endif %}> - <a class="node-type-link" href="#{{ type }}">{{ name }}</a> - </li> - {% endfor %} - </ul> - <h3>{% trans "By state" %}</h3> - <ul> - <li {% if not state_filter %} class="selected"{% endif %}> - <a id="all-state-link" href="#any" title="{% trans "click to clear the state filter" %}">{% trans "any" %}</a> - </li> - {% for state_type in state_types %} - <li{% if state_type|contained_in:state_filter %} class="selected" title="{% trans "click to remove from the filter" %}"{% else %} title="{% trans "click to add to the filter" %}"{% endif %}> - <a class="state-type-link" href="#{{ state_type }}">{{ state_type }}</a> - </li> - {% endfor %} - <li> - <select id="state-filter-type"> - <option value="any"{% ifequal state_filter_type "any" %} selected="selected"{% endifequal %}>{% trans "Match any selected" %}</option> - <option value="all"{% ifequal state_filter_type "all" %} selected="selected"{% endifequal %}>{% trans "Match all selected" %}</option> - </select> - </li> - </ul> - <h3>{% trans "By author(s)" %}</h3> - {% if not authors.count %} - <small>{% trans "No users selected, use the box bellow to add users to the filter." %}</small> - {% else %} - <ul> - {% for u in authors %} - <li class="selected"> - <img class="author-filter-remover" rel="{{ u.id }}" src="{% media "/media/images/close-small-dark.png" %}"> - {{ u.decorated_name }} ({{ u.reputation }}) - </li> - {% endfor %} - </ul> - <small>{% trans "Click on the cross next to a user name to remove it from the filter." %}</small> - {% endif %} - <input type="text" size="20" autocomplete="off" id="author-selector" /> - - <h3>{% trans "By tag(s)" %}</h3> - {% if not tags.count %} - <small>{% trans "No tags selected, use the box bellow to add tags to the filter." %}</small> - {% else %} - <ul> - {% for t in tags %} - <li class="selected"> - <img class="tag-filter-remover" rel="{{ t.id }}" src="{% media "/media/images/close-small-dark.png" %}"> - {{ t.name }} ({{ t.used_count }}) - </li> - {% endfor %} - </ul> - <small>{% trans "Click on the cross next to a tag name to remove it from the filter." %}</small> - {% endif %} - <input type="text" size="20" autocomplete="off" id="tag-selector" /> - - <h3>{% trans "Pre defined" %}</h3> - {% if not settings.NODE_MAN_FILTERS %} - <small>{% trans "There are no saved filters. Click bellow to add." %}</small> - {% endif %} - <ul id="pre-filter-container"> - {% for name, uri in settings.NODE_MAN_FILTERS %} - <li class="selected"><a href="{% url admin_tools "nodeman" %}?{{ uri }}">{{ name }}</a></li> - {% endfor %} - </ul> - <form action="" method="POST"> - {% csrf_token %} - <input name="filter_name" type="text" size="20" id="filter-name-box" style="color: #AAA;" value="{% trans "Filter name..." %}" /> - <button name="save_filter" value="0" style="color: #AAA;" title="{% trans "Click to save the current filter" %}" id="save-filter-button" disabled="disabled" class="button">{% trans "Save" %}</button> - </form> - - {% comment %}<h3>{% trans "Show" %}</h3> - <form action="" method="get"> - {% csrf_token %} - <div>{{ show_form.show }}</div> - <input type="submit" value="{% trans "Refresh" %}" /> - </form>{% endcomment %} - </div> - </div> - <form id="changelist-form" method="POST" action=""> - {% csrf_token %} - <div class="actions"> - <label> - {% trans "Action" %}: - <select name="action"> - <option selected="selected" value="">---------</option> - <option value="delete_selected">{% trans "Mark deleted" %}</option> - <option value="undelete_selected">{% trans "Undelete" %}</option> - <option value="hard_delete_selected">{% trans "Delete completely" %}</option> - <option value="close_selected">{% trans "Close (questions only)" %}</option> - </select> - </label> - <button value="0" name="execute" title="{% trans "Run the selected action" %}" class="button" type="submit">{% trans "Go" %}</button> - </div> - <table id="result_list" cellspacing="0"> - <thead> - <tr> - {% declare %} - current_sort = nodes.paginator.current_sort - added_at = current_sort == "added_at" and "ascending" or (current_sort == "added_at_asc" and "descending" or "") - author = current_sort == "author" and "ascending" or (current_sort == "author_asc" and "descending" or "") - score = current_sort == "score" and "ascending" or (current_sort == "score_asc" and "descending" or "") - act_at = current_sort == "act_at" and "ascending" or (current_sort == "act_at_asc" and "descending" or "") - act_by = current_sort == "act_by" and "ascending" or (current_sort == "act_by_asc" and "descending" or "") - - added_at_link = current_sort == "added_at" and nodes.paginator.added_at_asc_sort_link or nodes.paginator.added_at_sort_link - author_link = current_sort == "author_asc" and nodes.paginator.author_sort_link or nodes.paginator.author_asc_sort_link - act_at_link = current_sort == "act_at" and nodes.paginator.act_at_asc_sort_link or nodes.paginator.act_at_sort_link - act_by_link = current_sort == "act_by_asc" and nodes.paginator.act_by_sort_link or nodes.paginator.act_by_asc_sort_link - {% enddeclare %} - {% spaceless %} - <th class="action-checkbox-column"> - <input type="checkbox" id="action-toggle" style="display: inline;" /> - </th> - <th>{% trans "Type" %}</th> - <th>{% trans "Summary" %}</th> - <th class="col-resizer"></th> - <th>{% trans "State" %}</th> - <th class="sorted {{ author }}"> - <a href="{{ author_link }}">{% trans "Author" %}</a> - </th> - <th class="sorted {{ added_at }}"> - <a href="{{ added_at_link }}">{% trans "Added at" %}</a> - </th> - {% comment %} - <th class="sorted {{ score }}"> - <a href="{{ score_link }}">{% trans "Score" %}</a> - </th> - {% endcomment %} - <th class="sorted {{ act_by }}"> - <a href="{{ act_by_link }}">{% trans "Last activity by" %}</a> - </th> - <th class="sorted {{ act_at }}"> - <a href="{{ act_at_link }}">{% trans "Last activity at" %}</a> - </th> - <th>{% trans "Tags" %}</th> - {% endspaceless %} - </tr> - </thead> - <tbody> - {% with filter_form.state_type.data as state_type %} - {% for node in nodes.paginator.page %} - <tr class="{% cycle 'row1' 'row2' %}"> - <td><input type="checkbox" name="_selected_node" value="{{ node.id }}" class="action-select"></td> - <td>{{ node.friendly_name }}</td> - {% declare %} - is_root = node.abs_parent == None - title = is_root and node.title or node.abs_parent.title - - anchor = "<strong>%s</strong>" % html.hyperlink(node.get_absolute_url(), title) - anchor = ((not is_root) and node.abs_parent.nis.deleted) and "<span class=\"question-deleted\">%s</span>" % anchor or anchor - anchor = is_root and anchor or "(%s)" % anchor - anchor = html.mark_safe(anchor) - - td_class = "" - td_class = node.nis.accepted and "accepted" or td_class - td_class = node.nis.deleted and "deleted" or td_class - {% enddeclare %} - <td class="{{ td_class }}" colspan="2"> - {{ anchor }}<br /> - {{ node.summary }} - </td> - <td> - {% for state in node.states.all %} - <b>{{ state.state_type }}</b> {% diff_date state.action.at %} {% trans "by" %} - <a target="_blank" href="{{ state.action.by.get_absolute_url }}">{{ state.action.by.decorated_name }}</a><br /> - {% endfor %} - </td> - <td><a href="{{ node.author.get_absolute_url }}">{{ node.author.decorated_name }}</a></td> - <td>{% diff_date node.added_at %}</td> - <!--<td>{{ node.score }}</td>--> - <td><a href="{{ node.last_activity_by.get_absolute_url }}">{{ node.last_activity_by.decorated_name }}</a></td> - <td>{% diff_date node.last_activity_at %}</td> - <td> - {% for t in node.tags.all %} - {% if t|contained_in:tags %}<b>{{ t.name }}</b> - {% else %}{{ t.name }}{% endif %} - {% endfor %} - </td> - </tr> - {% endfor %} - {% endwith %} - </tbody> - </table> - {{ nodes.paginator.page_numbers }} - </form> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/set.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/set.html.svn-base deleted file mode 100755 index 3128d79565acc87da7649332f291d1402a669f70..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/set.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% extends basetemplate %} - -{% load i18n extra_tags extra_filters %} - -{% block subtitle %}{{ form.set.title }}{% endblock %} -{% block pagename %}{{ form.set.title }}{% endblock %} -{% block description %}{{ form.set.description }}{% endblock %} - -{% block admincontent %} - <form action="" method="POST" enctype="multipart/form-data" accept-charset="utf-8"> - {% csrf_token %} - <table id="admin_form" style="width: 100%"> - {{ form.as_table }} - <tr> - <th></th> - <td> - <input id="submit" name="submit" type="submit" value="{% trans "Save" %}" onclick="this.form.target=''; return true;" /> - {% if form.set.can_preview %} - <input id="preview" name="preview" type="submit" value="{% trans "Preview" %}" onclick="this.form.target='_blank'; return true;" /> - {% if form.set.name|contained_in:unsaved %} - <input id="reset" name="reset" type="submit" value="{% trans "Reset Changes" %}" onclick="this.form.target=''; return true;" /> - {% endif %} - {% endif %} - </td> - </tr> - </table> - </form> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/static_pages.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/static_pages.html.svn-base deleted file mode 100755 index ea49a26050ee4211ec2af58417bb959c252dee36..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/static_pages.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} - -{% block subtitle %}{% trans "Static pages" %}{% endblock %} -{% block pagename %}{% trans "Static pages" %}{% endblock %} -{% block description %}{% trans "Allows you to create a set of static pages" %}{% endblock %} - -{% block admincontent %} - <h1>{% trans "Select page to edit" %}</h1> - <ul class="object-tools"> - <li><a class="addlink" href="{% url admin_new_page %}">{% trans "New page" %}</a></li> - </ul> - <div class="module"> - <table style="width: 100%"> - <caption>{% trans "Pages" %}</caption> - <tbody> - {% for page in pages %} - <tr> - <th scope="row"><a href="{% url admin_edit_page id=page.id %}">{{ page.headline }}</a></th> - <td style="width: 125px;"><a class="changelink" href="{% url admin_edit_page id=page.id %}">{% trans "Edit" %}</a></td> - <td style="width: 125px;"> - <a onclick="return confirm('{% trans "Are you sure you want to delete this page?" %}');" class="deletelink" href="{% url admin_delete_page id=page.id %}"> - {% trans "Delete" %} - </a> - </td> - </tr> - {% endfor %} - </tbody> - </table> - </div> - -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/statistics.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/statistics.html.svn-base deleted file mode 100755 index e01252212477f32d57b014ce807efaef05f63290..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/statistics.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} -{% load extra_tags %} - -{% block adminjs %} -<script type='text/javascript' src='{% media "/media/js/excanvas.min.js" %}'></script> -<script type='text/javascript' src='{% media "/media/js/jquery.flot.min.js" %}'></script> -<script type="text/javascript"> - $().ready(function(){ - {% for graph in graphs %} - var {{ graph.id }} = {{ graph.data }}; - var {{ graph.id }}_placeholder = $('#{{ graph.id }}'); - - $.plot({{ graph.id }}_placeholder, [{{ graph.id }}], { - xaxis: { mode: "time" }, - points: { show: false }, - lines: { show: true } - }); - {% endfor %} - }); -</script> -{% endblock %} - -{% block subtitle %}{% trans "Dashboard" %}{% endblock %} -{% block pagename %}{% trans "Dashboard" %}{% endblock %} -{% block description %}{% trans "Some simple graphics to help you get a notion of whats going on in your site." %}{% endblock %} - -{% block admincontent %} -{% for graph in graphs %} - {% include "osqaadmin/graph.html" %} -{% endfor %} -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/osqaadmin/.svn/text-base/test_email_settings.html.svn-base b/forum/skins/light/templates/osqaadmin/.svn/text-base/test_email_settings.html.svn-base deleted file mode 100755 index 47a3ac585bd0be0961e546600481631b80ba65da..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/osqaadmin/.svn/text-base/test_email_settings.html.svn-base +++ /dev/null @@ -1,20 +0,0 @@ -{% load i18n %} - -<p> - {% blocktrans %} - An attempt has been made to send email to - {% endblocktrans %} {{ user.email }}. -</p> - -<p> - {% blocktrans %} - Please, check your inbox and if you see the new test message your email STMP settings are correct. - {% endblocktrans %} -</p> - -<p> - {% blocktrans %} - If you do not see the new test message check your spam folder, and if you don't find it check your SMTP settings - again. It might be useful to take a look at the log file. - {% endblocktrans %} -</p> \ No newline at end of file diff --git a/forum/skins/light/templates/paginator/.svn/all-wcprops b/forum/skins/light/templates/paginator/.svn/all-wcprops deleted file mode 100755 index 72ba81d69760a3adcd51300e7d88de78a18d01e1..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/paginator/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/paginator -END -page_numbers.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/paginator/page_numbers.html -END -page_sizes.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/490/osqa/trunk/forum/skins/default/templates/paginator/page_sizes.html -END -sort_tabs.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/631/osqa/trunk/forum/skins/default/templates/paginator/sort_tabs.html -END diff --git a/forum/skins/light/templates/paginator/.svn/entries b/forum/skins/light/templates/paginator/.svn/entries deleted file mode 100755 index cd292bf44a5c5bb5662cf4d6ea6e8dc99aadf3ae..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/paginator/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/paginator -http://svn.osqa.net/svnroot - - - -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -page_numbers.html -file - - - - -2012-07-01T12:37:36.169376Z -88dae789ffaff9174b1e6b90fec6e7df -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -840 - -page_sizes.html -file - - - - -2012-07-01T12:37:36.169376Z -4b1ed0c4b79ccfe1b678861af329b49f -2010-07-06T20:25:06.502152Z -490 -hernani - - - - - - - - - - - - - - - - - - - - - -391 - -sort_tabs.html -file - - - - -2012-07-01T12:37:36.169376Z -217e7101c100b94a9ff0e5c8cf7a7f04 -2010-12-27T17:42:19.423434Z -631 -jordan - - - - - - - - - - - - - - - - - - - - - -482 - diff --git a/forum/skins/light/templates/paginator/.svn/text-base/page_numbers.html.svn-base b/forum/skins/light/templates/paginator/.svn/text-base/page_numbers.html.svn-base deleted file mode 100755 index 9d4fab7029a80c59122ad95f1ebf42a4926bf0dc..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/paginator/.svn/text-base/page_numbers.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -{% spaceless %} -{% load i18n %} - -<p class="paginator"> - {% if has_previous %} - <span class="prev"><a href="{{ previous_url }}" title="{% trans "previous" %}">« {% trans "previous" %}</a></span> - {% endif %} - {% for range in page_numbers %} - {% if range %} - {% for num, url in range %} - {% ifequal num current %} - <span class="curr this_page">{{ num }}</span> - {% else %} - <a class="page" href="{{ url }}" >{{ num }}</a> - {% endifequal %} - {% endfor %} - {% else %} - ... - {% endif %} - {% endfor %} - {% if has_next %} - <span class="next"><a href="{{ next_url }}" title="{% trans "next page" %}">{% trans "next" %} »</a></span> - {% endif %} -</p> -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/light/templates/paginator/.svn/text-base/page_sizes.html.svn-base b/forum/skins/light/templates/paginator/.svn/text-base/page_sizes.html.svn-base deleted file mode 100755 index f0859b58e5772c5ac9dbd7c0476f521fcfbe2d7f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/paginator/.svn/text-base/page_sizes.html.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -{% spaceless %} -{% load i18n %} -<div class="paginator"> - <span class="text">{% trans "posts per page" %}</span> - {% for size, url in sizes %} - {% ifequal size current %} - <span class="curr">{{ size }}</span> - {% else %} - <span class="page"><a href="{{ url }}">{{ size }}</a></span> - {% endifequal %} - {% endfor %} -</div> -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/light/templates/paginator/.svn/text-base/sort_tabs.html.svn-base b/forum/skins/light/templates/paginator/.svn/text-base/sort_tabs.html.svn-base deleted file mode 100755 index a0662a9fd4c67e800181120c144b66b8cc5975d9..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/paginator/.svn/text-base/sort_tabs.html.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -{% load i18n %} -{% spaceless %} -<div class="tabsA"> - {% for name, label, url, descr in sorts %} - <a href="{{ url }}"{% ifequal current name %} class="on"{% endifequal %} title="{{ descr }}">{{ label }}</a> - {% endfor %} - {% comment %} - <span class="sticky-sort-tabs"> - <input title="{% trans "Check to make the sort order sticky" %}" type="checkbox" checked="{% if sticky %}checked{% endif %}" /> - </span> - {% endcomment %} -</div> -{% endspaceless %} diff --git a/forum/skins/light/templates/question_list/.svn/all-wcprops b/forum/skins/light/templates/question_list/.svn/all-wcprops deleted file mode 100755 index 5b38b34ca966d8aac9d99ba53ba9a0ec5a29ca9a..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/all-wcprops +++ /dev/null @@ -1,47 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1240/osqa/trunk/forum/skins/default/templates/question_list -END -tag_selector.html -K 25 -svn:wc:ra_dav:version-url -V 95 -/svnroot/!svn/ver/1078/osqa/trunk/forum/skins/default/templates/question_list/tag_selector.html -END -item.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/1240/osqa/trunk/forum/skins/default/templates/question_list/item.html -END -related_tags.html -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/!svn/ver/628/osqa/trunk/forum/skins/default/templates/question_list/related_tags.html -END -sort_tabs.html -K 25 -svn:wc:ra_dav:version-url -V 91 -/svnroot/!svn/ver/631/osqa/trunk/forum/skins/default/templates/question_list/sort_tabs.html -END -title.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/431/osqa/trunk/forum/skins/default/templates/question_list/title.html -END -subscription_item.html -K 25 -svn:wc:ra_dav:version-url -V 99 -/svnroot/!svn/ver/546/osqa/trunk/forum/skins/default/templates/question_list/subscription_item.html -END -count.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/516/osqa/trunk/forum/skins/default/templates/question_list/count.html -END diff --git a/forum/skins/light/templates/question_list/.svn/entries b/forum/skins/light/templates/question_list/.svn/entries deleted file mode 100755 index 04b45d0fc5a5e6a074f5abd6485cab737b39ec3f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/entries +++ /dev/null @@ -1,266 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/question_list -http://svn.osqa.net/svnroot - - - -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -sort_tabs.html -file - - - - -2012-07-01T12:37:36.217376Z -d0a1eb0012e717d886eda29e91b0b2b8 -2010-12-27T17:42:19.423434Z -631 -jordan - - - - - - - - - - - - - - - - - - - - - -774 - -title.html -file - - - - -2012-07-01T12:37:36.217376Z -9ee0c91ca6e8d4f70086c29cd90f351d -2010-06-16T16:13:22.025763Z -431 -qw3rty - - - - - - - - - - - - - - - - - - - - - -733 - -subscription_item.html -file - - - - -2012-07-01T12:37:36.217376Z -292fca4ff2040d52bb607821db2c1183 -2010-07-16T23:05:44.473939Z -546 -qw3rty - - - - - - - - - - - - - - - - - - - - - -642 - -count.html -file - - - - -2012-07-01T12:37:36.217376Z -040a0158ce3a6e266ca75edc2917ffb9 -2010-07-10T01:26:49.228886Z -516 -hernani - - - - - - - - - - - - - - - - - - - - - -699 - -tag_selector.html -file - - - - -2012-07-01T12:37:36.217376Z -fff932f9091fd7e7dad020c313e13aa6 -2011-06-25T11:49:04.870082Z -1078 -jordan - - - - - - - - - - - - - - - - - - - - - -2389 - -item.html -file - - - - -2012-07-01T12:37:36.217376Z -759243d601efba78185cbed90a71be02 -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - - - - - - - - -2354 - -related_tags.html -file - - - - -2012-07-01T12:37:36.217376Z -116a93715521849457771adc03073955 -2010-12-23T01:37:35.139012Z -628 -jordan - - - - - - - - - - - - - - - - - - - - - -635 - diff --git a/forum/skins/light/templates/question_list/.svn/text-base/count.html.svn-base b/forum/skins/light/templates/question_list/.svn/text-base/count.html.svn-base deleted file mode 100755 index dbb45eb8ed70af83747eb4c6a598c68dc016cb27..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/text-base/count.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% spaceless %} -{% load i18n humanize extra_tags %} -{% declare %} - answer_count = questions.children_count('answer') -{% enddeclare %} - -<div class="boxC"> - <div class="questions-count"> - {{ questions.paginator.count }}<span style="color:black;font-size:14px;margin-left:5px">{{ list_description }}</span> - </div> - - - {% if answer_count %} - <div class="questions-count"> - {{ answer_count }}<span style="color:black;font-size:14px;margin-left:5px">{% trans "answers" %}</span> - </div> - - {% endif %} - - <div> - <p class="nomargin"> - {{ questions.paginator.sort_description }} - </p> - </div> -</div> -{% endspaceless %} \ No newline at end of file diff --git a/forum/skins/light/templates/question_list/.svn/text-base/item.html.svn-base b/forum/skins/light/templates/question_list/.svn/text-base/item.html.svn-base deleted file mode 100755 index 1ad2ba5c8e98859e3da6cb9843e79e651fcec7a8..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/text-base/item.html.svn-base +++ /dev/null @@ -1,40 +0,0 @@ -{% load i18n humanize extra_filters extra_tags user_tags %} -<div class="short-summary"> - <div class="counts">{% if favorite_count %} - <div class="favorites"> - <span class="favorite-mark{% if question.favourite_count %} on{% endif %}"></span> - <div class="item-count">{{question.favourite_count|intcomma}}</div> - </div> - {% endif %} - <div class="votes"> - <div class="item-count">{{question.score|intcomma}}</div> - <div>{% ifequal question.score 1 %}{% trans "vote" %}{% else %}{% trans "votes" %}{% endifequal %}</div> - </div > - <div {% if question.accepted_count %}title="{% trans "this question has an accepted answer" %}"{% endif %} class="status {% if question.accepted_count %}answered-accepted{% endif %} {% ifequal question.answer_count 0 %}unanswered{% endifequal %}{% ifnotequal question.answer_count 0 %}answered{% endifnotequal %}"> - <div class="item-count">{{question.answer_count|intcomma}}</div> - <div>{% ifequal question.answer_count 1 %}{% trans "answer" %}{% else %}{% trans "answers" %}{% endifequal %}</div> - </div> - <div class="views"> - <div class="item-count">{{question.view_count|decorated_int|safe}}</div> - <div>{% ifequal question.view_count 1 %}{% trans "view" %}{% else %}{% trans "views" %}{% endifequal %}</div> - </div> - </div> - - <div class="question-summary-wrapper"> - <h2><a {% if not question_summary %}title="{{ question.summary }}"{% endif %} href="{{ question.get_absolute_url }}">{{question.headline}}</a></h2> - {% if question_summary %} - <div class="summary"> - {{ question.summary }} - </div> - {% endif %} - <div class="userinfo"> - <span class="relativetime" title="{{question.last_activity_at}}">{% diff_date question.last_activity_at %}</span> - {% if question.last_activity_by %}{% user_signature question.last_activity_by signature_type %}{% endif %} - </div> - - <div class="tags">{% for tag in question.tagname_list %} - <a class="tag-link-{{ tag }}" href="{% url tag_questions tag|urlencode %}" title="{% trans "see questions tagged" %} '{{ tag }}'" rel="tag">{{ tag }}</a>{% endfor %} - </div> - </div> - -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/question_list/.svn/text-base/related_tags.html.svn-base b/forum/skins/light/templates/question_list/.svn/text-base/related_tags.html.svn-base deleted file mode 100755 index 6ec2a75c17d688b2798c456d6409e00879198fed..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/text-base/related_tags.html.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -{% load i18n %} -{% load humanize %} - -{% if tags %} - <div class="boxC"> - <h3 class="subtitle">{% trans "Related tags" %}</h3> - <div class="tags" id="recent-tags"> - {% for tag in tags %} - <a rel="tag" class="tag-link-{{ tag.name }}" title="{% blocktrans with tag.name as tag_name %}see questions tagged '{{ tag_name }}'{% endblocktrans %}" href="{% url tag_questions tag.name|urlencode %}">{{ tag.name }}</a> - <span class="tag-number">× {{ tag.used_count|intcomma }}</span> - <br /> - {% endfor %} - </div> - </div> -{% endif %} \ No newline at end of file diff --git a/forum/skins/light/templates/question_list/.svn/text-base/sort_tabs.html.svn-base b/forum/skins/light/templates/question_list/.svn/text-base/sort_tabs.html.svn-base deleted file mode 100755 index eff04084c96469be3ed6a3b69df2154db3296f78..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/text-base/sort_tabs.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n %} - -<div class="tabsA"> - <a id="active" href="{{ base_url }}active"{% ifequal current "active" %} class="on"{% endifequal %} title="{% trans "most recently updated questions" %}">{% trans "active" %}</a> - <a id="latest" href="{{ base_url }}latest"{% ifequal current "latest" %} class="on"{% endifequal %} title="{% trans "most recently asked questions" %}">{% trans "newest" %}</a> - <a id="hottest" href="{{ base_url }}hottest"{% ifequal current "hottest" %} class="on"{% endifequal %} title="{% trans "hottest questions" %}">{% trans "hottest" %}</a> - <a id="mostvoted" href="{{ base_url }}mostvoted"{% ifequal current "mostvoted" %} class="on"{% endifequal %} title="{% trans "most voted questions" %}">{% trans "most voted" %}</a> -</div> diff --git a/forum/skins/light/templates/question_list/.svn/text-base/subscription_item.html.svn-base b/forum/skins/light/templates/question_list/.svn/text-base/subscription_item.html.svn-base deleted file mode 100755 index 3f1f688f9870235648c65ecffdbbe769fc5c9d6c..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/text-base/subscription_item.html.svn-base +++ /dev/null @@ -1,10 +0,0 @@ -{% load i18n humanize extra_filters extra_tags user_tags %} -<div class="subscription_summary"> - <div style="height:100%"><a class="sidebar_button subscription_unsubscribe_button" href="{% url subscribe id=subscription.question.id user=subscription.user.id %}"> - {% trans "Unsubscribe" %} - </a></div> - - <div class="subscription_title"><a title="{{ question.summary }}" href="{{ question.get_absolute_url }}">{{question.headline}}</a></div> - <div class="subscription_details"><span class="relativetime" title="{{subscription.last_view}}">{% trans "Last checked" %} {% diff_date subscription.last_view %}</span></div> -</div> - diff --git a/forum/skins/light/templates/question_list/.svn/text-base/tag_selector.html.svn-base b/forum/skins/light/templates/question_list/.svn/text-base/tag_selector.html.svn-base deleted file mode 100755 index 89817a972952a8a84a284b2bff42265df3abe006..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/text-base/tag_selector.html.svn-base +++ /dev/null @@ -1,51 +0,0 @@ -{% load i18n %} -{% load extra_tags %} - -{% if show_interesting_tags %} -{% if user_authenticated %} -<div id="tagSelector" class="boxC"> - <h3 class="subtitle">{% trans "Interesting tags" %}</h3> - <div class="tags interesting marked-tags"> - {% for tag_name in interesting_tag_names %} - {% spaceless %} - <span class="deletable-tag" id="interesting-tag-{{tag_name}}"> - <a rel="tag" - class="tag-link-{{ tag_name }}" - title="{% blocktrans with tag as tagname %}see questions tagged '{{ tag_name }}'{% endblocktrans %}" - href="{% url tag_questions tag_name|urlencode %}">{{tag_name}}</a> - <img class="delete-icon" - src="{% media "/media/images/close-small-dark.png" %}" - title="{% blocktrans %}remove '{{tag_name}}' from the list of interesting tags{% endblocktrans %}"/> - </span> - {% endspaceless %} - {% endfor %} - </div> - <input id="interestingTagInput" autocomplete="off" type="text"/> - <input id="interestingTagAdd" type="submit" value="{% trans "Add" %}"/> - <h3 class="subtitle">{% trans "Ignored tags" %}</h3> - <div class="tags ignored marked-tags"> - {% for tag_name in ignored_tag_names %} - {% spaceless %} - <span class="deletable-tag" id="ignored-tag-{{tag_name}}"> - <a rel="tag" - class="tag-link-{{ tag_name }}" - title="{% blocktrans with tag as tagname %}see questions tagged '{{ tag_name }}'{% endblocktrans %}" - href="{% url tag_questions tag_name|urlencode %}">{{tag_name}}</a> - <img class="delete-icon" - src="{% media "/media/images/close-small-dark.png" %}" - title="{% blocktrans %}remove '{{tag_name}}' from the list of ignored tags{% endblocktrans %}"/> - </span> - {% endspaceless %} - {% endfor %} - </div> - <input id="ignoredTagInput" autocomplete="off" type="text"/> - <input id="ignoredTagAdd" type="submit" value="{% trans "Add" %}"/> - {% comment %} - <p id="hideIgnoredTagsControl"> - <input id="hideIgnoredTagsCb" type="checkbox" {% if request.user.hide_ignored_questions %}checked="checked"{% endif %} /> - <label id="hideIgnoredTagsLabel" for="hideIgnoredTagsCb">{% trans "keep ignored questions hidden" %}</label> - <p> - {% endcomment %} -</div> -{% endif %} -{% endif %} diff --git a/forum/skins/light/templates/question_list/.svn/text-base/title.html.svn-base b/forum/skins/light/templates/question_list/.svn/text-base/title.html.svn-base deleted file mode 100755 index bb6268fefd8fa48ba73935c6efdae35be6e7c6e5..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/question_list/.svn/text-base/title.html.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -{% load i18n %} - -<div class="headQuestions"> - {% if searchtag %} - {% trans "Found by tags" %} - {% else %} - {% if searchtitle %} - {% if settings.USE_SPHINX_SEARCH %} - {% trans "Search results" %} - {% else %} - {% trans "Found by title" %} - {% endif %} - {% else %} - {% if is_unanswered %} - {% trans "Unanswered questions" %} - {% else %} - {% if page_title %} - {% trans page_title %} - {% else %} - {% trans "All Questions" %} - {% endif %} - {% endif %} - {% endif %} - {% endif %} -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/sidebar/.svn/all-wcprops b/forum/skins/light/templates/sidebar/.svn/all-wcprops deleted file mode 100755 index 5a54656f1b81476cd60a604ce2df655cfc81e648..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/sidebar/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1103/osqa/trunk/forum/skins/default/templates/sidebar -END -user_blocks.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/617/osqa/trunk/forum/skins/default/templates/sidebar/user_blocks.html -END -recent_tags.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1103/osqa/trunk/forum/skins/default/templates/sidebar/recent_tags.html -END -recent_awards.html -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/936/osqa/trunk/forum/skins/default/templates/sidebar/recent_awards.html -END -markdown_help.html -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/!svn/ver/1073/osqa/trunk/forum/skins/default/templates/sidebar/markdown_help.html -END diff --git a/forum/skins/light/templates/sidebar/.svn/entries b/forum/skins/light/templates/sidebar/.svn/entries deleted file mode 100755 index eb822d85086bca774a1b76cfab38f629600f00af..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/sidebar/.svn/entries +++ /dev/null @@ -1,164 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/sidebar -http://svn.osqa.net/svnroot - - - -2011-07-05T19:45:38.441736Z -1103 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -markdown_help.html -file - - - - -2012-07-01T12:37:36.321376Z -ebabb64aaf25670657008d45fff92d1a -2011-06-24T10:35:04.189336Z -1073 -jordan - - - - - - - - - - - - - - - - - - - - - -1023 - -user_blocks.html -file - - - - -2012-07-01T12:37:36.321376Z -c85ff188d18d490960c7999c187c7780 -2010-11-10T15:48:20.410108Z -617 -hernani - - - - - - - - - - - - - - - - - - - - - -195 - -recent_tags.html -file - - - - -2012-07-01T12:37:36.321376Z -dfed25f473f4650cc9c1b1f9a87cacd2 -2011-07-05T19:45:38.441736Z -1103 -jordan - - - - - - - - - - - - - - - - - - - - - -743 - -recent_awards.html -file - - - - -2012-07-01T12:37:36.321376Z -dc57e386e1fc52059d2b11306541b9af -2011-04-06T15:14:49.758065Z -936 -jordan - - - - - - - - - - - - - - - - - - - - - -693 - diff --git a/forum/skins/light/templates/sidebar/.svn/text-base/markdown_help.html.svn-base b/forum/skins/light/templates/sidebar/.svn/text-base/markdown_help.html.svn-base deleted file mode 100755 index 5a00975578b71206e93912ae5b2d9be4a3f7f9e6..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/sidebar/.svn/text-base/markdown_help.html.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -{% load i18n %} -<div class="boxC" id="editor_side_bar"> - <p class="subtitle darkred">{% trans "Markdown Basics" %}</p> - <ul class="list-item"> - <li> - {% trans "*italic* or _italic_" %} - </li> - <li> - {% trans "**bold** or __bold__" %} - </li> - <li> - <b>{% trans "link" %}</b>:[{% trans "text" %}](http://url.com/ "{% trans "title" %}") - - </li> - - <li> - <b>{% trans "image" %}</b>? - - </li> - <li> - {% trans "numbered list:" %} - 1. Foo - 2. Bar - </li> - <li> - {% trans "to add a line break simply add two spaces to where you would like the new line to be." %} - </li> - <li> - {% trans "basic HTML tags are also supported" %} - </li> - </ul> - <p class='info-box-follow-up-links'> - <a href="{% url markdown_help %}" target="_blank">{% trans "learn more about Markdown" %} </a> - </p> -</div> diff --git a/forum/skins/light/templates/sidebar/.svn/text-base/recent_awards.html.svn-base b/forum/skins/light/templates/sidebar/.svn/text-base/recent_awards.html.svn-base deleted file mode 100755 index 37672c4bf0fb84b8d0347e004a335e75ca361ad2..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/sidebar/.svn/text-base/recent_awards.html.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -{% load i18n %} - -<div class="boxC"> - <h3>{% trans "Recent awards" %}</h3> - <div class="body"> - <ul class="badge-list"> - {% for award in awards %} - <li> - <a href="{% url badges %}{{award.badge.id}}/{{award.badge.name|slugify}}" title="{{ award.badge.description }}" class="medal"> - <span class="badge{{ award.badge.type }}">●</span> {{ award.badge.name }}</a> - <a href="{{ award.user.get_profile_url }}">{{ award.user.decorated_name }}</a> - </li> - {% endfor %} - </ul> - <div class="more"><a href="{% url badges %}">{% trans "all awards" %} </a> </div> - </div> -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/sidebar/.svn/text-base/recent_tags.html.svn-base b/forum/skins/light/templates/sidebar/.svn/text-base/recent_tags.html.svn-base deleted file mode 100755 index 40209c0dcdbcc06e4745976dd1f6cbac1efb61d4..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/sidebar/.svn/text-base/recent_tags.html.svn-base +++ /dev/null @@ -1,16 +0,0 @@ -{% load i18n extra_tags %} -{% declare %} - show_tags_in_a_cloud = settings.SHOW_TAGS_IN_A_CLOUD -{% enddeclare %} - -<div class="boxC"> - <h3>{% trans "Recent tags" %}</h3> - <div class="body"> - <div class="tags" id="recent-tags"> - {% for tag in tags %} - <a rel="tag"{% if show_tags_in_a_cloud %} style="font-size: {% get_tag_font_size tag %}px;"{% endif %} class="tag-link-{{ tag.name }}" title="{% blocktrans with tag.name as tagname %}see questions tagged '{{tagname}}'{% endblocktrans %}" href="{% url tag_questions tag.name|urlencode %}">{{ tag.name }}</a> - {% endfor %} - </div> - <div class="more"><a href="{% url tags %}">{% trans "popular tags" %} </a> </div> - </div> -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/sidebar/.svn/text-base/user_blocks.html.svn-base b/forum/skins/light/templates/sidebar/.svn/text-base/user_blocks.html.svn-base deleted file mode 100755 index d3d98cc27ac925ea2e1fccde5dbbf0bb721dc598..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/sidebar/.svn/text-base/user_blocks.html.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -{% load markup %} - -{% if show %} -{% if wrap %}<div id="{{ blockid }}" class="boxC"> - <div class="body">{% endif %} - {{ content }} - {% if wrap %}</div> -</div>{% endif %} -{% endif %} diff --git a/forum/skins/light/templates/users/.svn/all-wcprops b/forum/skins/light/templates/users/.svn/all-wcprops deleted file mode 100755 index a407122b620df273b2de2e93a1bd44c7a84cea2a..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/all-wcprops +++ /dev/null @@ -1,119 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1273/osqa/trunk/forum/skins/default/templates/users -END -info.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1273/osqa/trunk/forum/skins/default/templates/users/info.html -END -activity.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/templates/users/activity.html -END -stats.html -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1237/osqa/trunk/forum/skins/default/templates/users/stats.html -END -votes.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/254/osqa/trunk/forum/skins/default/templates/users/votes.html -END -signature.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/603/osqa/trunk/forum/skins/default/templates/users/signature.html -END -preferences.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/1099/osqa/trunk/forum/skins/default/templates/users/preferences.html -END -karma_bonus.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/487/osqa/trunk/forum/skins/default/templates/users/karma_bonus.html -END -users.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/497/osqa/trunk/forum/skins/default/templates/users/users.html -END -subscriptions_management.html -K 25 -svn:wc:ra_dav:version-url -V 98 -/svnroot/!svn/ver/544/osqa/trunk/forum/skins/default/templates/users/subscriptions_management.html -END -menu.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/487/osqa/trunk/forum/skins/default/templates/users/menu.html -END -online_users.html -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/565/osqa/trunk/forum/skins/default/templates/users/online_users.html -END -subscriptions.html -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1124/osqa/trunk/forum/skins/default/templates/users/subscriptions.html -END -suspend_user.html -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/!svn/ver/1230/osqa/trunk/forum/skins/default/templates/users/suspend_user.html -END -recent.html -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/156/osqa/trunk/forum/skins/default/templates/users/recent.html -END -edit.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1212/osqa/trunk/forum/skins/default/templates/users/edit.html -END -subscriptions_settings.html -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/988/osqa/trunk/forum/skins/default/templates/users/subscriptions_settings.html -END -tabs.html -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/440/osqa/trunk/forum/skins/default/templates/users/tabs.html -END -reputation.html -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/!svn/ver/1247/osqa/trunk/forum/skins/default/templates/users/reputation.html -END -questions.html -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/!svn/ver/924/osqa/trunk/forum/skins/default/templates/users/questions.html -END diff --git a/forum/skins/light/templates/users/.svn/dir-prop-base b/forum/skins/light/templates/users/.svn/dir-prop-base deleted file mode 100755 index a3977795849e222c6ccbba18643aa2d30db43058..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/dir-prop-base +++ /dev/null @@ -1,6 +0,0 @@ -K 13 -svn:mergeinfo -V 146 -/osqa/branches/cacheimp/forum/skins/default/templates/users:874-939 -/osqa/branches/notification-config/forum/skins/default/templates/users:693-845 -END diff --git a/forum/skins/light/templates/users/.svn/entries b/forum/skins/light/templates/users/.svn/entries deleted file mode 100755 index f7a861d22061d2c92960358bb214e30d63155194..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/entries +++ /dev/null @@ -1,674 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/templates/users -http://svn.osqa.net/svnroot - - - -2012-06-26T22:10:09.453191Z -1273 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -suspend_user.html -file - - - - -2012-07-01T12:37:36.209376Z -b21e899a797a33cd505f2dc42a1ea8ac -2012-02-15T07:32:43.865108Z -1230 -jordan - - - - - - - - - - - - - - - - - - - - - -1533 - -recent.html -file - - - - -2012-07-01T12:37:36.209376Z -7979a76f852a177f6c0277e3877449d3 -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -286 - -edit.html -file - - - - -2012-07-01T12:37:36.209376Z -17fc8914ff3ed0a61560b51e40524726 -2011-12-15T19:46:30.210804Z -1212 -jordan - - - - - - - - - - - - - - - - - - - - - -4642 - -subscriptions_settings.html -file - - - - -2012-07-01T12:37:36.209376Z -6e9aa829b9be6a16c8c8d61a78f87b33 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -3525 - -tabs.html -file - - - - -2012-07-01T12:37:36.209376Z -7626ce13a69abc940e45a03e4ffa8be7 -2010-06-22T13:13:26.249316Z -440 -hernani - - - - - - - - - - - - - - - - - - - - - -469 - -reputation.html -file - - - - -2012-07-01T12:37:36.213376Z -0aa9fe9d3c004ffe5c4f3f7f80bbb578 -2012-04-09T20:19:56.824352Z -1247 -jordan - - - - - - - - - - - - - - - - - - - - - -2046 - -questions.html -file - - - - -2012-07-01T12:37:36.213376Z -d7ce6fe70094ae5add292924563b034e -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -385 - -info.html -file - - - - -2012-07-01T12:37:36.213376Z -70f9859deb2923160a2f8f5909034429 -2012-06-26T22:10:09.453191Z -1273 -jordan - - - - - - - - - - - - - - - - - - - - - -5046 - -activity.html -file - - - - -2012-07-01T12:37:36.213376Z -bcea13d398304d1b22d478ce75f65f3e -2010-05-07T01:15:39.920263Z -156 -hernani - - - - - - - - - - - - - - - - - - - - - -289 - -stats.html -file - - - - -2012-07-01T12:37:36.213376Z -9ee6dc62798ae42720ed7969ab05719d -2012-03-25T00:18:56.135986Z -1237 -jordan - - - - - - - - - - - - - - - - - - - - - -6952 - -votes.html -file - - - - -2012-07-01T12:37:36.213376Z -889ca1045cd17cabdde1883d415fe191 -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - - - - - - - - -1196 - -signature.html -file - - - - -2012-07-01T12:37:36.213376Z -a39120e11b29e50f262fbb8a5db5c9c6 -2010-10-08T01:13:51.618729Z -603 -hernani - - - - - - - - - - - - - - - - - - - - - -1386 - -preferences.html -file - - - - -2012-07-01T12:37:36.213376Z -994011658e4ca4ae31f73d1daf21a63e -2011-07-03T01:15:43.874064Z -1099 -jordan - - - - - - - - - - - - - - - - - - - - - -910 - -karma_bonus.html -file - - - - -2012-07-01T12:37:36.213376Z -41c5ba2dfd0eee4aa7d3f3609c1adeb2 -2010-07-05T10:29:48.409438Z -487 -hernani - - - - - - - - - - - - - - - - - - - - - -307 - -users.html -file - - - - -2012-07-01T12:37:36.213376Z -cc31a814b3a6e5ae4ca28b8be6695887 -2010-07-07T12:47:35.738503Z -497 -hernani - - - - - - - - - - - - - - - - - - - - - -1738 - -subscriptions_management.html -file - - - - -2012-07-01T12:37:36.213376Z -1abc85aeef1999b5086c564b110a99da -2010-07-16T20:37:51.870673Z -544 -qw3rty - - - - - - - - - - - - - - - - - - - - - -904 - -menu.html -file - - - - -2012-07-01T12:37:36.213376Z -740297be1eaff953cbf71500de40ad13 -2010-07-05T10:29:48.409438Z -487 -hernani - - - - - - - - - - - - - - - - - - - - - -330 - -online_users.html -file - - - - -2012-07-01T12:37:36.213376Z -37f4658d73f41815d81a634dfd94bb0d -2010-08-20T21:14:54.431991Z -565 -court - - - - - - - - - - - - - - - - - - - - - -1716 - -subscriptions.html -file - - - - -2012-07-01T12:37:36.213376Z -d4b2f187cf673d65bb7f1a1461fd010a -2011-07-18T21:25:12.669434Z -1124 -jordan - - - - - - - - - - - - - - - - - - - - - -1680 - diff --git a/forum/skins/light/templates/users/.svn/text-base/activity.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/activity.html.svn-base deleted file mode 100755 index 0b6a9142d859da60441008c5b48fe89f72afe876..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/activity.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load extra_tags %} -{% load humanize %} -{% load extra_tags %} - -<div class="action_container"> - <div class="action_body"> - {{ describe }} - </div> - <div class="action_date" style="text-align: right;"> - {% diff_date action.action_date %} - </div> -</div> \ No newline at end of file diff --git a/forum/skins/light/templates/users/.svn/text-base/edit.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/edit.html.svn-base deleted file mode 100755 index ce54c773e6633b551b7f7414a34ff0e97e4a4843..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/edit.html.svn-base +++ /dev/null @@ -1,108 +0,0 @@ -{% extends "base_content.html" %} -<!-- user_edit.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Edit user profile" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript">google.load("jquery", "1.4.2");google.load("jqueryui", "1.8.1");</script> - - <link rel="stylesheet" href="http://jquery-ui.googlecode.com/svn/tags/latest/themes/base/jquery-ui.css" type="text/css" media="all" /> - <link rel="stylesheet" href="http://static.jquery.com/ui/css/demo-docs-theme/ui.theme.css" type="text/css" media="all" /> - - <script type="text/javascript"> - $().ready(function(){ - $("#id_birthday").datepicker({ - changeMonth: true, - changeYear: true, - dateFormat: 'yy-mm-dd', - minDate: null, - maxDate: '0M 0D', - yearRange: '1920:2010' - }); - - $("#nav_profile").attr('className',"on"); - $("#cancel").bind('click', function(){history.go(-1);}) - }); - </script> - {% block userjs %} - {% endblock %} -{% endblock %} -{% block content %} -<div id="main-bar" class="headNormal"> - {{ user.username }} - {% trans "edit profile" %} -</div> -<div id="main-body" style="width:100%;padding-top:10px"> - <form name="" action="{% url edit_user user.id user.username|slugify %}" method="post"> - {% csrf_token %} - <div id="left" style="float:left;width:180px"> - {% if user.email %} - {% gravatar user 128 %} - {% else %} - <img src="{% media "/media/images/nophoto.png" %}"> - {% endif %} - <div style="padding:20px 0 0 20px;font-weight:bold;font-size:150%"> - <a href="http://www.gravatar.com/" target="_blank" - title="gravatar {% trans "image associated with your email address" %}">{% trans "gravatar" %}</a> - </div> - </div> - - <div id="askform" style="float:right;width:750px;text-align:left;"> - <h2>{% trans "Registered user" %}</h2> - <table class="user-details"> - <tr> - <th width="100px"></th> - <th></th> - </tr> - <tr style="height:35px"> - <td>{% trans "Screen Name" %}:</td> - <td> - {% if form.username %} - {{ form.username }} <span class="form-error"></span> {{ form.username.errors }} - {% else %} - {{ user.username }} - {% endif %} - </td> - </tr> - - <tr style="height:35px"> - <td>{{ form.email.label_tag }}:</td> - <td>{{ form.email }} <span class="form-error"></span> {{ form.email.errors }} </td> - </tr> - <tr style="height:35px"> - <td></td> - <td class="title-desc">{{ form.email.help_text }}</td> - </tr> - <tr style="height:35px"> - <td>{{ form.realname.label_tag }}:</td> - <td>{{ form.realname }} <span class="form-error"></span> {{ form.realname.errors }} </td> - </tr> - <tr style="height:35px"> - <td>{{ form.website.label_tag }}:</td> - <td>{{ form.website }} <span class="form-error"></span> {{ form.website.errors }} </td> - </tr> - <tr style="height:35px"> - <td>{{ form.city.label_tag }}:</td> - <td>{{ form.city }} <span class="form-error"></span> {{ form.city.errors }} </td> - </tr> - <tr style="height:35px"> - <td>{{ form.birthday.label_tag }}:</td> - <td>{{ form.birthday }} <span class="form-error"></span> {{ form.birthday.errors }} </td> - </tr> - <tr> - <td style="vertical-align:top">{{ form.about.label_tag }}:</td> - <td>{{ form.about }} <span class="form-error"></span> {{ form.about.errors }} </td> - </tr> - - </table> - <div style="margin:30px 0 60px 0"> - <input type="submit" value="{% trans "Update" %}" class="submit" > - <input id="cancel" type="button" value="{% trans "Cancel" %}" class="submit" > - - </div> - </div> - </form> - -</div> -{% endblock %} -<!-- end user_edit.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/info.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/info.html.svn-base deleted file mode 100755 index 39f3b7d869d17d4f576ff9a4e1f6dc18c02ef5e0..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/info.html.svn-base +++ /dev/null @@ -1,125 +0,0 @@ -<!-- user_info.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load smart_if %} -{% load i18n %} -{% load markup %} -{% load user_tags %} - -<div id="subheader" class="headUser{% if view_user.is_suspended %} suspended-user{% endif %}"> - {{view_user.decorated_name}} -</div> -<table class="user-info-table"> - <tr> - <td width="180" style="vertical-align:middle;text-align:center;"> - <table width="100%"> - <tr> - <td> - {% gravatar view_user 128 %} - </td> - </tr> - <tr> - <td align="center"> - {% if not view_user.is_suspended %} - <div class="scoreNumber" id="user-reputation">{{view_user.reputation|intcomma}}</div> - <p><b style="color:#777;">{% trans "reputation" %}</b></p> - {% else %} - <div class="scoreNumber">{% trans "Suspended" %}</div> - <p>{{ view_user.suspension.extra.publicmsg }}</p> - {% endif %} - </td> - </tr> - </table> - </td> - <td width="360" style="vertical-align: top;"> - {% if can_view_private %}{% user_menu request.user view_user %}{% endif %} - <table class="user-details"> - <tr> - <th colspan="2" align="left"> - <h3> - {% if view_user.is_superuser %} - {% trans "Administrator" %} - {% else %} - {% if view_user.is_staff %} - {% trans "Moderator" %} - {% else %} - {% trans "Registered user" %} - {% endif %} - {% endif %} - </h3> - </th> - </tr> - {% if view_user.real_name %} - <tr> - <td>{% trans "real name" %}</td> - <td><b>{{view_user.real_name}}</b></td> - </tr> - {% endif %} - <tr> - <td>{% trans "member for" %}</td> - <td><strong>{% diff_date view_user.date_joined %}</strong></td> - </tr> - {% if view_user.last_seen %} - <tr> - <td>{% trans "last seen" %}</td> - <td><strong title="{{ view_user.last_activity }}">{% diff_date view_user.last_activity %}</strong></td> - </tr> - {% endif %} - {% if view_user.website %} - <tr> - <td>{% trans "user's website" %}</td> - <td><a rel="nofollow" target="_blank" href="{{view_user.website}}">{{view_user.website}}</a></td> - </tr> - {% endif %} - {% if view_user.location %} - <tr> - <td>{% trans "location" %}</td> - <td>{{view_user.location}}</td> - </tr> - {% endif %} - {% if view_user.date_of_birth%} - <tr> - <!--todo - redo this with blocktrans --> - {% if view_user.date_of_birth.year != 1900%} - <td>{% trans "age" %}</td> - <td>{% get_age view_user.date_of_birth %} {% trans "age unit" %}</td> - {% endif %} - </tr> - {% endif %} - {% if can_view_private %} - <tr> - <td>{% trans "email" %}</td> - <td> - <a href="mailto:{{ view_user.email }}">{{ view_user.email }}</a> - {% if not view_user.email_isvalid %} - ({% trans "not validated" %}) - {% ifequal request.user view_user %} - </td></tr><tr><td></td><td><a href="{% url send_validation_email %}">{% trans "Send me a validation link." %}</a> - {% endifequal %} - {% endif %} - </td> - </tr> - {% endif %} - <!-- - {% if votes_today_left %} - <tr> - <td>{% trans "todays unused votes" %}</td> - <td><strong class="darkred">{{ votes_today_left }}</strong> {% trans "votes left" %}</td> - </tr> - {% endif %} - --> - </table> - </td> - <td width="380"> - {% if not view_user.is_suspended %} - <div class="user-about"> - {% if view_user.about %} - {{view_user.about|markdown}} - {% endif %} - </div> - {% endif %} - </td> - </tr> -</table> -<!-- end user_info.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/karma_bonus.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/karma_bonus.html.svn-base deleted file mode 100755 index b39c276f33dccca59341bd2fe6cf9f39b6c90f8f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/karma_bonus.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load i18n %} - -<table> - <tr> - <th>{% trans "Points" %}:</th> - <td><input type="text" id="points-to-award" name="points" value="1" /></td> - </tr> - <tr> - <th>{% trans "Message" %}:</th> - <td><textarea id="award-message" name="message"></textarea></td> - </tr> -</table> \ No newline at end of file diff --git a/forum/skins/light/templates/users/.svn/text-base/menu.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/menu.html.svn-base deleted file mode 100755 index 24d213d06cb72e9dfaa44759107c7830bbf5187e..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/menu.html.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -{% load i18n smart_if ui_registry %} - -<div id="user-menu-container" class="context-menu"> - <span id="user-menu" class="context-menu-trigger">{% trans "User tools" %} ▼</span> - <ul id="user-menu-dropdown" class="context-menu-dropdown"> - {% loadregistry user_menu %}{% endloadregistry %} - </ul> -</div> diff --git a/forum/skins/light/templates/users/.svn/text-base/online_users.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/online_users.html.svn-base deleted file mode 100755 index 903e89517f646d14d41e3c45d58d7af81feefc36..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/online_users.html.svn-base +++ /dev/null @@ -1,54 +0,0 @@ -{% extends "base_content.html" %} -<!-- users.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Users Online" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - //todo move javascript out - $().ready(function(){ - $("#type-user").attr('checked',true); - var orderby = "{{ tab_id }}"; - $("#sort_" + orderby).attr('className',"on"); - - Hilite.exact = false; - Hilite.elementid = "main-body"; - Hilite.debug_referrer = location.href; - }); - </script> -{% endblock %} -{% block content %} -<div class="tabBar"> - <div class="headUsers">{% trans "Users Online" %}</div> - {{ users.paginator.sort_tabs }} -</div> -<div id="main-body" style="width:100%"> - <p> - {% if suser %} - {% blocktrans %}users matching query {{suser}}:{% endblocktrans %} - {% endif %} - - {% if not users.paginator.count %} - <span>{% trans "Nothing found." %}</span> - {% endif %} - </p> - <div class="userList"> - {% for user in users.paginator.page %} - <div class="user"> - <ul> - <li class="thumb"><a href="{{ user.get_profile_url }} ">{% gravatar user 32 %}</a></li> - <li><a {% if user.is_suspended %}class="suspended-user" {% endif %}href="{{ user.get_profile_url }}">{{ user.decorated_name }}</a></li> - <li>{% get_score_badge user %}</li> - </ul> - </div> - {% endfor %} - </div> -</div> -{% endblock %} -{% block tail %} -<div class="pager"> - {{ users.paginator.page_numbers }} -</div> -{% endblock %} -<!-- end users.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/preferences.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/preferences.html.svn-base deleted file mode 100755 index 68a547fc68ac2995fdb6d93e69cf1b6bbfa1ab22..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/preferences.html.svn-base +++ /dev/null @@ -1,30 +0,0 @@ -{% extends "user.html" %} -{% load i18n %} -{% load extra_tags %} - -{% block usercontent %} - <h2>{% trans "Preferences" %}</h2> - <div class='inline-block'> - <form method="POST"> - {% csrf_token %} - <p class="message"> - {% trans "Here you can set some personal preferences." %} - </p> - {{ form.errors }} - <table class="form-as-table"> - <tr> - <td colspan="2"> - <strong>{% trans "Navigation:" %}</strong> - </td> - </tr> - <tr> - <td>{{ form.sticky_sorts }}</td> - <td>{% trans "Always remember the sort order I apply to the lists I view" %}</td> - </tr> - </table> - <div class="submit-row"> - <input type="submit" class="submit" name="save" value="{% trans "Save" %}"/> - </div> - </form> - </div> -{% endblock %} \ No newline at end of file diff --git a/forum/skins/light/templates/users/.svn/text-base/questions.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/questions.html.svn-base deleted file mode 100755 index 92de7cfac769b2d3a5325a6d4bbfbd1fd2aa651f..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/questions.html.svn-base +++ /dev/null @@ -1,14 +0,0 @@ -{% extends "user.html" %} - -{% load extra_tags question_list_tags i18n %} -{% block usercontent %} -<div class="user-stats-table"> -{% if favorites %} - {% for favorite in favorites %} - {% question_list_item favorite.node favorite_count=yes signature_type=badges %} - {% endfor %} -{% else %} - {% trans "No favorite questions to display." %} -{% endif %} -</div> -{% endblock %} diff --git a/forum/skins/light/templates/users/.svn/text-base/recent.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/recent.html.svn-base deleted file mode 100755 index 5098df6a6ac1a14c7c319a9e91a781dc05d1ebaa..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/recent.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% extends "user.html" %} - -{% load extra_tags %} -{% load user_tags %} -{% block usercontent %} - <div style="padding-top:5px;font-size:13px;"> - {% for act in activities %} - {% activity_item act request.user %} - {% endfor %} - </div> -{% endblock %} - diff --git a/forum/skins/light/templates/users/.svn/text-base/reputation.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/reputation.html.svn-base deleted file mode 100755 index fe06b6eae0fff222385d4401670a72485231a887..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/reputation.html.svn-base +++ /dev/null @@ -1,57 +0,0 @@ -{% extends "user.html" %} -<!-- user_reputation.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load user_tags %} -{% block userjs %} - <script type='text/javascript' src='{% media "/media/js/excanvas.min.js" %}'></script> - <script type='text/javascript' src='{% media "/media/js/jquery.flot.min.js" %}'></script> - - <script type="text/javascript"> - $().ready(function(){ - var d = {{ graph_data }}; - var placeholder = $("#diagram"); - - var plot = $.plot(placeholder, [d], { - xaxis: { mode: "time" }, - points: { show: true }, - lines: { show: true } - }); - }); - - </script> - - <style type="text/css"> - div.positiveReputation { - float: left; - min-width: 20px; - color: green; - padding-right: 5px; - } - div.negativeReputation { - float: left; - min-width: 20px; - color: red; - } - </style> -{% endblock %} -{% block usercontent %} - <div style="padding:5px;font-size:13px;"> - <div id="diagram" style="width:550px;height:250px;float:left"> - - </div> - <div style="float:right; width:385px; height:300px; overflow-y:auto;word-wrap:break-word;" > - {% for rep in reputation %} - <p style="clear:both"> - <div style="float:left;text-align:right;font-family:arial;font-weight:bold;background:#eee;padding:2px 10px 2px 10px;margin-right:5px"> - <div class="positiveReputation">{{ rep.positive }}</div> - <div class="negativeReputation">{{ rep.negative }}</div> - - </div> - {% activity_item rep.action request.user %}<br/> - </p> - {% endfor %} - </div> - </div> -{% endblock %}<!-- end user_reputation.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/signature.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/signature.html.svn-base deleted file mode 100755 index e8aebf3519d3223f761217a86af621f374c91eca..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/signature.html.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -{% load i18n extra_filters %}{% spaceless %} - -{% if not user.is_suspended %} - {% ifequal format "full" %} - - {% else %} - <a href="{{ user.get_absolute_url }}">{{ user.decorated_name }}</a> - <span class="score" title="{{ user.reputation }} {% trans "reputation" %}">{{ user.reputation|decorated_int:"" }}</span> - {% ifequal format "badges" %} - {% if user.gold %} - <span title="{{ user.gold }} {% trans "badges" %}"> - <span class="badge1">●</span> - <span class="badgecount">{{ user.gold }}</span> - </span> - {% endif %} - {% if user.silver %} - <span title="{{ user.silver }} {% trans "badges" %}"> - <span class="silver">●</span> - <span class="badgecount">{{ user.silver }}</span> - </span> - {% endif %} - {% if user.bronze %} - <span title="{{ user.bronze }} {% trans "badges" %}"> - <span class="bronze">●</span> - <span class="badgecount">{{ user.bronze }}</span> - </span> - {% endif %} - {% endifequal %} - {% endifequal %} -{% else %} - <a class="suspended-user" href="{{ user.get_absolute_url }}">{{ user.decorated_name }}</a>{% trans "(suspended)" %} -{% endif %} -{% endspaceless %} diff --git a/forum/skins/light/templates/users/.svn/text-base/stats.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/stats.html.svn-base deleted file mode 100755 index 358771dd59b912bc373ec93951daf41f07413dc8..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/stats.html.svn-base +++ /dev/null @@ -1,157 +0,0 @@ -{% extends "user.html" %} -<!-- user_stats.html --> -{% load i18n %} -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load question_list_tags %} - {% block usercontent %} - <div id="questionsBlock" class="userSection"> - <a name="questions"></a> - {% spaceless %} - <h2> - {% blocktrans count questions.paginator.count as counter %} - <span class="count">{{counter}}</span> Question - {% plural %} - <span class="count">{{counter}}</span> Questions - {% endblocktrans %} - <a class="feed-icon" style="background-image:url('{% media "media/images/feed-icon-small.png" %}');" - href="{{ view_user.get_asked_url }}?type=rss" title="{% trans "subscribe to question RSS feed" %}"></a> - </h2> - {% endspaceless %} - <div id="questionTabs">{{ questions.paginator.sort_tabs }}</div> - <div id="listA" class="user-stats-table"> - {% for question in questions.paginator.page %} - {% question_list_item question favorite_count=yes signature_type=badges %} - {% endfor %} - </div> - <br clear="all"/> - <div class="pager">{{ questions.paginator.page_numbers }}</div> - <br clear="all"/> - </div> - - <div id="answersBlock" class="userSection"> - <a name="answers"></a> - {% spaceless %} - <h2> - {% blocktrans count answers.paginator.count as counter %} - <span class="count">{{counter}}</span> Answer - {% plural %} - <span class="count">{{counter}}</span> Answers - {% endblocktrans %} - </h2> - {% endspaceless %} - <div id="answerTabs">{{ answers.paginator.sort_tabs }}</div> - <div class="user-stats-table"> - {% for answer in answers.paginator.page %} - <div class="answer-summary"> - <a title="{{answer.question.title}}" - href="{{ answer.get_absolute_url }}"> - <span class="{% if answer.nis.accepted %}answered-accepted {% endif %} answer-votes" - title="{% blocktrans with answer.score as vote_count %}the answer has been voted for {{ vote_count }} times{% endblocktrans %} {% if answer.nis.accepted %}{% trans "this answer has been selected as correct" %}{%endif%}"> - {{ answer.score }} - </span> - </a> - <div class="answer-link"> - {% spaceless %} - <a href="{{ answer.get_absolute_url }}">{{answer.headline}}</a> - {% endspaceless %} - </div> - </div> - {% endfor %} - </div> - <br clear="all"/> - <div class="pager">{{ answers.paginator.page_numbers }}</div> - <br clear="all"/> - </div> - - - <a name="votes"></a> - {% spaceless %} - <h2> - {% blocktrans count total_votes as cnt %} - <span class="count">{{cnt}}</span> Vote - {% plural %} - <span class="count">{{cnt}}</span> Votes - {% endblocktrans %} - </h2> - {% endspaceless %} - <div class="user-stats-table"> - <table> - <tr> - <td width="60"> - <img style="cursor: default;" src="{% media "/media/images/vote-arrow-up-on.png" %}" alt="{% trans "thumb up" %}" /> - <span title="{% trans "user has voted up this many times" %}" class="vote-count">{{up_votes}}</span> - - </td> - <td width="60"> - <img style="cursor: default;" src="{% media "/media/images/vote-arrow-down-on.png" %}" alt="{% trans "thumb down" %}" /> - <span title="{% trans "user voted down this many times" %}" class="vote-count">{{down_votes}}</span> - - </td> - </tr> - </table> - </div> - <a name="tags"></a> - {% spaceless %} - <h2> - {% blocktrans count user_tags|length as counter %} - <span class="count">{{counter}}</span> Tag - {% plural %} - <span class="count">{{counter}}</span> Tags - {% endblocktrans %} - </h2> - {% endspaceless %} - <div class="user-stats-table"> - <table class="tags"> - <tr style="vertical-align: top;"> - <td valign="top" style="padding-right: 20px;"> - {% for tag in user_tags%} - <a rel="tag" - class="tag-link-{{ tag.name }}" - title="{% blocktrans with tag.name as tag_name %}see other questions with {{view_user}}'s contributions tagged '{{ tag_name }}' {% endblocktrans %}" - href="{% url tag_questions tag|urlencode %}?user={{view_user.username}}">{{tag.name}}</a> - <span class="tag-number">× {{ tag.user_tag_usage_count|intcomma }}</span><br/> - {% if forloop.counter|divisibleby:"10" %} - </td> - <td width="180" valign="top"> - {% endif %} - {% endfor %} - </td> - </tr> - </table> - </div> - <a name="badges"></a> - {% spaceless %} - <h2> - {% blocktrans count total_awards as counter %} - <span class="count">{{counter}}</span> Badge - {% plural %} - <span class="count">{{counter}}</span> Badges - {% endblocktrans %} - </h2> - {% endspaceless %} - <div class="user-stats-table"> - <table> - <tr style="vertical-align: top;"> - <td style="line-height:35px; padding-right: 20px;"> - {% for award, count in awards %} - {% spaceless %} - <a href="{% url badges %}{{award.id}}/{{award.name|slugify}}" title="{{ award.description }}" class="medal"> - <span class="badge{{ award.type }}">●</span> {{ award.name }} - </a> - {% ifnotequal count 1 %} - <span class="tag-number"> × {{ count|intcomma }}</span> - {% endifnotequal %}<br/> - {% if forloop.counter|divisibleby:"6" %} - </td> - <td width="180" style="line-height:35px"> - {% endif %} - {% endspaceless %} - {% endfor %} - </td> - </tr> - </table> - </div> -{% endblock %} -<!-- end user_stats.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/subscriptions.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/subscriptions.html.svn-base deleted file mode 100755 index 5d71919319e8c59738d347ccceb6d0e0546f94d2..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/subscriptions.html.svn-base +++ /dev/null @@ -1,53 +0,0 @@ -{% extends "user.html" %} -<!-- user_subscriptions.html --> -{% load i18n %} -{% load extra_tags %} -{% load humanize %} - -{% block userjs %} - <script type="text/javascript"> - function enableSettings() { - $("div#subscriptions_settings").show(); - $("div#subscriptions_management").hide(); - - $("a#subscriptions_settings_button").addClass('on'); - $("a#subscriptions_management_button").removeClass("on"); - - //location.reload(true); - } - - function enableManagement() { - $("div#subscriptions_settings").hide(); - $("div#subscriptions_management").show(); - - $("a#subscriptions_settings_button").removeClass('on'); - $("a#subscriptions_management_button").addClass('on'); - - //location.reload(true); - } - </script> -{% endblock %} - -{% block usercontent %} - <br/> - - <div id="navBar"><div class="tabsA"> - <a href='{{ view_user.get_user_subscriptions_url }}?tab=settings' id="subscriptions_settings_button" {% if not manage_open %}class="on"{% endif %}>Settings</a> - <a href='{{ view_user.get_user_subscriptions_url }}?tab=manage' id="subscriptions_management_button" {% if manage_open %}class="on"{% endif %}>Manage</a> - </div></div> - - <br/> - - {% if not manage_open %} - <div id="subscriptions_settings" > - {% include "users/subscriptions_settings.html" %} - </div> - {% endif %} - - {% if manage_open %} - <div id="subscriptions_management" > - {% include "users/subscriptions_management.html" %} - </div> - {% endif %} -{% endblock %} -<!-- end user_subscriptions.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/subscriptions_management.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/subscriptions_management.html.svn-base deleted file mode 100755 index a0d921e2f77cc8358bcf7b7d05b6d1eb6d9e3eca..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/subscriptions_management.html.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -{% load i18n %} -{% load question_list_tags %} - -<div id="subscription_list" align="left"> - <h2> - {% trans "Manage your current subscriptions" %} - <span style="font-size:11px"> - {% if auto %} - <a href='{% url user_subscriptions id=view_user.id slug=view_user.username|slugify %}?auto=False&tab=manage'>{% trans "don't show auto-subscribe" %}</a> - {% else %} - <a href='{% url user_subscriptions id=view_user.id slug=view_user.username|slugify %}?auto=True&tab=manage'>{% trans "show auto-subscribe" %}</a> - {% endif %} - </span> - </h2> - - {% for subscription in subscriptions.paginator.page %} - {% subscription_list_item subscription subscription.question %} - {% endfor %} - - <div class="pager">{{ subscriptions.paginator.page_numbers }}</div> -</div> - -<br /> -<br /> - -<!-- end user_subscriptions.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/subscriptions_settings.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/subscriptions_settings.html.svn-base deleted file mode 100755 index 7675db3fde47b3a6e061f3aee472abeaf11443b9..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/subscriptions_settings.html.svn-base +++ /dev/null @@ -1,108 +0,0 @@ -{% load i18n %} -{% load extra_tags %} -{% load humanize %} - -<h2>{% trans "Notifications and subscription settings" %}</h2> -<p class="message"> - {% blocktrans %} - Here you can decide which types of notifications you wish to receive, and their frequency.<br /> - {% endblocktrans %} -</p> -<div class='inline-block'> -<form method="POST"> - {% csrf_token %} - {{ form.errors }} - <table class="form-as-table"> - <tr> - <td colspan="2"> - <strong>{% trans "Notify me when:" %}</strong> - </td> - </tr> - <tr> - <td>{% trans "A new member joins" %}</td> - <td>{{ form.member_joins }}</td> - </tr> - <tr> - <td>{% trans "A new question is posted" %}</td> - <td>{{ form.new_question }}</td> - </tr> - <tr> - <td>{% trans "A new question matching my interesting tags is posted" %}</td> - <td>{{ form.new_question_watched_tags }}</td> - </tr> - <tr> - <td>{% trans "There's an update on one of my subscriptions" %}</td> - <td >{{ form.subscribed_questions }}</td> - </tr> - </table> - <p> </p> - <table class="form-as-table check-table"> - <tr> - <td colspan="3"> - <strong>{% trans "Auto subscribe me to:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.questions_viewed }}{% trans "Questions I view" %} - </td> - <td> - {{ form.all_questions_watched_tags }}{% trans "All questions matching my interesting tags" %} - </td> - <td> - {{ form.all_questions }}{% trans "All questions" %} - </td> - </tr> - </table> - <p> </p> - <table class="form-as-table check-table"> - <tr> - <td colspan="2"> - <strong>{% trans "On my subscriptions, notify me when:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.notify_answers }}{% trans "An answer is posted" %} - </td> - <td> - {{ form.notify_comments_own_post }}{% trans "A comment on one of my posts is posted" %} - </td> - </tr> - <tr> - <td> - {{ form.notify_comments }}{% trans "A comment is posted" %} - </td> - <td> - {{ form.notify_accepted }}{% trans "An answer is accepted" %} - </td> - </tr> - </table> - <p> </p> - <table class="form-as-table check-table"> - <tr> - <td> - <strong>{% trans "Daily Digest:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.send_digest }}{% trans "Send me the daily digest with information about the site activity" %} - </td> - </tr> - <tr> - <td> - <strong>{% trans "Notify When I'm Discussed:" %}</strong> - </td> - </tr> - <tr> - <td> - {{ form.notify_reply_to_comments }}{% trans "Notify me when someone replies to one of my comments on any post using the <pre>@username</pre> notation" %} - </td> - </tr> - </table> - <div class="submit-row"> - <input type="submit" class="submit" name="save" value="{% trans "Update" %}"/> - </div> -</form> -</div> diff --git a/forum/skins/light/templates/users/.svn/text-base/suspend_user.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/suspend_user.html.svn-base deleted file mode 100755 index 4dd17f22c381fe2b6594fb4d89c0abdc74d7820d..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/suspend_user.html.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -{% load i18n %} - -<table> - <caption><h2>{% trans "Suspend user" %}</h2></caption> - <tr> - <td> - <select name="bantype" id="bantype"> - <option value="indefinitely">{% trans "Indefinitely" %}</option> - <option value="forxdays">{% trans "For X days" %}</option> - </select> - </td> - </tr> - <tr id="forxdays" style="display: none"> - <td> - {% trans "Suspend for" %}<input type="text" size="3" style="width: 30px; height: 1.2em; margin: 0 0.5em 0 0.5em; font-size: 1em;" name="forxdays" value="3" />{% trans "days" %} - </td> - </tr> - <tr> - <td> - <p><b>{% trans "Public message" %}:</b></p> - </td> - </tr> - <tr> - <td> - <textarea rows="3" name="publicmsg" cols="35"></textarea><br /> - <small>{% trans "This message will be visible through the user activity log." %}</small> - </td> - </tr> - <tr> - <td> - <p><b>{% trans "Private message" %}:</b></p> - </td> - </tr> - <tr> - <td> - <textarea rows="3" name="privatemsg" cols="35"></textarea><br /> - <small>{% trans "If set, only the suspended user will see this message." %}</small> - </td> - </tr> -</table> -<script type="text/javascript"> - $('#bantype').change(function() { - if ($(this).val() == 'forxdays') { - $('#forxdays').slideDown('fast'); - } else { - $('#forxdays').slideUp('fast'); - } - }); -</script> \ No newline at end of file diff --git a/forum/skins/light/templates/users/.svn/text-base/tabs.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/tabs.html.svn-base deleted file mode 100755 index d3d8d90a560509414986edea17cf99cca5c037e8..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/tabs.html.svn-base +++ /dev/null @@ -1,12 +0,0 @@ -{% load extra_filters ui_registry i18n %} -{% with view_user.username|slugify as user_slug %} -<div class="tabBar"> - <div class="tabsA"> - {% loopregistry profile_tabs %}{% spaceless %} - <a title="{{ tab_description }}" id="{{ tab_name }}" {% ifequal active_tab tab_name %}class="on"{% endifequal %} href="{{ tab_url }}"> - {{ tab_title }} - </a> - {% endspaceless %}{% endloopregistry %} - </div> -</div> -{% endwith %} diff --git a/forum/skins/light/templates/users/.svn/text-base/users.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/users.html.svn-base deleted file mode 100755 index d7e01dbc8a5c22efeffdbfbaf29227abbca73246..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/users.html.svn-base +++ /dev/null @@ -1,54 +0,0 @@ -{% extends "base_content.html" %} -<!-- users.html --> -{% load extra_tags %} -{% load humanize %} -{% load i18n %} -{% block title %}{% spaceless %}{% trans "Users" %}{% endspaceless %}{% endblock %} -{% block forejs %} - <script type="text/javascript"> - //todo move javascript out - $().ready(function(){ - $("#type-user").attr('checked',true); - var orderby = "{{ tab_id }}"; - $("#sort_" + orderby).attr('className',"on"); - - Hilite.exact = false; - Hilite.elementid = "main-body"; - Hilite.debug_referrer = location.href; - }); - </script> -{% endblock %} -{% block content %} -<div class="tabBar"> - <div class="headUsers">{% trans "Users" %}</div> - {{ users.paginator.sort_tabs }} -</div> -<div id="main-body" style="width:100%"> - <p> - {% if suser %} - {% blocktrans %}users matching query {{suser}}:{% endblocktrans %} - {% endif %} - - {% if not users.paginator.count %} - <span>{% trans "Nothing found." %}</span> - {% endif %} - </p> - <div class="userList"> - {% for user in users.paginator.page %} - <div class="user"> - <ul> - <li class="thumb"><a href="{{ user.get_profile_url }} ">{% gravatar user 32 %}</a></li> - <li><a {% if user.is_suspended %}class="suspended-user" {% endif %}href="{{ user.get_profile_url }}">{{ user.decorated_name }}</a></li> - <li>{% get_score_badge user %}</li> - </ul> - </div> - {% endfor %} - </div> -</div> -{% endblock %} -{% block tail %} -<div class="pager"> - {{ users.paginator.page_numbers }} -</div> -{% endblock %} -<!-- end users.html --> diff --git a/forum/skins/light/templates/users/.svn/text-base/votes.html.svn-base b/forum/skins/light/templates/users/.svn/text-base/votes.html.svn-base deleted file mode 100755 index 7d6b3483c1b34771cead7aca88df9a50231b91f3..0000000000000000000000000000000000000000 --- a/forum/skins/light/templates/users/.svn/text-base/votes.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% extends "user.html" %} -<!-- user_votes.html --> -{% load extra_tags %} -{% load extra_filters %} -{% load humanize %} -{% load i18n %} - -{% block usercontent %} - <div style="padding-top:5px;font-size:13px;"> - {% for vote in votes %} - <div style="clear:both;line-height:20px" > - <div style="width:150px;float:left">{% diff_date vote.voted_at 3 %}</div> - <div style="width:30px;float:left"> - {% ifequal vote.value 1 %} - <img src="{% media "/media/images/vote-arrow-up-on.png" %}" title="{% trans "upvote" %}"> - {% else %} - <img src="{% media "/media/images/vote-arrow-down-on.png" %}" title="{% trans "downvote" %}"> - {% endifequal %} - </div> - <div style="float:left;overflow:hidden;width:750px"> - <span class="{{ vote.node.node_type }}-title-link"><a href="{{ vote.node.get_absolute_url }}">{{ vote.node.headline }}</a></span> - <div style="height:5px"></div> - </div> - </div> - {% endfor %} - </div> -{% endblock %} -<!-- end user_votes.html --> diff --git a/forum/skins/light/tests/.svn/all-wcprops b/forum/skins/light/tests/.svn/all-wcprops deleted file mode 100755 index 604832ec5db31f2f96f024cf9421a0e6b4548d8d..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests -END -registration_login.py -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/registration_login.py -END -faq_page.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/faq_page.py -END -tags_page.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/tags_page.py -END -users_page.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/users_page.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum/skins/default/tests/__init__.py -END diff --git a/forum/skins/light/tests/.svn/entries b/forum/skins/light/tests/.svn/entries deleted file mode 100755 index 71a5f209cc3aa2f4e0571c571fc5234ab62b0e1d..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/entries +++ /dev/null @@ -1,198 +0,0 @@ -10 - -dir -1273 -http://svn.osqa.net/svnroot/osqa/trunk/forum/skins/default/tests -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-07-01T12:37:36.165376Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -registration_login.py -file - - - - -2012-07-01T12:37:36.165376Z -eda0a5e01feae6a47eaa2d0bf249ebf0 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1648 - -faq_page.py -file - - - - -2012-07-01T12:37:36.165376Z -a37db61d54f700ac4275fd7592b62fb3 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -647 - -tags_page.py -file - - - - -2012-07-01T12:37:36.165376Z -c5afd287aed12b4583041507a94cf6e0 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -997 - -users_page.py -file - - - - -2012-07-01T12:37:36.165376Z -5f17b4a694f07117e4ac788918ed294d -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1333 - diff --git a/forum/skins/light/tests/.svn/prop-base/__init__.py.svn-base b/forum/skins/light/tests/.svn/prop-base/__init__.py.svn-base deleted file mode 100755 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/light/tests/.svn/prop-base/faq_page.py.svn-base b/forum/skins/light/tests/.svn/prop-base/faq_page.py.svn-base deleted file mode 100755 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/prop-base/faq_page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/light/tests/.svn/prop-base/registration_login.py.svn-base b/forum/skins/light/tests/.svn/prop-base/registration_login.py.svn-base deleted file mode 100755 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/prop-base/registration_login.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/light/tests/.svn/prop-base/tags_page.py.svn-base b/forum/skins/light/tests/.svn/prop-base/tags_page.py.svn-base deleted file mode 100755 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/prop-base/tags_page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/light/tests/.svn/prop-base/users_page.py.svn-base b/forum/skins/light/tests/.svn/prop-base/users_page.py.svn-base deleted file mode 100755 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/prop-base/users_page.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum/skins/light/tests/.svn/text-base/__init__.py.svn-base b/forum/skins/light/tests/.svn/text-base/__init__.py.svn-base deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum/skins/light/tests/.svn/text-base/faq_page.py.svn-base b/forum/skins/light/tests/.svn/text-base/faq_page.py.svn-base deleted file mode 100755 index 573ed4ed5a26911422eba4eabc0cff0868eecc02..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/text-base/faq_page.py.svn-base +++ /dev/null @@ -1,21 +0,0 @@ -from selenium import selenium -import unittest, time, re - -class faq_page(unittest.TestCase): - def setUp(self): - self.verificationErrors = [] - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_faq_page(self): - sel = self.selenium - sel.open("/faq/") - try: self.failUnless(sel.is_text_present("FAQ")) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/skins/light/tests/.svn/text-base/registration_login.py.svn-base b/forum/skins/light/tests/.svn/text-base/registration_login.py.svn-base deleted file mode 100755 index 181d6e13ed64b2532fc46d7805b954d84617c940..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/text-base/registration_login.py.svn-base +++ /dev/null @@ -1,43 +0,0 @@ -from selenium import selenium -import unittest, time, re -import random - -class registration_login(unittest.TestCase): - def setUp(self): - rand_number = random.randrange(1, 10000) - self.verificationErrors = [] - self.account_name = 'TestAccount%d' % rand_number - self.account_email = 'test_account_%d@example.com' % rand_number - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_registration_login(self): - sel = self.selenium - sel.open("/account/signin/") - sel.click("link=Create account") - sel.wait_for_page_to_load("30000") - sel.type("id_username", "%s" % self.account_name) - sel.type("id_email", "%s" % self.account_email) - sel.type("id_password1", "test") - sel.type("id_password2", "test") - sel.click("bnewaccount") - sel.wait_for_page_to_load("30000") - sel.click("link=logout") - sel.wait_for_page_to_load("30000") - sel.click("btLogout") - sel.wait_for_page_to_load("30000") - sel.click("link=login") - sel.wait_for_page_to_load("30000") - sel.type("id_username", "%s" % self.account_name) - sel.type("id_password", "test") - sel.click("blogin") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_element_present("link=%s" % self.account_name)) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/skins/light/tests/.svn/text-base/tags_page.py.svn-base b/forum/skins/light/tests/.svn/text-base/tags_page.py.svn-base deleted file mode 100755 index 38e355085c85c3ec25469cb6fec4eafdb53c20ca..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/text-base/tags_page.py.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -from selenium import selenium -import unittest, time, re - -class tags_page(unittest.TestCase): - def setUp(self): - self.verificationErrors = [] - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_tags_page(self): - sel = self.selenium - sel.open("/") - sel.click("nav_tags") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_text_present("Tag list")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("by name")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("by popularity")) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/skins/light/tests/.svn/text-base/users_page.py.svn-base b/forum/skins/light/tests/.svn/text-base/users_page.py.svn-base deleted file mode 100755 index b4ff3458c1d9fecb955214844c9014029b0bc39f..0000000000000000000000000000000000000000 --- a/forum/skins/light/tests/.svn/text-base/users_page.py.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -from selenium import selenium -import unittest, time, re - -class users_page(unittest.TestCase): - def setUp(self): - self.verificationErrors = [] - self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") - self.selenium.start() - - def test_users_page(self): - sel = self.selenium - sel.open("/") - sel.click("nav_users") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_text_present("Users")) - except AssertionError, e: self.verificationErrors.append(str(e)) - sel.click("nav_users") - sel.wait_for_page_to_load("30000") - try: self.failUnless(sel.is_text_present("karma")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("recent")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("oldest")) - except AssertionError, e: self.verificationErrors.append(str(e)) - try: self.failUnless(sel.is_text_present("by username")) - except AssertionError, e: self.verificationErrors.append(str(e)) - - def tearDown(self): - self.selenium.stop() - self.assertEqual([], self.verificationErrors) - -if __name__ == "__main__": - unittest.main() diff --git a/forum/templatetags/.svn/all-wcprops b/forum/templatetags/.svn/all-wcprops deleted file mode 100644 index 1050f0bfd2ff3c2fdf8b4a3cfa1e928a13b29169..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/all-wcprops +++ /dev/null @@ -1,65 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 52 -/svnroot/!svn/ver/1264/osqa/trunk/forum/templatetags -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/29/osqa/trunk/forum/templatetags/__init__.py -END -question_list_tags.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1240/osqa/trunk/forum/templatetags/question_list_tags.py -END -extra_tags.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1203/osqa/trunk/forum/templatetags/extra_tags.py -END -node_tags.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1264/osqa/trunk/forum/templatetags/node_tags.py -END -general_sidebar_tags.py -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/617/osqa/trunk/forum/templatetags/general_sidebar_tags.py -END -smart_if.py -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/17/osqa/trunk/forum/templatetags/smart_if.py -END -email_tags.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/940/osqa/trunk/forum/templatetags/email_tags.py -END -ui_registry.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/821/osqa/trunk/forum/templatetags/ui_registry.py -END -extra_filters.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1145/osqa/trunk/forum/templatetags/extra_filters.py -END -user_tags.py -K 25 -svn:wc:ra_dav:version-url -V 64 -/svnroot/!svn/ver/924/osqa/trunk/forum/templatetags/user_tags.py -END diff --git a/forum/templatetags/.svn/entries b/forum/templatetags/.svn/entries deleted file mode 100644 index 4f26b53503fbde27ef80f586d867a4cab746604b..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/entries +++ /dev/null @@ -1,368 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/templatetags -http://svn.osqa.net/svnroot - - - -2012-05-16T22:57:24.089581Z -1264 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -extra_filters.py -file - - - - -2012-06-22T20:34:43.272139Z -2803909957c0c076e8ac25cb036d1854 -2011-08-01T11:08:30.583184Z -1145 -jordan - - - - - - - - - - - - - - - - - - - - - -1550 - -user_tags.py -file - - - - -2012-06-22T20:34:43.272139Z -c63308bbef4d146395c454c380b320f7 -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -2423 - -__init__.py -file - - - - -2012-06-22T20:34:43.272139Z -a4e48da81ad75c32790bb1a29b901100 -2010-04-12T14:04:05.891154Z -29 -hernani - - - - - - - - - - - - - - - - - - - - - -190 - -question_list_tags.py -file - - - - -2012-06-22T20:34:43.272139Z -849b26e2b3a9ba2a8d54f63e7e8e9d15 -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - - - - - - - - -3230 - -extra_tags.py -file - - - - -2012-06-22T20:34:43.272139Z -7b3d2a3e6aee19bf92e78cdc4771f265 -2011-11-20T16:22:23.273899Z -1203 -jordan - - - - - - - - - - - - - - - - - - - - - -12187 - -node_tags.py -file - - - - -2012-06-22T20:34:43.276137Z -b2e2bc2f80b29d7e3c7120d181b5e805 -2012-05-16T22:57:24.089581Z -1264 -jordan - - - - - - - - - - - - - - - - - - - - - -10935 - -general_sidebar_tags.py -file - - - - -2012-06-22T20:34:43.276137Z -63e2fefce45d9fc4239e8129043e6a26 -2010-11-10T15:48:20.410108Z -617 -hernani - - - - - - - - - - - - - - - - - - - - - -1265 - -smart_if.py -file - - - - -2012-06-22T20:34:43.276137Z -28b1ce7586af46f1fbcb85dbd7b52201 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -12846 - -email_tags.py -file - - - - -2012-06-22T20:34:43.276137Z -1347a200c68fd70a12b411c07c2b243e -2011-04-07T11:22:50.636104Z -940 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -3284 - -ui_registry.py -file - - - - -2012-06-22T20:34:43.276137Z -148c518c177898ad68df90a17f357546 -2011-03-11T19:50:09.258286Z -821 -hernani - - - - - - - - - - - - - - - - - - - - - -2494 - diff --git a/forum/templatetags/.svn/prop-base/email_tags.py.svn-base b/forum/templatetags/.svn/prop-base/email_tags.py.svn-base deleted file mode 100644 index fc5e66748358d01be69f9fad5c3181360c4e81cb..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/prop-base/email_tags.py.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 335 -/osqa/branches/cacheimp/forum/templatetags/email_tags.py:874-939 -/osqa/branches/carpenter/forum/templatetags/email_tags.py:691-725 -/osqa/branches/hernani/forum/templatetags/email_tags.py:772-832 -/osqa/branches/jambazov/forum/templatetags/email_tags.py:675-831 -/osqa/branches/notification-config/forum/templatetags/email_tags.py:693-845 -END diff --git a/forum/templatetags/.svn/text-base/__init__.py.svn-base b/forum/templatetags/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 56a0b8b634c75969412bcaf378551fd7150302f3..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,7 +0,0 @@ -import re - -splitter = re.compile(r'\s*=\s*') -matcher = re.compile(r'^.+=.+$') - -def argument_parser(arguments): - return dict(splitter.split(s) for s in arguments if matcher.match(s)) \ No newline at end of file diff --git a/forum/templatetags/.svn/text-base/email_tags.py.svn-base b/forum/templatetags/.svn/text-base/email_tags.py.svn-base deleted file mode 100644 index 0699f15bfda7d6df1a89f025a0f112a12dc7ae2c..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/email_tags.py.svn-base +++ /dev/null @@ -1,118 +0,0 @@ -from django import template -from forum import settings -from forum.utils.mail import create_and_send_mail_messages -from django.template.defaulttags import url as default_url -import logging - -register = template.Library() - -class MultiUserMailMessage(template.Node): - def __init__(self, nodelist): - self.nodelist = nodelist - - def render(self, context): - recipients = context['recipients'] - messages = list() - - for recipient in recipients: - context['embeddedmedia'] = {} - context['recipient'] = recipient - self.nodelist.render(context) - messages.append((recipient, context['subject'], context['htmlcontent'], context['textcontent'], context['embeddedmedia'])) - - create_and_send_mail_messages(messages) - -@register.tag -def email(parser, token): - nodelist = parser.parse(('endemail',)) - parser.delete_first_token() - return MultiUserMailMessage(nodelist) - - - -class EmailPartNode(template.Node): - def __init__(self, nodelist, varname): - self.nodelist = nodelist - self.varname = varname - - def render(self, context): - context[self.varname] = self.nodelist.render(context).strip() - -@register.tag -def subject(parser, token): - nodelist = parser.parse(('endsubject',)) - parser.delete_first_token() - return EmailPartNode(nodelist, 'subject') - -def content(parser, token): - try: - tag_name, base = token.split_contents() - except ValueError: - try: - tag_name = token.split_contents()[0] - base = None - except: - raise template.TemplateSyntaxError, "%r tag requires at least two arguments" % token.contents.split()[0] - - nodelist = parser.parse(('end%s' % tag_name,)) - - if base: - base = template.loader.get_template(base) - - basenodes = base.nodelist - content = [i for i,n in enumerate(basenodes) if isinstance(n, template.loader_tags.BlockNode) and n.name == "content"] - if len(content): - index = content[0] - nodelist = template.NodeList(basenodes[0:index] + nodelist + basenodes[index:]) - - - parser.delete_first_token() - return EmailPartNode(nodelist, tag_name) - - -register.tag('htmlcontent', content) -register.tag('textcontent', content) - - -class EmbedMediaNode(template.Node): - def __init__(self, location, alias): - self.location = template.Variable(location) - self.alias = alias - - def render(self, context): - context['embeddedmedia'][self.alias] = self.location.resolve(context) - pass - - -@register.tag -def embedmedia(parser, token): - try: - tag_name, location, _, alias = token.split_contents() - except ValueError: - raise template.TemplateSyntaxError, "%r tag requires exactly four arguments" % token.contents.split()[0] - - return EmbedMediaNode(location, alias) - - -class FullUrlNode(template.Node): - def __init__(self, default_node): - self.default_node = default_node - - def render(self, context): - domain = settings.APP_BASE_URL - path = self.default_node.render(context) - return "%s%s" % (domain, path) - -@register.tag(name='fullurl') -def fullurl(parser, token): - default_node = default_url(parser, token) - return FullUrlNode(default_node) - - - - - - - - - diff --git a/forum/templatetags/.svn/text-base/extra_filters.py.svn-base b/forum/templatetags/.svn/text-base/extra_filters.py.svn-base deleted file mode 100644 index 8dea68c9c0d4c3c944c526450ba4fcafb73064e5..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/extra_filters.py.svn-base +++ /dev/null @@ -1,63 +0,0 @@ -from django import template -from django.utils.safestring import mark_safe -import logging -import markdown - -register = template.Library() - -@template.defaultfilters.stringfilter -@register.filter -def collapse(input): - return ' '.join(input.split()) - - -@register.filter -def can_edit_post(user, post): - return user.can_edit_post(post) - - -@register.filter -def decorated_int(number, cls="thousand"): - try: - number = int(number) # allow strings or numbers passed in - if number > 999: - thousands = float(number) / 1000.0 - - if number < 99500: - format = "%.1f" - else: - format = "%.0f" - - s = format % thousands - - return mark_safe("<span class=\"%s\">%sk</span>" % (cls, s)) - return number - except: - return number - -@register.filter -def or_preview(setting, request): - if request.user.is_superuser: - previewing = request.session.get('previewing_settings', {}) - if setting.name in previewing: - return previewing[setting.name] - - return setting.value - -@register.filter -def getval(map, key): - return map and map.get(key, None) or None - - -@register.filter -def contained_in(item, container): - return item in container - -@register.filter -def static_content(content, render_mode): - if render_mode == 'markdown': - return mark_safe(markdown.markdown(unicode(content), ["settingsparser"])) - elif render_mode == "html": - return mark_safe(unicode(content)) - else: - return unicode(content) \ No newline at end of file diff --git a/forum/templatetags/.svn/text-base/extra_tags.py.svn-base b/forum/templatetags/.svn/text-base/extra_tags.py.svn-base deleted file mode 100644 index 1acb96993cb312500f6ffe16d977e4709d1c6c1d..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/extra_tags.py.svn-base +++ /dev/null @@ -1,356 +0,0 @@ -import time -import os -import posixpath -import datetime -import math -import re -import logging -import random -from django import template -from django.utils.encoding import smart_unicode, force_unicode, smart_str -from django.utils.safestring import mark_safe -from django.utils import dateformat -from forum.models import Question, Answer, QuestionRevision, AnswerRevision, NodeRevision -from django.utils.translation import ugettext as _ -from django.utils.translation import ungettext -from django.utils import simplejson -from forum import settings -from django.template.defaulttags import url as default_url -from forum import skins -from forum.utils import html -from extra_filters import decorated_int -from django.core.urlresolvers import reverse - -register = template.Library() - -GRAVATAR_TEMPLATE = ('<img class="gravatar" width="%(size)s" height="%(size)s" ' -'src="https://secure.gravatar.com/avatar/%(gravatar_hash)s' -'?s=%(size)s&d=%(default)s&r=%(rating)s" ' -'alt="%(username)s\'s gravatar image" />') - -@register.simple_tag -def gravatar(user, size): - try: - gravatar = user['gravatar'] - username = user['username'] - except (TypeError, AttributeError, KeyError): - gravatar = user.gravatar - username = user.username - return mark_safe(GRAVATAR_TEMPLATE % { - 'size': size, - 'gravatar_hash': gravatar, - 'default': settings.GRAVATAR_DEFAULT_IMAGE, - 'rating': settings.GRAVATAR_ALLOWED_RATING, - 'username': template.defaultfilters.urlencode(username), - }) - - -@register.simple_tag -def get_score_badge(user): - return _get_score_badge(user) - -def _get_score_badge(user): - if user.is_suspended(): - return _("(suspended)") - - repstr = decorated_int(user.reputation, "") - - BADGE_TEMPLATE = '<span class="score" title="%(reputation)s %(reputationword)s">%(repstr)s</span>' - if user.gold > 0 : - BADGE_TEMPLATE = '%s%s' % (BADGE_TEMPLATE, '<span title="%(gold)s %(badgesword)s">' - '<span class="badge1">●</span>' - '<span class="badgecount">%(gold)s</span>' - '</span>') - if user.silver > 0: - BADGE_TEMPLATE = '%s%s' % (BADGE_TEMPLATE, '<span title="%(silver)s %(badgesword)s">' - '<span class="silver">●</span>' - '<span class="badgecount">%(silver)s</span>' - '</span>') - if user.bronze > 0: - BADGE_TEMPLATE = '%s%s' % (BADGE_TEMPLATE, '<span title="%(bronze)s %(badgesword)s">' - '<span class="bronze">●</span>' - '<span class="badgecount">%(bronze)s</span>' - '</span>') - BADGE_TEMPLATE = smart_unicode(BADGE_TEMPLATE, encoding='utf-8', strings_only=False, errors='strict') - return mark_safe(BADGE_TEMPLATE % { - 'reputation' : user.reputation, - 'repstr': repstr, - 'gold' : user.gold, - 'silver' : user.silver, - 'bronze' : user.bronze, - 'badgesword' : _('badges'), - 'reputationword' : _('reputation points'), - }) - -# Usage: {% get_accept_rate node.author %} -@register.simple_tag -def get_accept_rate(user): - # If the Show Accept Rate feature is not activated this tag should return a blank string - if not settings.SHOW_USER_ACCEPT_RATE: - return "" - - # Freeze accept rate for users - freeze_accept_rate_for_users_users = settings.FREEZE_ACCEPT_RATE_FOR.value - if user.username in list(freeze_accept_rate_for_users_users): - freeze = True - else: - freeze = False - - # We get the number of all user's answers. - total_answers_count = Answer.objects.filter(author=user).count() - - # We get the number of the user's accepted answers. - accepted_answers_count = Answer.objects.filter(author=user, state_string__contains="(accepted)").count() - - # In order to represent the accept rate in percentages we divide the number of the accepted answers to the - # total answers count and make a hundred multiplication. - try: - accept_rate = (float(accepted_answers_count) / float(total_answers_count) * 100) - except ZeroDivisionError: - accept_rate = 0 - - # If the user has more than one accepted answers the rate title will be in plural. - if accepted_answers_count > 1: - accept_rate_number_title = _('%(user)s has %(count)d accepted answers') % { - 'user' : smart_unicode(user.username), - 'count' : int(accepted_answers_count) - } - # If the user has one accepted answer we'll be using singular. - elif accepted_answers_count == 1: - accept_rate_number_title = _('%s has one accepted answer') % smart_unicode(user.username) - # This are the only options. Otherwise there are no accepted answers at all. - else: - if freeze: - accept_rate_number_title = "" - else: - accept_rate_number_title = _('%s has no accepted answers') % smart_unicode(user.username) - - html_output = """ - <span title="%(accept_rate_title)s" class="accept_rate">%(accept_rate_label)s:</span> - <span title="%(accept_rate_number_title)s">%(accept_rate)d%</span> - """ % { - 'accept_rate_label' : _('accept rate'), - 'accept_rate_title' : _('Rate of the user\'s accepted answers'), - 'accept_rate' : 100 if freeze else int(accept_rate), - 'accept_rate_number_title' : u'%s' % accept_rate_number_title, - } - - return mark_safe(html_output) - -@register.simple_tag -def get_age(birthday): - current_time = datetime.datetime(*time.localtime()[0:6]) - year = birthday.year - month = birthday.month - day = birthday.day - diff = current_time - datetime.datetime(year, month, day, 0, 0, 0) - return diff.days / 365 - -@register.simple_tag -def diff_date(date, limen=2): - if not date: - return _('unknown') - - now = datetime.datetime.now() - diff = now - date - days = diff.days - hours = int(diff.seconds/3600) - minutes = int(diff.seconds/60) - - if date.year != now.year: - return dateformat.format(date, 'd M \'y, H:i') - elif days > 2: - return dateformat.format(date, 'd M, H:i') - - elif days == 2: - return _('2 days ago') - elif days == 1: - return _('yesterday') - elif minutes >= 60: - return ungettext('%(hr)d ' + _("hour ago"), '%(hr)d ' + _("hours ago"), hours) % {'hr':hours} - elif diff.seconds >= 60: - return ungettext('%(min)d ' + _("min ago"), '%(min)d ' + _("mins ago"), minutes) % {'min':minutes} - else: - return ungettext('%(sec)d ' + _("sec ago"), '%(sec)d ' + _("secs ago"), diff.seconds) % {'sec':diff.seconds} - -@register.simple_tag -def media(url): - url = skins.find_media_source(url) - if url: - # Create the URL prefix. - url_prefix = settings.FORCE_SCRIPT_NAME + '/m/' - - # Make sure any duplicate forward slashes are replaced with a single - # forward slash. - url_prefix = re.sub("/+", "/", url_prefix) - - url = url_prefix + url - return url - -@register.simple_tag -def get_tag_font_size(tag): - occurrences_of_current_tag = tag.used_count - - # Occurrences count settings - min_occurs = int(settings.TAGS_CLOUD_MIN_OCCURS) - max_occurs = int(settings.TAGS_CLOUD_MAX_OCCURS) - - # Font size settings - min_font_size = int(settings.TAGS_CLOUD_MIN_FONT_SIZE) - max_font_size = int(settings.TAGS_CLOUD_MAX_FONT_SIZE) - - # Calculate the font size of the tag according to the occurrences count - weight = (math.log(occurrences_of_current_tag)-math.log(min_occurs))/(math.log(max_occurs)-math.log(min_occurs)) - font_size_of_current_tag = min_font_size + int(math.floor((max_font_size-min_font_size)*weight)) - - return font_size_of_current_tag - -class ItemSeparatorNode(template.Node): - def __init__(self, separator): - sep = separator.strip() - if sep[0] == sep[-1] and sep[0] in ('\'', '"'): - sep = sep[1:-1] - else: - raise template.TemplateSyntaxError('separator in joinitems tag must be quoted') - self.content = sep - - def render(self, context): - return self.content - -class BlockMediaUrlNode(template.Node): - def __init__(self, nodelist): - self.items = nodelist - - def render(self, context): - prefix = settings.APP_URL + 'm/' - url = '' - if self.items: - url += '/' - for item in self.items: - url += item.render(context) - - url = skins.find_media_source(url) - url = prefix + url - out = url - return out.replace(' ', '') - -@register.tag(name='blockmedia') -def blockmedia(parser, token): - try: - tagname = token.split_contents() - except ValueError: - raise template.TemplateSyntaxError("blockmedia tag does not use arguments") - nodelist = [] - while True: - nodelist.append(parser.parse(('endblockmedia'))) - next = parser.next_token() - if next.contents == 'endblockmedia': - break - return BlockMediaUrlNode(nodelist) - - -@register.simple_tag -def fullmedia(url): - domain = settings.APP_BASE_URL - #protocol = getattr(settings, "PROTOCOL", "http") - path = media(url) - return "%s%s" % (domain, path) - - -class SimpleVarNode(template.Node): - def __init__(self, name, value): - self.name = name - self.value = template.Variable(value) - - def render(self, context): - context[self.name] = self.value.resolve(context) - return '' - -class BlockVarNode(template.Node): - def __init__(self, name, block): - self.name = name - self.block = block - - def render(self, context): - source = self.block.render(context) - context[self.name] = source.strip() - return '' - - -@register.tag(name='var') -def do_var(parser, token): - tokens = token.split_contents()[1:] - - if not len(tokens) or not re.match('^\w+$', tokens[0]): - raise template.TemplateSyntaxError("Expected variable name") - - if len(tokens) == 1: - nodelist = parser.parse(('endvar',)) - parser.delete_first_token() - return BlockVarNode(tokens[0], nodelist) - elif len(tokens) == 3: - return SimpleVarNode(tokens[0], tokens[2]) - - raise template.TemplateSyntaxError("Invalid number of arguments") - -class DeclareNode(template.Node): - dec_re = re.compile('^\s*(\w+)\s*(:?=)\s*(.*)$') - - def __init__(self, block): - self.block = block - - def render(self, context): - source = self.block.render(context) - - for line in source.splitlines(): - m = self.dec_re.search(line) - if m: - clist = list(context) - clist.reverse() - d = {} - d['_'] = _ - d['os'] = os - d['html'] = html - d['reverse'] = reverse - d['settings'] = settings - d['smart_str'] = smart_str - d['smart_unicode'] = smart_unicode - d['force_unicode'] = force_unicode - for c in clist: - d.update(c) - try: - command = m.group(3).strip() - context[m.group(1).strip()] = eval(command, d) - except Exception, e: - logging.error("Error in declare tag, when evaluating: %s" % m.group(3).strip()) - return '' - -@register.tag(name='declare') -def do_declare(parser, token): - nodelist = parser.parse(('enddeclare',)) - parser.delete_first_token() - return DeclareNode(nodelist) - -# Usage: {% random 1 999 %} -# Generates random number in the template -class RandomNumberNode(template.Node): - # We get the limiting numbers - def __init__(self, int_from, int_to): - self.int_from = int(int_from) - self.int_to = int(int_to) - - # We generate the random number using the standard python interface - def render(self, context): - return str(random.randint(self.int_from, self.int_to)) - -@register.tag(name="random") -def random_number(parser, token): - # Try to get the limiting numbers from the token - try: - tag_name, int_from, int_to = token.split_contents() - except ValueError: - # If we had no success -- raise an exception - raise template.TemplateSyntaxError, "%r tag requires exactly two arguments" % token.contents.split()[0] - - # Call the random Node - return RandomNumberNode(int_from, int_to) diff --git a/forum/templatetags/.svn/text-base/general_sidebar_tags.py.svn-base b/forum/templatetags/.svn/text-base/general_sidebar_tags.py.svn-base deleted file mode 100644 index 2f70fa2c62fa2b31dde5137646dde20bfcd7f232..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/general_sidebar_tags.py.svn-base +++ /dev/null @@ -1,39 +0,0 @@ -from django import template -from forum.models import Tag, Award -from forum import settings - -from extra_filters import static_content - -register = template.Library() - -@register.inclusion_tag('sidebar/markdown_help.html') -def markdown_help(): - return {} - -@register.inclusion_tag('sidebar/recent_awards.html') -def recent_awards(): - return {'awards': Award.objects.order_by('-awarded_at')[:settings.RECENT_AWARD_SIZE]} - -@register.inclusion_tag('sidebar/user_blocks.html') -def sidebar_upper(): - return { - 'show': settings.SIDEBAR_UPPER_SHOW, - 'content': static_content(settings.SIDEBAR_UPPER_TEXT, settings.SIDEBAR_UPPER_RENDER_MODE), - 'wrap': not settings.SIDEBAR_UPPER_DONT_WRAP, - 'blockid': 'sidebar-upper' - } - -@register.inclusion_tag('sidebar/user_blocks.html') -def sidebar_lower(): - return { - 'show': settings.SIDEBAR_LOWER_SHOW, - 'content': static_content(settings.SIDEBAR_LOWER_TEXT, settings.SIDEBAR_LOWER_RENDER_MODE), - 'wrap': not settings.SIDEBAR_LOWER_DONT_WRAP, - 'blockid': 'sidebar-lower' - } - -@register.inclusion_tag('sidebar/recent_tags.html') -def recent_tags(): - return {'tags': Tag.active.order_by('-id')[:settings.RECENT_TAGS_SIZE]} - - \ No newline at end of file diff --git a/forum/templatetags/.svn/text-base/node_tags.py.svn-base b/forum/templatetags/.svn/text-base/node_tags.py.svn-base deleted file mode 100644 index be54232f8e44e35a1921ca1fb8e099bef60196c5..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/node_tags.py.svn-base +++ /dev/null @@ -1,267 +0,0 @@ -from datetime import datetime, timedelta -import re - -from forum.models import Question, Action -from django.template import Template, Context -from django.utils.translation import ungettext, ugettext as _ -from django.utils.html import strip_tags -from django.utils.encoding import smart_unicode -from django.utils.safestring import mark_safe -from django.conf import settings as django_settings -from django.core.urlresolvers import reverse -from django import template -from forum.actions import * -from forum import settings - -register = template.Library() - -@register.inclusion_tag('node/vote_buttons.html') -def vote_buttons(post, user): - context = dict(post=post, user_vote='none') - - if user.is_authenticated(): - context['user_vote'] = {1: 'up', -1: 'down', None: 'none'}[VoteAction.get_for(user, post)] - - return context - -@register.inclusion_tag('node/accept_button.html') -def accept_button(answer, user): - if not settings.DISABLE_ACCEPTING_FEATURE: - return { - 'can_accept': user.is_authenticated() and user.can_accept_answer(answer), - 'answer': answer, - 'user': user - } - else: - return '' - -@register.inclusion_tag('node/wiki_symbol.html') -def wiki_symbol(user, post): - context = { - 'is_wiki': post.nis.wiki, - 'post_type': post.friendly_name - } - - if post.nis.wiki: - if user.can_edit_post(post): - context['can_edit'] = True - context['edit_url'] = reverse('edit_' + post.node_type, kwargs={'id': post.id}) - context['by'] = post.nstate.wiki.by.username - context['at'] = post.nstate.wiki.at - - return context - -@register.inclusion_tag('node/favorite_mark.html') -def favorite_mark(question, user): - try: - FavoriteAction.objects.get(canceled=False, node=question, user=user) - favorited = True - except: - favorited = False - - return {'favorited': favorited, 'favorite_count': question.favorite_count, 'question': question} - -@register.simple_tag -def post_classes(post): - classes = [] - - if post.nis.deleted: - classes.append('deleted') - - if post.node_type == "answer": - if (not settings.DISABLE_ACCEPTING_FEATURE) and post.nis.accepted: - classes.append('accepted-answer') - - if post.author == post.question.author: - classes.append('answered-by-owner') - - return " ".join(classes) - -def post_control(text, url, command=False, withprompt=False, confirm=False, title="", copy=False, extra_classes=[]): - classes = (command and "ajax-command" or " ") + (withprompt and " withprompt" or " ") + (confirm and " confirm" or " ") + \ - (copy and " copy" or " ") - - for extra_class in extra_classes: - classes += " %s" % extra_class - - return {'text': text, 'url': url, 'classes': classes, 'title': title} - - -moderation_enabled = False -for m in django_settings.MODULE_LIST: - if m.__name__.endswith('moderation'): - moderation_enabled = True - -@register.inclusion_tag('node/post_controls.html' if not moderation_enabled else "modules/moderation/node/post_controls.html") -def post_controls(post, user): - controls = [] - menu = [] - post_type = post.node_type - - # We show the link tool if the post is an Answer. It is visible to Guests too. - if post_type == "answer": - # Answer permanent link tool - controls.append(post_control(_('permanent link'), reverse('answer_permanent_link', kwargs={'id' : post.id,}), - title=_("answer permanent link"), command=True, withprompt=True, copy=True)) - - # Users should be able to award points for an answer. Users cannot award their own answers - if user != post.author and user.is_authenticated() and user.reputation > 1: - controls.append(post_control(_("award points"), reverse('award_points', kwargs={'user_id' : post.author.id, - 'answer_id' : post.id}), title=_("award points to %s") % smart_unicode(post.author.username), - command=True, withprompt=True)) - - # The other controls are visible only to authenticated users. - if user.is_authenticated(): - try: - edit_url = reverse('edit_' + post_type, kwargs={'id': post.id}) - if user.can_edit_post(post): - controls.append(post_control(_('edit'), edit_url)) - elif post_type == 'question' and user.can_retag_questions(): - controls.append(post_control(_('retag'), edit_url)) - except: - pass - - if post_type == 'question': - if post.nis.closed and user.can_reopen_question(post): - controls.append(post_control(_('reopen'), reverse('reopen', kwargs={'id': post.id}), command=True)) - elif not post.nis.closed and user.can_close_question(post): - controls.append(post_control(_('close'), reverse('close', kwargs={'id': post.id}), command=True, withprompt=True)) - - if user.can_flag_offensive(post): - label = _('report') - - if user.can_view_offensive_flags(post): - label = "%s (%d)" % (label, post.flag_count) - - - report_control = post_control(label, reverse('flag_post', kwargs={'id': post.id}), - command=True, withprompt=True, - title=_("report as offensive (i.e containing spam, advertising, malicious text, etc.)")) - - # Depending on the setting choose where to attach the control - if settings.REPORT_OFFENSIVE_CONTROL_POSITION.value == "more": - menu.append(report_control) - else: - controls.append(report_control) - - if user.can_delete_post(post): - if post.nis.deleted: - controls.append(post_control(_('undelete'), reverse('delete_post', kwargs={'id': post.id}), - command=True, confirm=True)) - else: - controls.append(post_control(_('delete'), reverse('delete_post', kwargs={'id': post.id}), - command=True, confirm=True)) - - if user.can_delete_post(post): - menu.append(post_control(_('see revisions'), - reverse('revisions', - kwargs={'id': post.id}), - command=False, confirm=False)) - - if settings.WIKI_ON: - if (not post.nis.wiki) and user.can_wikify(post): - menu.append(post_control(_('mark as community wiki'), reverse('wikify', kwargs={'id': post.id}), - command=True, confirm=True)) - - elif post.nis.wiki and user.can_cancel_wiki(post): - menu.append(post_control(_('cancel community wiki'), reverse('wikify', kwargs={'id': post.id}), - command=True, confirm=True)) - - if post.node_type == "answer" and user.can_convert_to_comment(post): - menu.append(post_control(_('convert to comment'), reverse('convert_to_comment', kwargs={'id': post.id}), - command=True, withprompt=True)) - - if post.node_type == "answer" and user.can_convert_to_question(post): - menu.append(post_control(_('convert to question'), reverse('convert_to_question', kwargs={'id': post.id}), - command=False, confirm=True)) - - if user.is_superuser or user.is_staff: - plain_text = strip_tags(post.html) - - char_count = len(plain_text) - fullStr = plain_text + " " - left_trimmedStr = re.sub(re.compile(r"^[^\w]+", re.IGNORECASE), "", fullStr) - cleanedStr = re.sub(re.compile(r"[^\w]+", re.IGNORECASE), " ", left_trimmedStr) - splitString = cleanedStr.split(" ") - word_count = len(splitString) - 1 - - metrics = mark_safe("<b>%s %s / %s %s</b>" % (char_count, ungettext('character', 'characters', char_count), - word_count, ungettext('word', 'words', word_count))) - - menu.append(post_control(metrics, "#", command=False, withprompt=False)) - - return {'controls': controls, 'menu': menu, 'post': post, 'user': user} - -def _comments(post, user): - all_comments = post.comments.filter_state(deleted=False)\ - .order_by('-added_at' if settings.SHOW_LATEST_COMMENTS_FIRST else 'added_at') - - if len(all_comments) <= 5: - top_scorers = all_comments - else: - top_scorers = sorted(all_comments, lambda c1, c2: cmp(c2.score, c1.score))[0:5] - - comments = [] - showing = 0 - for c in all_comments: - context = { - 'can_delete': user.can_delete_comment(c), - 'can_like': user.can_like_comment(c), - 'can_edit': user.can_edit_comment(c), - 'can_convert': user.can_convert_comment_to_answer(c) - } - - if c in top_scorers or c.is_reply_to(user): - context['top_scorer'] = True - showing += 1 - - if context['can_like']: - context['likes'] = VoteAction.get_for(user, c) == 1 - - context['user'] = c.user - context['comment'] = c.comment - context.update(dict(c.__dict__)) - comments.append(context) - - # Generate canned comments - canned_comments = [] - for comment in settings.CANNED_COMMENTS: - t = Template(smart_unicode(comment)) - c = Context({ - 'post' : post, - 'settings' : settings, - }) - canned_comments.append(t.render(c)) - - total = len(all_comments) - return { - 'comments': comments, - 'canned_comments': canned_comments, - 'post': post, - 'can_comment': user.can_comment(post), - 'max_length': settings.FORM_MAX_COMMENT_BODY, - 'min_length': settings.FORM_MIN_COMMENT_BODY, - 'show_gravatar': settings.FORM_GRAVATAR_IN_COMMENTS, - 'showing': showing, - 'total': total, - 'more_comments_count' : int(total - showing), - 'show_latest_comments_first' : settings.SHOW_LATEST_COMMENTS_FIRST, - 'user': user, - } - -@register.inclusion_tag('node/comments.html') -def comments(post, user): - return _comments(post, user) - -@register.inclusion_tag("node/contributors_info.html", takes_context=True) -def contributors_info(context, node, verb=None): - return { - 'node_verb': verb and verb or ((node.node_type == "question") and _("asked") or ( - (node.node_type == "answer") and _("answered") or _("posted"))), - 'node': node, - 'context' : context - } - -@register.inclusion_tag("node/reviser_info.html") -def reviser_info(revision): - return {'revision': revision} diff --git a/forum/templatetags/.svn/text-base/question_list_tags.py.svn-base b/forum/templatetags/.svn/text-base/question_list_tags.py.svn-base deleted file mode 100644 index 2f2aef9cf8c58948a57c0922ec68ee40a5b04344..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/question_list_tags.py.svn-base +++ /dev/null @@ -1,81 +0,0 @@ -from django import template -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe -from forum.models import Tag, MarkedTag -from forum.templatetags import argument_parser -from forum import settings - -register = template.Library() - -class QuestionItemNode(template.Node): - template = template.loader.get_template('question_list/item.html') - - def __init__(self, question, options): - self.question = template.Variable(question) - self.options = options - - def render(self, context): - return self.template.render(template.Context({ - 'question': self.question.resolve(context), - 'question_summary': self.options.get('question_summary', 'no' ) == 'yes', - 'favorite_count': self.options.get('favorite_count', 'no') == 'yes', - 'signature_type': self.options.get('signature_type', 'lite'), - })) - -class SubscriptionItemNode(template.Node): - template = template.loader.get_template('question_list/subscription_item.html') - - def __init__(self, subscription, question, options): - self.question = template.Variable(question) - self.subscription = template.Variable(subscription) - self.options = options - - def render(self, context): - return self.template.render(template.Context({ - 'question': self.question.resolve(context), - 'subscription': self.subscription.resolve(context), - 'signature_type': self.options.get('signature_type', 'lite'), - })) - -@register.tag -def question_list_item(parser, token): - tokens = token.split_contents()[1:] - return QuestionItemNode(tokens[0], argument_parser(tokens[1:])) - -@register.tag -def subscription_list_item(parser, token): - tokens = token.split_contents()[1:] - return SubscriptionItemNode(tokens[0], tokens[1], argument_parser(tokens[2:])) - -@register.inclusion_tag('question_list/sort_tabs.html') -def question_sort_tabs(sort_context): - return sort_context - -@register.inclusion_tag('question_list/related_tags.html') -def question_list_related_tags(questions): - if len(questions): - tags = Tag.objects.filter(nodes__id__in=[q.id for q in questions]).distinct() - - if settings.LIMIT_RELATED_TAGS: - tags = tags[:settings.LIMIT_RELATED_TAGS] - - return {'tags': tags} - else: - return {'tags': False} - -@register.inclusion_tag('question_list/tag_selector.html', takes_context=True) -def tag_selector(context): - request = context['request'] - show_interesting_tags = settings.SHOW_INTERESTING_TAGS_BOX - - if request.user.is_authenticated(): - pt = MarkedTag.objects.filter(user=request.user) - return { - 'request' : request, - "interesting_tag_names": pt.filter(reason='good').values_list('tag__name', flat=True), - 'ignored_tag_names': pt.filter(reason='bad').values_list('tag__name', flat=True), - 'user_authenticated': True, - 'show_interesting_tags' : show_interesting_tags, - } - else: - return { 'request' : request, 'user_authenticated': False, 'show_interesting_tags' : show_interesting_tags } diff --git a/forum/templatetags/.svn/text-base/smart_if.py.svn-base b/forum/templatetags/.svn/text-base/smart_if.py.svn-base deleted file mode 100644 index ca3b43fe9dddbf3f84003fe4c6650c7ee4e1d2dd..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/smart_if.py.svn-base +++ /dev/null @@ -1,401 +0,0 @@ -""" -A smarter {% if %} tag for django templates. - -While retaining current Django functionality, it also handles equality, -greater than and less than operators. Some common case examples:: - - {% if articles|length >= 5 %}...{% endif %} - {% if "ifnotequal tag" != "beautiful" %}...{% endif %} -""" -import unittest -from django import template - - -register = template.Library() - - -#============================================================================== -# Calculation objects -#============================================================================== - -class BaseCalc(object): - def __init__(self, var1, var2=None, negate=False): - self.var1 = var1 - self.var2 = var2 - self.negate = negate - - def resolve(self, context): - try: - var1, var2 = self.resolve_vars(context) - outcome = self.calculate(var1, var2) - except: - outcome = False - if self.negate: - return not outcome - return outcome - - def resolve_vars(self, context): - var2 = self.var2 and self.var2.resolve(context) - return self.var1.resolve(context), var2 - - def calculate(self, var1, var2): - raise NotImplementedError() - - -class Or(BaseCalc): - def calculate(self, var1, var2): - return var1 or var2 - - -class And(BaseCalc): - def calculate(self, var1, var2): - return var1 and var2 - - -class Equals(BaseCalc): - def calculate(self, var1, var2): - return var1 == var2 - - -class Greater(BaseCalc): - def calculate(self, var1, var2): - return var1 > var2 - - -class GreaterOrEqual(BaseCalc): - def calculate(self, var1, var2): - return var1 >= var2 - - -class In(BaseCalc): - def calculate(self, var1, var2): - return var1 in var2 - - -#============================================================================== -# Tests -#============================================================================== - -class TestVar(object): - """ - A basic self-resolvable object similar to a Django template variable. Used - to assist with tests. - """ - def __init__(self, value): - self.value = value - - def resolve(self, context): - return self.value - - -class SmartIfTests(unittest.TestCase): - def setUp(self): - self.true = TestVar(True) - self.false = TestVar(False) - self.high = TestVar(9000) - self.low = TestVar(1) - - def assertCalc(self, calc, context=None): - """ - Test a calculation is True, also checking the inverse "negate" case. - """ - context = context or {} - self.assert_(calc.resolve(context)) - calc.negate = not calc.negate - self.assertFalse(calc.resolve(context)) - - def assertCalcFalse(self, calc, context=None): - """ - Test a calculation is False, also checking the inverse "negate" case. - """ - context = context or {} - self.assertFalse(calc.resolve(context)) - calc.negate = not calc.negate - self.assert_(calc.resolve(context)) - - def test_or(self): - self.assertCalc(Or(self.true)) - self.assertCalcFalse(Or(self.false)) - self.assertCalc(Or(self.true, self.true)) - self.assertCalc(Or(self.true, self.false)) - self.assertCalc(Or(self.false, self.true)) - self.assertCalcFalse(Or(self.false, self.false)) - - def test_and(self): - self.assertCalc(And(self.true, self.true)) - self.assertCalcFalse(And(self.true, self.false)) - self.assertCalcFalse(And(self.false, self.true)) - self.assertCalcFalse(And(self.false, self.false)) - - def test_equals(self): - self.assertCalc(Equals(self.low, self.low)) - self.assertCalcFalse(Equals(self.low, self.high)) - - def test_greater(self): - self.assertCalc(Greater(self.high, self.low)) - self.assertCalcFalse(Greater(self.low, self.low)) - self.assertCalcFalse(Greater(self.low, self.high)) - - def test_greater_or_equal(self): - self.assertCalc(GreaterOrEqual(self.high, self.low)) - self.assertCalc(GreaterOrEqual(self.low, self.low)) - self.assertCalcFalse(GreaterOrEqual(self.low, self.high)) - - def test_in(self): - list_ = TestVar([1,2,3]) - invalid_list = TestVar(None) - self.assertCalc(In(self.low, list_)) - self.assertCalcFalse(In(self.low, invalid_list)) - - def test_parse_bits(self): - var = IfParser([True]).parse() - self.assert_(var.resolve({})) - var = IfParser([False]).parse() - self.assertFalse(var.resolve({})) - - var = IfParser([False, 'or', True]).parse() - self.assert_(var.resolve({})) - - var = IfParser([False, 'and', True]).parse() - self.assertFalse(var.resolve({})) - - var = IfParser(['not', False, 'and', 'not', False]).parse() - self.assert_(var.resolve({})) - - var = IfParser(['not', 'not', True]).parse() - self.assert_(var.resolve({})) - - var = IfParser([1, '=', 1]).parse() - self.assert_(var.resolve({})) - - var = IfParser([1, 'not', '=', 1]).parse() - self.assertFalse(var.resolve({})) - - var = IfParser([1, 'not', 'not', '=', 1]).parse() - self.assert_(var.resolve({})) - - var = IfParser([1, '!=', 1]).parse() - self.assertFalse(var.resolve({})) - - var = IfParser([3, '>', 2]).parse() - self.assert_(var.resolve({})) - - var = IfParser([1, '<', 2]).parse() - self.assert_(var.resolve({})) - - var = IfParser([2, 'not', 'in', [2, 3]]).parse() - self.assertFalse(var.resolve({})) - - var = IfParser([1, 'or', 1, '=', 2]).parse() - self.assert_(var.resolve({})) - - def test_boolean(self): - var = IfParser([True, 'and', True, 'and', True]).parse() - self.assert_(var.resolve({})) - var = IfParser([False, 'or', False, 'or', True]).parse() - self.assert_(var.resolve({})) - var = IfParser([True, 'and', False, 'or', True]).parse() - self.assert_(var.resolve({})) - var = IfParser([False, 'or', True, 'and', True]).parse() - self.assert_(var.resolve({})) - - var = IfParser([True, 'and', True, 'and', False]).parse() - self.assertFalse(var.resolve({})) - var = IfParser([False, 'or', False, 'or', False]).parse() - self.assertFalse(var.resolve({})) - var = IfParser([False, 'or', True, 'and', False]).parse() - self.assertFalse(var.resolve({})) - var = IfParser([False, 'and', True, 'or', False]).parse() - self.assertFalse(var.resolve({})) - - def test_invalid(self): - self.assertRaises(ValueError, IfParser(['not']).parse) - self.assertRaises(ValueError, IfParser(['==']).parse) - self.assertRaises(ValueError, IfParser([1, 'in']).parse) - self.assertRaises(ValueError, IfParser([1, '>', 'in']).parse) - self.assertRaises(ValueError, IfParser([1, '==', 'not', 'not']).parse) - self.assertRaises(ValueError, IfParser([1, 2]).parse) - - -OPERATORS = { - '=': (Equals, True), - '==': (Equals, True), - '!=': (Equals, False), - '>': (Greater, True), - '>=': (GreaterOrEqual, True), - '<=': (Greater, False), - '<': (GreaterOrEqual, False), - 'or': (Or, True), - 'and': (And, True), - 'in': (In, True), -} -BOOL_OPERATORS = ('or', 'and') - - -class IfParser(object): - error_class = ValueError - - def __init__(self, tokens): - self.tokens = tokens - - def _get_tokens(self): - return self._tokens - - def _set_tokens(self, tokens): - self._tokens = tokens - self.len = len(tokens) - self.pos = 0 - - tokens = property(_get_tokens, _set_tokens) - - def parse(self): - if self.at_end(): - raise self.error_class('No variables provided.') - var1 = self.get_bool_var() - while not self.at_end(): - op, negate = self.get_operator() - var2 = self.get_bool_var() - var1 = op(var1, var2, negate=negate) - return var1 - - def get_token(self, eof_message=None, lookahead=False): - negate = True - token = None - pos = self.pos - while token is None or token == 'not': - if pos >= self.len: - if eof_message is None: - raise self.error_class() - raise self.error_class(eof_message) - token = self.tokens[pos] - negate = not negate - pos += 1 - if not lookahead: - self.pos = pos - return token, negate - - def at_end(self): - return self.pos >= self.len - - def create_var(self, value): - return TestVar(value) - - def get_bool_var(self): - """ - Returns either a variable by itself or a non-boolean operation (such as - ``x == 0`` or ``x < 0``). - - This is needed to keep correct precedence for boolean operations (i.e. - ``x or x == 0`` should be ``x or (x == 0)``, not ``(x or x) == 0``). - """ - var = self.get_var() - if not self.at_end(): - op_token = self.get_token(lookahead=True)[0] - if isinstance(op_token, basestring) and (op_token not in - BOOL_OPERATORS): - op, negate = self.get_operator() - return op(var, self.get_var(), negate=negate) - return var - - def get_var(self): - token, negate = self.get_token('Reached end of statement, still ' - 'expecting a variable.') - if isinstance(token, basestring) and token in OPERATORS: - raise self.error_class('Expected variable, got operator (%s).' % - token) - var = self.create_var(token) - if negate: - return Or(var, negate=True) - return var - - def get_operator(self): - token, negate = self.get_token('Reached end of statement, still ' - 'expecting an operator.') - if not isinstance(token, basestring) or token not in OPERATORS: - raise self.error_class('%s is not a valid operator.' % token) - if self.at_end(): - raise self.error_class('No variable provided after "%s".' % token) - op, true = OPERATORS[token] - if not true: - negate = not negate - return op, negate - - -#============================================================================== -# Actual templatetag code. -#============================================================================== - -class TemplateIfParser(IfParser): - error_class = template.TemplateSyntaxError - - def __init__(self, parser, *args, **kwargs): - self.template_parser = parser - return super(TemplateIfParser, self).__init__(*args, **kwargs) - - def create_var(self, value): - return self.template_parser.compile_filter(value) - - -class SmartIfNode(template.Node): - def __init__(self, var, nodelist_true, nodelist_false=None): - self.nodelist_true, self.nodelist_false = nodelist_true, nodelist_false - self.var = var - - def render(self, context): - if self.var.resolve(context): - return self.nodelist_true.render(context) - if self.nodelist_false: - return self.nodelist_false.render(context) - return '' - - def __repr__(self): - return "<Smart If node>" - - def __iter__(self): - for node in self.nodelist_true: - yield node - if self.nodelist_false: - for node in self.nodelist_false: - yield node - - def get_nodes_by_type(self, nodetype): - nodes = [] - if isinstance(self, nodetype): - nodes.append(self) - nodes.extend(self.nodelist_true.get_nodes_by_type(nodetype)) - if self.nodelist_false: - nodes.extend(self.nodelist_false.get_nodes_by_type(nodetype)) - return nodes - - -@register.tag('if') -def smart_if(parser, token): - """ - A smarter {% if %} tag for django templates. - - While retaining current Django functionality, it also handles equality, - greater than and less than operators. Some common case examples:: - - {% if articles|length >= 5 %}...{% endif %} - {% if "ifnotequal tag" != "beautiful" %}...{% endif %} - - Arguments and operators _must_ have a space between them, so - ``{% if 1>2 %}`` is not a valid smart if tag. - - All supported operators are: ``or``, ``and``, ``in``, ``=`` (or ``==``), - ``!=``, ``>``, ``>=``, ``<`` and ``<=``. - """ - bits = token.split_contents()[1:] - var = TemplateIfParser(parser, bits).parse() - nodelist_true = parser.parse(('else', 'endif')) - token = parser.next_token() - if token.contents == 'else': - nodelist_false = parser.parse(('endif',)) - parser.delete_first_token() - else: - nodelist_false = None - return SmartIfNode(var, nodelist_true, nodelist_false) - - -if __name__ == '__main__': - unittest.main() diff --git a/forum/templatetags/.svn/text-base/ui_registry.py.svn-base b/forum/templatetags/.svn/text-base/ui_registry.py.svn-base deleted file mode 100644 index 8b28e2c67c1aa063c96c95c168b5003ce813653d..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/ui_registry.py.svn-base +++ /dev/null @@ -1,80 +0,0 @@ -from django import template -from django.conf import settings -from forum.modules import ui -import logging - -register = template.Library() - - -class LoadRegistryNode(template.Node): - def __init__(self, registry, separator): - self.registry = registry - self.separator = separator - - def render(self, context): - separator = self.separator.render(context) - result = '' - - for ui_object in self.registry: - try: - if ui_object.can_render(context): - if result: - result += separator - result += ui_object.render(context) - except (KeyError, Exception), e: - if settings.DEBUG: - import traceback - logging.error("Exception %s rendering ui objects %s: \n%s" % ( - e, ui_object, traceback.format_exc() - )) - - return result - - -@register.tag -def loadregistry(parser, token): - try: - tag_name, registry = token.split_contents() - except ValueError: - raise template.TemplateSyntaxError, "%r tag requires exactly one argument" % token.contents.split()[0] - - registry = ui.get_registry_by_name(registry) - separator = parser.parse(('endloadregistry',)) - parser.delete_first_token() - return LoadRegistryNode(registry, separator) - - -class LoopRegistryNode(template.Node): - def __init__(self, registry, nodelist): - self.registry = registry - self.nodelist = nodelist - - def render(self, context): - result = '' - - for ui_object in self.registry: - if ui_object.can_render(context): - try: - ui_object.update_context(context) - result += self.nodelist.render(context) - except Exception, e: - import traceback - logging.error("Exception %s updating ui loop context %s: \n%s" % ( - e, ui_object, traceback.format_exc() - )) - - - return result - -@register.tag -def loopregistry(parser, token): - try: - tag_name, registry = token.split_contents() - except ValueError: - raise template.TemplateSyntaxError, "%r tag requires exactly one argument" % token.contents.split()[0] - - registry = ui.get_registry_by_name(registry) - nodelist = parser.parse(('endloopregistry',)) - parser.delete_first_token() - - return LoopRegistryNode(registry, nodelist) \ No newline at end of file diff --git a/forum/templatetags/.svn/text-base/user_tags.py.svn-base b/forum/templatetags/.svn/text-base/user_tags.py.svn-base deleted file mode 100644 index 2bc4385f8f0cf35379e8304d156361d8811ec97d..0000000000000000000000000000000000000000 --- a/forum/templatetags/.svn/text-base/user_tags.py.svn-base +++ /dev/null @@ -1,74 +0,0 @@ -from django import template -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe -import logging - -register = template.Library() - -class UserSignatureNode(template.Node): - template = template.loader.get_template('users/signature.html') - - def __init__(self, user, format): - self.user = template.Variable(user) - self.format = template.Variable(format) - - def render(self, context): - return self.template.render(template.Context({ - 'user': self.user.resolve(context), - 'format': self.format.resolve(context) - })) - -@register.tag -def user_signature(parser, token): - try: - tag_name, user, format = token.split_contents() - except ValueError: - raise template.TemplateSyntaxError, "%r tag requires exactly two arguments" % token.contents.split()[0] - - return UserSignatureNode(user, format) - - -class ActivityNode(template.Node): - template = template.loader.get_template('users/activity.html') - - def __init__(self, activity, viewer): - self.activity = template.Variable(activity) - self.viewer = template.Variable(viewer) - - def render(self, context): - try: - action = self.activity.resolve(context).leaf - viewer = self.viewer.resolve(context) - describe = mark_safe(action.describe(viewer)) - return self.template.render(template.Context(dict(action=action, describe=describe))) - except Exception, e: - import traceback - msg = "Error in action describe: \n %s" % ( - traceback.format_exc() - ) - logging.error(msg) - -@register.tag -def activity_item(parser, token): - try: - tag_name, activity, viewer = token.split_contents() - except ValueError: - raise template.TemplateSyntaxError, "%r tag requires exactly two arguments" % token.contents.split()[0] - - return ActivityNode(activity, viewer) - - -@register.tag -def flagged_item(parser, token): - try: - tag_name, post, viewer = token.split_contents() - except ValueError: - raise template.TemplateSyntaxError, "%r tag requires exactly two arguments" % token.contents.split()[0] - - return ActivityNode(post, viewer) - - -@register.inclusion_tag('users/menu.html') -def user_menu(viewer, user): - return dict(viewer=viewer, user=user) - diff --git a/forum/upfiles/.svn/all-wcprops b/forum/upfiles/.svn/all-wcprops deleted file mode 100644 index c357c53d0a17fbd3304a309506717770fd8861ea..0000000000000000000000000000000000000000 --- a/forum/upfiles/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 45 -/svnroot/!svn/ver/17/osqa/trunk/forum/upfiles -END -logo.png -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/17/osqa/trunk/forum/upfiles/logo.png -END -README -K 25 -svn:wc:ra_dav:version-url -V 52 -/svnroot/!svn/ver/17/osqa/trunk/forum/upfiles/README -END diff --git a/forum/upfiles/.svn/entries b/forum/upfiles/.svn/entries deleted file mode 100644 index e3b4e7def229a71e0830736e926968feba9b9689..0000000000000000000000000000000000000000 --- a/forum/upfiles/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/upfiles -http://svn.osqa.net/svnroot - - - -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -README -file - - - - -2012-06-22T20:34:44.187682Z -5c166d987059cc2bd9ed061b059959ce -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -95 - -logo.png -file - - - - -2012-06-22T20:34:44.187682Z -7051c5e378121b1cba68636b829f1346 -2010-04-10T04:19:53.735481Z -17 -hernani -has-props - - - - - - - - - - - - - - - - - - - - -21607 - diff --git a/forum/upfiles/.svn/prop-base/logo.png.svn-base b/forum/upfiles/.svn/prop-base/logo.png.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/forum/upfiles/.svn/prop-base/logo.png.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/forum/upfiles/.svn/text-base/README.svn-base b/forum/upfiles/.svn/text-base/README.svn-base deleted file mode 100644 index 17bf8ecb213ae9d0ec4b7f3c6f6298f73bbfca96..0000000000000000000000000000000000000000 --- a/forum/upfiles/.svn/text-base/README.svn-base +++ /dev/null @@ -1,2 +0,0 @@ -This directory is to contain uploaded images and other files -must be writable by the webserver diff --git a/forum/upfiles/.svn/text-base/logo.png.svn-base b/forum/upfiles/.svn/text-base/logo.png.svn-base deleted file mode 100644 index bb1b829359467014656cc7d7dbf9eca27e1d91ae..0000000000000000000000000000000000000000 Binary files a/forum/upfiles/.svn/text-base/logo.png.svn-base and /dev/null differ diff --git a/forum/user_messages/.svn/all-wcprops b/forum/user_messages/.svn/all-wcprops deleted file mode 100644 index bb0e500d31f20bef3a2a4923a5f48c8c296a73f8..0000000000000000000000000000000000000000 --- a/forum/user_messages/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 51 -/svnroot/!svn/ver/17/osqa/trunk/forum/user_messages -END -context_processors.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/17/osqa/trunk/forum/user_messages/context_processors.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/17/osqa/trunk/forum/user_messages/__init__.py -END diff --git a/forum/user_messages/.svn/entries b/forum/user_messages/.svn/entries deleted file mode 100644 index 14363620cee7f3e03f7debf3e653132f598417c5..0000000000000000000000000000000000000000 --- a/forum/user_messages/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/user_messages -http://svn.osqa.net/svnroot - - - -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -context_processors.py -file - - - - -2012-06-22T20:34:44.071740Z -12fae3a5c95d2c279c1593e5305b2115 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1427 - -__init__.py -file - - - - -2012-06-22T20:34:44.071740Z -89aa0f71c9973e4889e5fad0b4771a34 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1195 - diff --git a/forum/user_messages/.svn/text-base/__init__.py.svn-base b/forum/user_messages/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 0136c8881a8500d1ed69cd8d07f33e1e1302c47f..0000000000000000000000000000000000000000 --- a/forum/user_messages/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,36 +0,0 @@ -""" -Lightweight session-based messaging system. - -Time-stamp: <2009-03-10 19:22:29 carljm __init__.py> - -""" -VERSION = (0, 1, 'pre') - -def create_message (request, message): - """ - Create a message in the current session. - - """ - assert hasattr(request, 'session'), "django-session-messages requires session middleware to be installed. Edit your MIDDLEWARE_CLASSES setting to insert 'django.contrib.sessions.middleware.SessionMiddleware'." - - try: - request.session['messages'].append(message) - except KeyError: - request.session['messages'] = [message] - -def get_and_delete_messages (request, include_auth=False): - """ - Get and delete all messages for current session. - - Optionally also fetches user messages from django.contrib.auth. - - """ - assert hasattr(request, 'session'), "django-session-messages requires session middleware to be installed. Edit your MIDDLEWARE_CLASSES setting to insert 'django.contrib.sessions.middleware.SessionMiddleware'." - - messages = request.session.pop('messages', []) - - if include_auth and request.user.is_authenticated(): - messages.extend(request.user.get_and_delete_messages()) - - return messages - diff --git a/forum/user_messages/.svn/text-base/context_processors.py.svn-base b/forum/user_messages/.svn/text-base/context_processors.py.svn-base deleted file mode 100644 index 5f7b857c043cbb46eefc300a551603a6317c590c..0000000000000000000000000000000000000000 --- a/forum/user_messages/.svn/text-base/context_processors.py.svn-base +++ /dev/null @@ -1,55 +0,0 @@ -""" -Context processor for lightweight session messages. - -Time-stamp: <2008-07-19 23:16:19 carljm context_processors.py> - -""" -from django.utils.encoding import StrAndUnicode - -from forum.user_messages import get_and_delete_messages - -def user_messages (request): - """ - Returns session messages for the current session. - - """ - messages = request.user.get_and_delete_messages() - #if request.user.is_authenticated(): - #else: - # messages = LazyMessages(request) - #import inspect - #print inspect.stack()[1] - #print messages - return { 'user_messages': messages } - -class LazyMessages (StrAndUnicode): - """ - Lazy message container, so messages aren't actually retrieved from - session and deleted until the template asks for them. - - """ - def __init__(self, request): - self.request = request - - def __iter__(self): - return iter(self.messages) - - def __len__(self): - return len(self.messages) - - def __nonzero__(self): - return bool(self.messages) - - def __unicode__(self): - return unicode(self.messages) - - def __getitem__(self, *args, **kwargs): - return self.messages.__getitem__(*args, **kwargs) - - def _get_messages(self): - if hasattr(self, '_messages'): - return self._messages - self._messages = get_and_delete_messages(self.request) - return self._messages - messages = property(_get_messages) - diff --git a/forum/utils/.svn/all-wcprops b/forum/utils/.svn/all-wcprops deleted file mode 100644 index 58defe210fe6e2ac35ac11c90b590fa6e1544228..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/all-wcprops +++ /dev/null @@ -1,71 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 45 -/svnroot/!svn/ver/1271/osqa/trunk/forum/utils -END -mail.py -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1271/osqa/trunk/forum/utils/mail.py -END -html.py -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1234/osqa/trunk/forum/utils/html.py -END -decorators.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/17/osqa/trunk/forum/utils/decorators.py -END -diff.py -K 25 -svn:wc:ra_dav:version-url -V 51 -/svnroot/!svn/ver/17/osqa/trunk/forum/utils/diff.py -END -djangofix.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/511/osqa/trunk/forum/utils/djangofix.py -END -pagination.py -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1229/osqa/trunk/forum/utils/pagination.py -END -userlinking.py -K 25 -svn:wc:ra_dav:version-url -V 60 -/svnroot/!svn/ver/1093/osqa/trunk/forum/utils/userlinking.py -END -html2text.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/17/osqa/trunk/forum/utils/html2text.py -END -lists.py -K 25 -svn:wc:ra_dav:version-url -V 52 -/svnroot/!svn/ver/17/osqa/trunk/forum/utils/lists.py -END -time.py -K 25 -svn:wc:ra_dav:version-url -V 51 -/svnroot/!svn/ver/17/osqa/trunk/forum/utils/time.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/17/osqa/trunk/forum/utils/__init__.py -END diff --git a/forum/utils/.svn/dir-prop-base b/forum/utils/.svn/dir-prop-base deleted file mode 100644 index 620a42a5232496d9417e53bca3a11102000dc576..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/dir-prop-base +++ /dev/null @@ -1,6 +0,0 @@ -K 13 -svn:mergeinfo -V 98 -/osqa/branches/cacheimp/forum/utils:874-939 -/osqa/branches/notification-config/forum/utils:693-849 -END diff --git a/forum/utils/.svn/entries b/forum/utils/.svn/entries deleted file mode 100644 index 9dca2083d8861892617836baa5b02c8b46b82fd1..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/entries +++ /dev/null @@ -1,402 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/utils -http://svn.osqa.net/svnroot - - - -2012-06-11T11:31:15.173171Z -1271 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -html2text.py -file - - - - -2012-06-22T20:34:44.023764Z -c58fea1e3fdc78003eb4657bfe9e8beb -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -4308 - -lists.py -file - - - - -2012-06-22T20:34:44.023764Z -3c69a30b7e9abeca08bf3a666cba26d7 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -2645 - -time.py -file - - - - -2012-06-22T20:34:44.023764Z -f8260ef80bef9d97f7c8b9a5d10728f9 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -105 - -__init__.py -file - - - - -2012-06-22T20:34:44.027762Z -d41d8cd98f00b204e9800998ecf8427e -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -0 - -mail.py -file - - - - -2012-06-22T20:34:44.027762Z -9d1b3a578e42f6fc9e41e491e81d26ad -2012-06-11T11:31:15.173171Z -1271 -jordan - - - - - - - - - - - - - - - - - - - - - -3845 - -html.py -file - - - - -2012-06-22T20:34:44.027762Z -fbb9fab6ad1c3199c214157216075be5 -2012-03-17T15:52:27.393305Z -1234 -hernani - - - - - - - - - - - - - - - - - - - - - -3060 - -decorators.py -file - - - - -2012-06-22T20:34:44.027762Z -a71538c14ef5d40f0b9730d1903f9e28 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -894 - -diff.py -file - - - - -2012-06-22T20:34:44.023764Z -cdf4b8f4d08c8cadaa5a9df0c94ccedd -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1843 - -djangofix.py -file - - - - -2012-06-22T20:34:44.023764Z -a38c4e0a0e462cf6ea21d45d448dc206 -2010-07-09T11:27:33.894833Z -511 -hernani - - - - - - - - - - - - - - - - - - - - - -528 - -pagination.py -file - - - - -2012-06-22T20:34:44.023764Z -e6ca5f4c323a4a92acd9a5af97b60431 -2012-02-12T18:59:26.169279Z -1229 -jordan - - - - - - - - - - - - - - - - - - - - - -11375 - -userlinking.py -file - - - - -2012-06-22T20:34:44.023764Z -aae189a9d33beb00ea04bd24cfedcf71 -2011-07-02T16:02:41.873933Z -1093 -jordan - - - - - - - - - - - - - - - - - - - - - -2874 - diff --git a/forum/utils/.svn/text-base/__init__.py.svn-base b/forum/utils/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum/utils/.svn/text-base/decorators.py.svn-base b/forum/utils/.svn/text-base/decorators.py.svn-base deleted file mode 100644 index e4e7acb324c8d6ee0c3edb6ddad30cc37b1cd3a9..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/decorators.py.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -from django.http import HttpResponse, HttpResponseForbidden, Http404 -from django.utils import simplejson - -def ajax_login_required(view_func): - def wrap(request,*args,**kwargs): - if request.user.is_authenticated(): - return view_func(request,*args,**kwargs) - else: - json = simplejson.dumps({'login_required':True}) - return HttpResponseForbidden(json,mimetype='application/json') - return wrap - -def ajax_method(view_func): - def wrap(request,*args,**kwargs): - if not request.is_ajax(): - raise Http404 - retval = view_func(request,*args,**kwargs) - if isinstance(retval, HttpResponse): - retval.mimetype = 'application/json' - return retval - else: - json = simplejson.dumps(retval) - return HttpResponse(json,mimetype='application/json') - return wrap - diff --git a/forum/utils/.svn/text-base/diff.py.svn-base b/forum/utils/.svn/text-base/diff.py.svn-base deleted file mode 100644 index d741d78899ac13c17d79195da07fc6a3b3466ee6..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/diff.py.svn-base +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/python2.2 -"""HTML Diff: http://www.aaronsw.com/2002/diff -Rough code, badly documented. Send me comments and patches.""" - -__author__ = 'Aaron Swartz <me@aaronsw.com>' -__copyright__ = '(C) 2003 Aaron Swartz. GNU GPL 2.' -__version__ = '0.22' - -import difflib, string - -def isTag(x): return x[0] == "<" and x[-1] == ">" - -def textDiff(a, b): - """Takes in strings a and b and returns a human-readable HTML diff.""" - - out = [] - a, b = html2list(a), html2list(b) - s = difflib.SequenceMatcher(None, a, b) - for e in s.get_opcodes(): - if e[0] == "replace": - # @@ need to do something more complicated here - # call textDiff but not for html, but for some html... ugh - # gonna cop-out for now - out.append('<del>'+''.join(a[e[1]:e[2]]) + '</del><ins>'+''.join(b[e[3]:e[4]])+"</ins>") - elif e[0] == "delete": - out.append('<del >'+ ''.join(a[e[1]:e[2]]) + "</del>") - elif e[0] == "insert": - out.append('<ins >'+''.join(b[e[3]:e[4]]) + "</ins>") - elif e[0] == "equal": - out.append(''.join(b[e[3]:e[4]])) - else: - raise "Um, something's broken. I didn't expect a '" + `e[0]` + "'." - return ''.join(out) - -def html2list(x, b=0): - mode = 'char' - cur = '' - out = [] - for c in x: - if mode == 'tag': - if c == '>': - if b: cur += ']' - else: cur += c - out.append(cur); cur = ''; mode = 'char' - else: cur += c - elif mode == 'char': - if c == '<': - out.append(cur) - if b: cur = '[' - else: cur = c - mode = 'tag' - elif c in string.whitespace: out.append(cur+c); cur = '' - else: cur += c - out.append(cur) - return filter(lambda x: x is not '', out) - -if __name__ == '__main__': - import sys - try: - a, b = sys.argv[1:3] - except ValueError: - print "htmldiff: highlight the differences between two html files" - print "usage: " + sys.argv[0] + " a b" - sys.exit(1) - print textDiff(open(a).read(), open(b).read()) - diff --git a/forum/utils/.svn/text-base/djangofix.py.svn-base b/forum/utils/.svn/text-base/djangofix.py.svn-base deleted file mode 100644 index d74e48dd8ba38e1019d473a5049645601aa0361e..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/djangofix.py.svn-base +++ /dev/null @@ -1,21 +0,0 @@ -import re -import urllib -from forum.modules import decorate - -from django.template.defaultfilters import slugify -from django.utils.safestring import mark_safe -from django.utils.http import urlquote_plus - -slug_re = re.compile(r'\w+', re.UNICODE) - -@decorate(slugify) -def imp_slugify(origin, value): - if settings.ALLOW_UNICODE_IN_SLUGS: - try: - bits = slug_re.findall(value.lower()) - return mark_safe("-".join(bits)) - except: - pass - return origin(value) - -from forum import settings \ No newline at end of file diff --git a/forum/utils/.svn/text-base/html.py.svn-base b/forum/utils/.svn/text-base/html.py.svn-base deleted file mode 100644 index 256a2d8ce2b2e67857523cd94c93d66c059d92a9..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/html.py.svn-base +++ /dev/null @@ -1,76 +0,0 @@ -"""Utilities for working with HTML.""" -#import html5lib -from html5lib import sanitizer, serializer, tokenizer, treebuilders, treewalkers, HTMLParser -from urllib import quote_plus -from django.utils.html import strip_tags -from forum.utils.html2text import HTML2Text -from django.utils.safestring import mark_safe -from forum import settings - -class HTMLSanitizerMixin(sanitizer.HTMLSanitizerMixin): - acceptable_elements = ('a', 'abbr', 'acronym', 'address', 'b', 'big', - 'blockquote', 'br', 'caption', 'center', 'cite', 'code', 'col', - 'colgroup', 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', 'em', 'font', - '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') - - acceptable_attributes = ('abbr', 'align', 'alt', 'axis', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'cite', - 'cols', 'colspan', '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', - 'width') - - allowed_elements = acceptable_elements - allowed_attributes = acceptable_attributes - allowed_css_properties = () - allowed_css_keywords = () - allowed_svg_properties = () - -class HTMLSanitizer(tokenizer.HTMLTokenizer, HTMLSanitizerMixin): - - def __iter__(self): - for token in tokenizer.HTMLTokenizer.__iter__(self): - token = self.sanitize_token(token) - if token: - yield token - -def sanitize_html(html): - """Sanitizes an HTML fragment.""" - p = HTMLParser(tokenizer=HTMLSanitizer, - tree=treebuilders.getTreeBuilder("dom")) - dom_tree = p.parseFragment(html) - walker = treewalkers.getTreeWalker("dom") - stream = walker(dom_tree) - s = serializer.HTMLSerializer(omit_optional_tags=False, - quote_attr_values=True) - output_generator = s.serialize(stream) - return u''.join(output_generator) - -def cleanup_urls(url): - return quote_plus(strip_tags(url)) - - -def html2text(s, ignore_tags=(), indent_width=4, page_width=80): - ignore_tags = [t.lower() for t in ignore_tags] - parser = HTML2Text(ignore_tags, indent_width, page_width) - parser.feed(s) - parser.close() - parser.generate() - return mark_safe(parser.result) - -def buildtag(name, content, **attrs): - return mark_safe('<%s %s>%s</%s>' % (name, " ".join('%s="%s"' % i for i in attrs.items()), unicode(content), name)) - -def hyperlink(url, title, **attrs): - return mark_safe('<a href="%s" %s>%s</a>' % (url, " ".join('%s="%s"' % i for i in attrs.items()), title)) - -def objlink(obj, **attrs): - return hyperlink(settings.APP_URL + obj.get_absolute_url(), unicode(obj), **attrs) - - - - diff --git a/forum/utils/.svn/text-base/html2text.py.svn-base b/forum/utils/.svn/text-base/html2text.py.svn-base deleted file mode 100644 index 3b517712e6191369d76ff9645996d75a554971e2..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/html2text.py.svn-base +++ /dev/null @@ -1,140 +0,0 @@ -# Copyright (c) 2001 Chris Withers -# -# This Software is released under the MIT License: -# http://www.opensource.org/licenses/mit-license.html -# See license.txt for more details. -# -# $Id: html2text.py,v 1.7 2002/12/17 16:56:17 fresh Exp $ - -import sgmllib -from string import lower, replace, split, join - -class HTML2Text(sgmllib.SGMLParser): - - from htmlentitydefs import entitydefs # replace entitydefs from sgmllib - - def __init__(self, ignore_tags=(), indent_width=4, page_width=80): - sgmllib.SGMLParser.__init__(self) - self.result = "" - self.indent = 0 - self.ol_number = 0 - self.page_width=page_width - self.inde_width=indent_width - self.lines=[] - self.line=[] - self.ignore_tags = ignore_tags - - def add_text(self,text): - # convert text into words - words = split(replace(text,'\n',' ')) - self.line.extend(words) - - def add_break(self): - self.lines.append((self.indent,self.line)) - self.line=[] - - def generate(self): - # join lines with indents - indent_width = self.inde_width - page_width = self.page_width - out_paras=[] - for indent,line in self.lines+[(self.indent,self.line)]: - - i=indent*indent_width - indent_string = i*' ' - line_width = page_width-i - - out_para='' - out_line=[] - len_out_line=0 - for word in line: - len_word = len(word) - if len_out_line+len_word<line_width: - out_line.append(word) - len_out_line = len_out_line + len_word - else: - out_para = out_para + indent_string + join(out_line, ' ') + '\n' - out_line=[word] - len_out_line=len_word - - out_para = out_para + indent_string + join(out_line, ' ') - out_paras.append(out_para) - - self.result = join(out_paras,'\n\n') - - - def mod_indent(self,i): - self.indent = self.indent + i - if self.indent < 0: - self.indent = 0 - - def handle_data(self, data): - if data: - self.add_text(data) - - def unknown_starttag(self, tag, attrs): - """ Convert HTML to something meaningful in plain text """ - tag = lower(tag) - - if tag not in self.ignore_tags: - if tag[0]=='h' or tag in ['br','pre','p','hr']: - # insert a blank line - self.add_break() - - elif tag =='img': - # newline, text, newline - src = '' - - for k, v in attrs: - if lower(k) == 'src': - src = v - - self.add_break() - self.add_text('Image: ' + src) - - elif tag =='li': - self.add_break() - if self.ol_number: - # num - text - self.add_text(str(self.ol_number) + ' - ') - self.ol_number = self.ol_number + 1 - else: - # - text - self.add_text('- ') - - elif tag in ['dd','dt']: - self.add_break() - # increase indent - self.mod_indent(+1) - - elif tag in ['ul','dl','ol']: - # blank line - # increase indent - self.mod_indent(+1) - if tag=='ol': - self.ol_number = 1 - - def unknown_endtag(self, tag): - """ Convert HTML to something meaningful in plain text """ - tag = lower(tag) - - if tag not in self.ignore_tags: - if tag[0]=='h' or tag in ['pre']: - # newline, text, newline - self.add_break() - - elif tag =='li': - self.add_break() - - elif tag in ['dd','dt']: - self.add_break() - # descrease indent - self.mod_indent(-1) - - elif tag in ['ul','dl','ol']: - # blank line - self.add_break() - # decrease indent - self.mod_indent(-1) - self.ol_number = 0 - diff --git a/forum/utils/.svn/text-base/lists.py.svn-base b/forum/utils/.svn/text-base/lists.py.svn-base deleted file mode 100644 index bbcfae98fa8163d6abb857fbb5fc5cfed2214303..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/lists.py.svn-base +++ /dev/null @@ -1,86 +0,0 @@ -"""Utilities for working with lists and sequences.""" - -def flatten(x): - """ - Returns a single, flat list which contains all elements retrieved - from the sequence and all recursively contained sub-sequences - (iterables). - - Examples: - >>> [1, 2, [3, 4], (5, 6)] - [1, 2, [3, 4], (5, 6)] - - From http://kogs-www.informatik.uni-hamburg.de/~meine/python_tricks - """ - result = [] - for el in x: - if hasattr(el, '__iter__') and not isinstance(el, basestring): - result.extend(flatten(el)) - else: - result.append(el) - return result - -def batch_size(items, size): - """ - Retrieves items in batches of the given size. - - >>> l = range(1, 11) - >>> batch_size(l, 3) - [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]] - >>> batch_size(l, 5) - [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]] - """ - return [items[i:i+size] for i in xrange(0, len(items), size)] - -def batches(items, number): - """ - Retrieves items in the given number of batches. - - >>> l = range(1, 11) - >>> batches(l, 1) - [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]] - >>> batches(l, 2) - [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]] - >>> batches(l, 3) - [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10]] - >>> batches(l, 4) - [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]] - >>> batches(l, 5) - [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]] - - Initial batches will contain as many items as possible in cases where - there are not enough items to be distributed evenly. - - >>> batches(l, 6) - [[1, 2], [3, 4], [5, 6], [7, 8], [9], [10]] - >>> batches(l, 7) - [[1, 2], [3, 4], [5, 6], [7], [8], [9], [10]] - >>> batches(l, 8) - [[1, 2], [3, 4], [5], [6], [7], [8], [9], [10]] - >>> batches(l, 9) - [[1, 2], [3], [4], [5], [6], [7], [8], [9], [10]] - >>> batches(l, 10) - [[1], [2], [3], [4], [5], [6], [7], [8], [9], [10]] - - If there are more batches than items, empty batches will be appended - to the batch list. - - >>> batches(l, 11) - [[1], [2], [3], [4], [5], [6], [7], [8], [9], [10], []] - >>> batches(l, 12) - [[1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [], []] - """ - div, mod= divmod(len(items), number) - if div > 1: - if mod: - div += 1 - return batch_size(items, div) - else: - if not div: - return [[item] for item in items] + [[]] * (number - mod) - elif div == 1 and not mod: - return [[item] for item in items] - else: - # mod now tells you how many lists of 2 you can fit in - return ([items[i*2:(i*2)+2] for i in xrange(0, mod)] + - [[item] for item in items[mod*2:]]) diff --git a/forum/utils/.svn/text-base/mail.py.svn-base b/forum/utils/.svn/text-base/mail.py.svn-base deleted file mode 100644 index 370e0f9c9259dd20e040f6126c9ed7810c504c05..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/mail.py.svn-base +++ /dev/null @@ -1,113 +0,0 @@ -import email -import socket -import os -import logging - -try: - from email.mime.multipart import MIMEMultipart - from email.mime.text import MIMEText - from email.mime.image import MIMEImage - from email.header import Header -except: - from email.MIMEMultipart import MIMEMultipart - from email.MIMEText import MIMEText - from email.MIMEImage import MIMEImage - from email.Header import Header - -from django.core.mail import DNS_NAME -from smtplib import SMTP -from smtplib import SMTPRecipientsRefused -from forum import settings -from django.template import loader, Context, Template -from forum.utils.html import sanitize_html -from forum.context import application_settings -from forum.utils.html2text import HTML2Text -from threading import Thread - -def send_template_email(recipients, template, context): - t = loader.get_template(template) - context.update(dict(recipients=recipients, settings=settings)) - t.render(Context(context)) - -def create_connection(): - connection = SMTP(str(settings.EMAIL_HOST), str(settings.EMAIL_PORT), - local_hostname=DNS_NAME.get_fqdn()) - - if bool(settings.EMAIL_USE_TLS): - connection.ehlo() - connection.starttls() - connection.ehlo() - - if settings.EMAIL_HOST_USER and settings.EMAIL_HOST_PASSWORD: - connection.login(str(settings.EMAIL_HOST_USER), str(settings.EMAIL_HOST_PASSWORD)) - - return connection - - -def create_and_send_mail_messages(messages): - if not settings.EMAIL_HOST: - return - - sender = Header(unicode(settings.APP_SHORT_NAME), 'utf-8') - sender.append('<%s>' % unicode(settings.DEFAULT_FROM_EMAIL)) - sender = u'%s <%s>' % (unicode(settings.APP_SHORT_NAME), unicode(settings.DEFAULT_FROM_EMAIL)) - - reply_to = unicode(settings.DEFAULT_REPLY_TO_EMAIL) - - try: - connection = None - - if sender is None: - sender = str(settings.DEFAULT_FROM_EMAIL) - - for recipient, subject, html, text, media in messages: - if connection is None: - connection = create_connection() - - msgRoot = MIMEMultipart('related') - - msgRoot['Subject'] = Header(subject, 'utf-8') - msgRoot['From'] = sender - - to = Header(u"%s <%s>" % (recipient.username, recipient.email), 'utf-8') - msgRoot['To'] = to - - if reply_to: - msgRoot['Reply-To'] = reply_to - - msgRoot.preamble = 'This is a multi-part message from %s.' % unicode(settings.APP_SHORT_NAME).encode('utf8') - - msgAlternative = MIMEMultipart('alternative') - msgRoot.attach(msgAlternative) - - msgAlternative.attach(MIMEText(text.encode('utf-8'), _charset='utf-8')) - msgAlternative.attach(MIMEText(html.encode('utf-8'), 'html', _charset='utf-8')) - - for alias, location in media.items(): - fp = open(location, 'rb') - msgImage = MIMEImage(fp.read()) - fp.close() - msgImage.add_header('Content-ID', '<'+alias+'>') - msgRoot.attach(msgImage) - - try: - connection.sendmail(sender, [recipient.email], msgRoot.as_string()) - except SMTPRecipientsRefused, e: - logging.error("Email address not accepted. Exception: %s" % e) - except Exception, e: - logging.error("Couldn't send mail using the sendmail method: %s" % e) - try: - connection.quit() - except Exception, e: - logging.error(e) - finally: - connection = None - - try: - connection.quit() - except AttributeError: - pass - except socket.sslerror: - connection.close() - except Exception, e: - logging.error('Email sending has failed: %s' % e) diff --git a/forum/utils/.svn/text-base/pagination.py.svn-base b/forum/utils/.svn/text-base/pagination.py.svn-base deleted file mode 100644 index 67e2272b748efb47e0de69c82cc7ab001b4b8097..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/pagination.py.svn-base +++ /dev/null @@ -1,324 +0,0 @@ -import math -from django.utils.datastructures import SortedDict -from django import template -from django.core.paginator import Paginator, EmptyPage -from django.utils.translation import ugettext as _ -from django.utils.html import escape -from django.http import Http404 -from django.utils.encoding import smart_unicode -from django.utils.http import urlquote -from django.utils.safestring import mark_safe -from django.utils.html import strip_tags, escape -from forum.utils.html import sanitize_html -import logging - -def generate_uri(querydict, exclude=None): - all = [] - - for k, l in querydict.iterlists(): - if (not exclude) or (not k in exclude): - all += ["%s=%s" % (k, escape(urlquote(strip_tags(v)))) for v in l] - - return "&".join(all) - -class SortBase(object): - def __init__(self, label, description=''): - self.label = label - self.description = description - -class SimpleSort(SortBase): - def __init__(self, label, order_by, description=''): - super(SimpleSort, self) .__init__(label, description) - self.order_by = order_by - - def _get_order_by(self): - return isinstance(self.order_by, (list, tuple)) and self.order_by or [self.order_by] - - def apply(self, objects): - if self.order_by: - return objects.order_by(*self._get_order_by()) - - return objects - -class PaginatorContext(object): - visible_page_range = 5 - outside_page_range = 1 - - base_path = None - - def __init__(self, id, sort_methods=None, default_sort=None, force_sort = None, - pagesizes=None, default_pagesize=None, prefix=''): - self.id = id - if sort_methods: - self.has_sort = True - self.sort_methods = SortedDict(data=sort_methods) - - if not default_sort: - default_sort = sort_methods[0][0] - - self.default_sort = default_sort - else: - self.has_sort = False - - - if pagesizes: - self.has_pagesize = True - self.pagesizes = pagesizes - - if not default_pagesize: - self.default_pagesize = pagesizes[int(math.ceil(float(len(pagesizes)) / 2)) - 1] - else: - self.default_pagesize = default_pagesize - else: - self.has_pagesize = False - - self.force_sort = force_sort - self.prefix = prefix - - def preferences(self, request): - if request.user.is_authenticated(): - if request.user.prop.pagination: - preferences = request.user.prop.pagination.get(self.id, {}) - else: - preferences = {} - else: - preferences = request.session.get('paginator_%s%s' % (self.prefix, self.id), {}) - - return preferences - - def set_preferences(self, request, preferences): - if request.user.is_authenticated(): - all_preferences = request.user.prop.pagination or {} - all_preferences[self.id] = preferences - request.user.prop.pagination = all_preferences - else: - request.session['paginator_%s%s' % (self.prefix, self.id)] = preferences - - def pagesize(self, request, session_prefs=None): - if not session_prefs: - session_prefs = self.preferences(request) - - - if self.has_pagesize: - if request.GET.get(self.PAGESIZE, None): - try: - pagesize = int(request.GET[self.PAGESIZE]) - except ValueError: - logging.error('Found invalid page size "%s", loading %s, refered by %s' % ( - request.GET.get(self.PAGESIZE, ''), request.path, request.META.get('HTTP_REFERER', 'UNKNOWN') - )) - raise Http404() - - session_prefs[self.PAGESIZE] = pagesize - else: - pagesize = session_prefs.get(self.PAGESIZE, self.default_pagesize) - - if not pagesize in self.pagesizes: - pagesize = self.default_pagesize - else: - pagesize = 30 - - return pagesize - - def page(self, request): - try: - return int(request.GET.get(self.PAGE, "1").strip()) - except ValueError: - logging.error('Found invalid page number "%s", loading %s, refered by %s' % ( - request.GET.get(self.PAGE, ''), request.path, request.META.get('HTTP_REFERER', 'UNKNOWN') - )) - raise Http404() - - def sort(self, request, session_prefs=None): - if not session_prefs: - session_prefs = self.preferences(request) - - sort = None - sticky = request.user.is_authenticated() and request.user.prop.preferences and request.user.prop.preferences.get('sticky_sorts', False) - - if self.has_sort: - if request.GET.get(self.SORT, None): - sort = request.GET[self.SORT] - - if sticky: - session_prefs[self.SORT] = sort - else: - sort = self.force_sort or (sticky and session_prefs.get(self.SORT, None)) or self.default_sort - - if not sort in self.sort_methods: - sort = self.default_sort - - return sort - - def sorted(self, objects, request, session_prefs=None): - sort = self.sort(request, session_prefs) - - if sort: - objects = self.sort_methods[sort].apply(objects) - - return sort, objects - - @property - def PAGESIZE(self): - return self.prefix and "%s_%s" % (self.prefix, _('pagesize')) or _('pagesize') - - @property - def PAGE(self): - return self.prefix and "%s_%s" % (self.prefix, _('page')) or _('page') - - @property - def SORT(self): - return self.prefix and "%s_%s" % (self.prefix, _('sort')) or _('sort') - -page_numbers_template = template.loader.get_template('paginator/page_numbers.html') -page_sizes_template = template.loader.get_template('paginator/page_sizes.html') -sort_tabs_template = template.loader.get_template('paginator/sort_tabs.html') - -def paginated(request, paginators, tpl_context): - if len(paginators) == 2 and isinstance(paginators[0], basestring): - paginators = (paginators,) - - for list_name, context in paginators: - tpl_context[list_name] = _paginated(request, tpl_context[list_name], context) - - return tpl_context - -def _paginated(request, objects, context): - session_prefs = context.preferences(request) - - pagesize = context.pagesize(request, session_prefs) - page = context.page(request) - sort, objects = context.sorted(objects, request, session_prefs) - - paginator = Paginator(objects, pagesize) - - try: - page_obj = paginator.page(page) - except EmptyPage: - logging.error('Found invalid page number "%s", loading %s, refered by %s' % ( - request.GET.get(context.PAGE, ''), request.path, request.META.get('HTTP_REFERER', 'UNKNOWN') - )) - raise Http404() - - if context.base_path: - base_path = context.base_path - else: - base_path = request.path - get_params = generate_uri(request.GET, (context.PAGE, context.PAGESIZE, context.SORT)) - - if get_params: - base_path += "?" + get_params - - url_joiner = "?" in base_path and "&" or "?" - - - def get_page(): - object_list = page_obj.object_list - - #if hasattr(object_list, 'lazy'): - # return object_list.lazy() - return object_list - paginator.page = get_page() - - total_pages = paginator.num_pages - - if total_pages > 1: - - total_pages = paginator.num_pages - - has_previous = page > 1 - has_next = page < total_pages - - range_start = page - context.visible_page_range / 2 - range_end = page + context.visible_page_range / 2 - - if range_start < 1: - range_end = context.visible_page_range - range_start = 1 - - if range_end > total_pages: - range_start = total_pages - context.visible_page_range + 1 - range_end = total_pages - if range_start < 1: - range_start = 1 - - page_numbers = [] - - if sort: - url_builder = lambda n: mark_safe("%s%s%s=%s&%s=%s" % (escape(base_path), url_joiner, context.SORT, sort, context.PAGE, n)) - else: - url_builder = lambda n: mark_safe("%s%s%s=%s" % (escape(base_path), url_joiner, context.PAGE, n)) - - if range_start > (context.outside_page_range + 1): - page_numbers.append([(n, url_builder(n)) for n in range(1, context.outside_page_range + 1)]) - page_numbers.append(None) - elif range_start > 1: - page_numbers.append([(n, url_builder(n)) for n in range(1, range_start)]) - - page_numbers.append([(n, url_builder(n)) for n in range(range_start, range_end + 1)]) - - if range_end < (total_pages - context.outside_page_range): - page_numbers.append(None) - page_numbers.append([(n, url_builder(n)) for n in range(total_pages - context.outside_page_range + 1, total_pages + 1)]) - elif range_end < total_pages: - page_numbers.append([(n, url_builder(n)) for n in range(range_end + 1, total_pages + 1)]) - - page_numbers_context = { - 'has_previous': has_previous, - 'previous_url': has_previous and url_builder(page - 1) or None, - 'has_next': has_next, - 'next_url': has_next and url_builder(page + 1) or None, - 'current': page, - 'page_numbers': page_numbers - } - - paginator.page_numbers_context = page_numbers_context - - def page_nums(): - return page_numbers_template.render(template.Context(page_numbers_context)) - - paginator.page_numbers = page_nums - else: - paginator.page_numbers = '' - - if pagesize: - def page_sizes(): - if sort: - url_builder = lambda s: mark_safe("%s%s%s=%s&%s=%s" % (escape(base_path), url_joiner, context.SORT, sort, context.PAGESIZE, s)) - else: - url_builder = lambda s: mark_safe("%s%s%s=%s" % (escape(base_path), url_joiner, context.PAGESIZE, s)) - - sizes = [(s, url_builder(s)) for s in context.pagesizes] - - return page_sizes_template.render(template.Context({ - 'current': pagesize, - 'sizes': sizes - })) - - paginator.page_sizes = page_sizes - else: - paginator.page_sizes = '' - - if sort: - def sort_tabs(): - url_builder = lambda s: mark_safe("%s%s%s=%s" % (escape(base_path), url_joiner, context.SORT, s)) - sorts = [(n, s.label, url_builder(n), strip_tags(s.description)) for n, s in context.sort_methods.items()] - - for name, label, url, descr in sorts: - paginator.__dict__['%s_sort_link' % name] = smart_unicode(url) - - return sort_tabs_template.render(template.Context({ - 'current': sort, - 'sorts': sorts, - 'sticky': session_prefs.get('sticky_sort', False) - })) - paginator.sort_tabs = sort_tabs() - paginator.sort_description = mark_safe(context.sort_methods[sort].description) - paginator.current_sort = sort - else: - paginator.sort_tabs = paginator.sort_description = '' - paginator.current_sort = '' - - context.set_preferences(request, session_prefs) - objects.paginator = paginator - return objects diff --git a/forum/utils/.svn/text-base/time.py.svn-base b/forum/utils/.svn/text-base/time.py.svn-base deleted file mode 100644 index 39e01d0f20b2993a06e4817a2887bc76aaf27e13..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/time.py.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -import datetime - -def one_day_from_now(): - return datetime.datetime.now() + datetime.timedelta(days=1) diff --git a/forum/utils/.svn/text-base/userlinking.py.svn-base b/forum/utils/.svn/text-base/userlinking.py.svn-base deleted file mode 100644 index 741a950775afe6d7ea7abc6714e4a904f94495d6..0000000000000000000000000000000000000000 --- a/forum/utils/.svn/text-base/userlinking.py.svn-base +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- - -import re - -from django.utils.encoding import smart_unicode -from forum.models.user import User - -def find_best_match_in_name(content, uname, fullname, start_index): - uname = smart_unicode(uname) - fullname = smart_unicode(fullname) - - end_index = start_index + len(fullname) - - while end_index > start_index: - if content[start_index : end_index].lower() == fullname.lower(): - return content[start_index : end_index] - - while len(fullname) and fullname[-1] != ' ': - fullname = fullname[:-1] - - fullname = fullname.rstrip() - end_index = start_index + len(fullname) - - return uname - -APPEAL_PATTERN = re.compile(r'(?<!\w)@\w+', re.UNICODE) - -def auto_user_link(node, content): - - active_users = node.absolute_parent.get_active_users() - - appeals = APPEAL_PATTERN.finditer(content) - - replacements = [] - - for appeal in appeals: - # Try to find the profile URL - username = smart_unicode(appeal.group(0)[1:]) - - matches = [] - - for user in active_users: - if smart_unicode(user.username).lower().startswith(username.lower()): - matches.append(user) - - if len(matches) == 1: - replacements.append( - (find_best_match_in_name(content, username, smart_unicode(matches[0].username), appeal.start(0) + 1), matches[0]) - ) - elif len(matches) == 0: - matches = User.objects.filter(username__istartswith=username) - - if (len(matches) == 0): - continue - - best_user_match = None - final_match = "" - - for user in matches: - user_match = find_best_match_in_name(content, username, smart_unicode(user.username), appeal.start(0) + 1) - - if (len(user_match) < len(final_match)): - continue - - if (len(user_match) == len(final_match)): - if not (smart_unicode(user.username).lower() == user_match.lower()): - continue - - if (best_user_match and (smart_unicode(best_user_match.username) == final_match)): - continue - - best_user_match = user - final_match = user_match - - replacements.append((final_match, best_user_match)) - - for replacement in replacements: - to_replace = "@" + smart_unicode(replacement[0]) - profile_url = replacement[1].get_absolute_url() - - auto_link = '<a href="%s">%s</a>' % (profile_url, to_replace) - content = content.replace(to_replace, auto_link) - - return content diff --git a/forum/views/.svn/all-wcprops b/forum/views/.svn/all-wcprops deleted file mode 100644 index 882213543718e84344a1724bcc20f2cfcb0986d4..0000000000000000000000000000000000000000 --- a/forum/views/.svn/all-wcprops +++ /dev/null @@ -1,65 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 45 -/svnroot/!svn/ver/1270/osqa/trunk/forum/views -END -vars.py -K 25 -svn:wc:ra_dav:version-url -V 52 -/svnroot/!svn/ver/821/osqa/trunk/forum/views/vars.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/187/osqa/trunk/forum/views/__init__.py -END -writers.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1254/osqa/trunk/forum/views/writers.py -END -auth.py -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1269/osqa/trunk/forum/views/auth.py -END -commands.py -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1267/osqa/trunk/forum/views/commands.py -END -users.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1270/osqa/trunk/forum/views/users.py -END -decorators.py -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1120/osqa/trunk/forum/views/decorators.py -END -readers.py -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1240/osqa/trunk/forum/views/readers.py -END -meta.py -K 25 -svn:wc:ra_dav:version-url -V 53 -/svnroot/!svn/ver/1137/osqa/trunk/forum/views/meta.py -END -admin.py -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1223/osqa/trunk/forum/views/admin.py -END diff --git a/forum/views/.svn/dir-prop-base b/forum/views/.svn/dir-prop-base deleted file mode 100644 index d90394ed9a8c40af42335b0538dd55f183fbd978..0000000000000000000000000000000000000000 --- a/forum/views/.svn/dir-prop-base +++ /dev/null @@ -1,9 +0,0 @@ -K 13 -svn:mergeinfo -V 230 -/osqa/branches/cacheimp/forum/views:874-939 -/osqa/branches/carpenter/forum/views:691-725 -/osqa/branches/hernani/forum/views:772-832 -/osqa/branches/jambazov/forum/views:675-831 -/osqa/branches/notification-config/forum/views:693-848 -END diff --git a/forum/views/.svn/entries b/forum/views/.svn/entries deleted file mode 100644 index 382c2558189f6cb03fe7597e917cd711f73e2777..0000000000000000000000000000000000000000 --- a/forum/views/.svn/entries +++ /dev/null @@ -1,368 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum/views -http://svn.osqa.net/svnroot - - - -2012-06-09T13:15:36.970239Z -1270 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -decorators.py -file - - - - -2012-06-22T20:34:43.328111Z -e1eab2a252d2b4ada8a601078f6ad2cc -2011-07-15T11:41:58.770188Z -1120 -jordan - - - - - - - - - - - - - - - - - - - - - -2869 - -readers.py -file - - - - -2012-06-22T20:34:43.328111Z -13b04a709443509b5039f89fa5f8e2f6 -2012-04-02T22:43:05.984357Z -1240 -jordan - - - - - - - - - - - - - - - - - - - - - -16591 - -meta.py -file - - - - -2012-06-22T20:34:43.328111Z -bd4eda6c57fc944eeb444eab1938781a -2011-07-31T12:22:09.606695Z -1137 -jordan - - - - - - - - - - - - - - - - - - - - - -7297 - -admin.py -file - - - - -2012-06-22T20:34:43.324113Z -aaea758ddc9b6313fd93500b5ac3c851 -2012-01-25T11:35:23.115526Z -1223 -jordan - - - - - - - - - - - - - - - - - - - - - -22344 - -vars.py -file - - - - -2012-06-22T20:34:43.324113Z -595a12b92b6dbbc765c60434e8099627 -2011-03-11T19:50:09.258286Z -821 -hernani - - - - - - - - - - - - - - - - - - - - - -101 - -__init__.py -file - - - - -2012-06-22T20:34:43.324113Z -0ba061e09812df8939278c221dc60760 -2010-05-10T03:34:09.062880Z -187 -hernani - - - - - - - - - - - - - - - - - - - - - -301 - -writers.py -file - - - - -2012-06-22T20:34:43.324113Z -0cad4229cad0f2d026b539babf8feba0 -2012-04-24T22:10:48.665734Z -1254 -jordan - - - - - - - - - - - - - - - - - - - - - -12694 - -auth.py -file - - - - -2012-06-22T20:34:43.324113Z -a8e4d606e4278b365cf7a1e739fc5980 -2012-05-27T12:49:51.488050Z -1269 -jordan - - - - - - - - - - - - - - - - - - - - - -18564 - -commands.py -file - - - - -2012-06-22T20:34:43.328111Z -e8d12b69e856f586eb21463534f89f4f -2012-05-22T15:15:56.940302Z -1267 -jordan - - - - - - - - - - - - - - - - - - - - - -23967 - -users.py -file - - - - -2012-06-22T20:34:43.328111Z -f1a3f8a77efa6a4cecffa74717a098ca -2012-06-09T13:15:36.970239Z -1270 -jordan - - - - - - - - - - - - - - - - - - - - - -19288 - diff --git a/forum/views/.svn/text-base/__init__.py.svn-base b/forum/views/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index f169b50b6c1bcf2c0ce8edbf0edc10bdf9e9ef11..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -import readers -import writers -import commands -import users -import meta -import auth -import admin - -#from forum.modules.decorators import decorate_all - -#decorate_all(readers) -#decorate_all(writers) -#decorate_all(commands) -#decorate_all(users) -#decorate_all(meta) -#decorate_all(auth) -#decorate_all(admin) diff --git a/forum/views/.svn/text-base/admin.py.svn-base b/forum/views/.svn/text-base/admin.py.svn-base deleted file mode 100644 index da9dc67cdc326bd4b7124b84d76657f60fdbdd27..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/admin.py.svn-base +++ /dev/null @@ -1,593 +0,0 @@ -from datetime import datetime, timedelta -import time - -from django.views.decorators.csrf import csrf_exempt -from django.shortcuts import render_to_response, get_object_or_404 -from django.core.urlresolvers import reverse -from django.http import HttpResponseRedirect, HttpResponse, Http404 -from django.template import RequestContext -from django.utils.translation import ugettext as _ -from django.utils import simplejson -from django.db import models - -from forum.http_responses import HttpResponseUnauthorized -from forum.settings.base import Setting -from forum.forms import MaintenanceModeForm, PageForm, CreateUserForm -from forum.settings.forms import SettingsSetForm -from forum.utils import pagination, html -from forum.utils.mail import send_template_email -from forum.models import Question, Answer, User, Node, Action, Page, NodeState, Tag -from forum.models.node import NodeMetaClass -from forum.actions import NewPageAction, EditPageAction, PublishAction, DeleteAction, UserJoinsAction, CloseAction -from forum import settings - -TOOLS = {} - -def super_user_required(fn): - def wrapper(request, *args, **kwargs): - if request.user.is_authenticated() and request.user.is_superuser: - return fn(request, *args, **kwargs) - else: - return HttpResponseUnauthorized(request) - - return wrapper - -def staff_user_required(fn): - def wrapper(request, *args, **kwargs): - if request.user.is_authenticated() and (request.user.is_staff or request.user.is_superuser): - return fn(request, *args, **kwargs) - else: - return HttpResponseUnauthorized(request) - - return wrapper - -def admin_page_wrapper(fn, request, *args, **kwargs): - res = fn(request, *args, **kwargs) - if isinstance(res, HttpResponse): - return res - - template, context = res - context['basetemplate'] = settings.DJSTYLE_ADMIN_INTERFACE and "osqaadmin/djstyle_base.html" or "osqaadmin/base.html" - context['allsets'] = Setting.sets - context['othersets'] = sorted( - [s for s in Setting.sets.values() if not s.name in - ('basic', 'users', 'email', 'paths', 'extkeys', 'repgain', 'minrep', 'voting', 'accept', 'badges', 'about', 'faq', 'sidebar', - 'form', 'moderation', 'css', 'headandfoot', 'head', 'view', 'urls')] - , lambda s1, s2: s1.weight - s2.weight) - - context['tools'] = [(name, fn.label) for name, fn in TOOLS.items()] - - # Show the navigation only to moderators and super users - if not context.has_key("hide_navigation"): - context['hide_navigation'] = not request.user.is_superuser - - unsaved = request.session.get('previewing_settings', {}) - context['unsaved'] = set([getattr(settings, s).set.name for s in unsaved.keys() if hasattr(settings, s)]) - - return render_to_response(template, context, context_instance=RequestContext(request)) - -def admin_page(fn): - @super_user_required - def wrapper(request, *args, **kwargs): - return admin_page_wrapper(fn, request, *args, **kwargs) - - return wrapper - -def moderation_page(fn): - @staff_user_required - def wrapper(request, *args, **kwargs): - return admin_page_wrapper(fn, request, *args, **kwargs) - - return wrapper - -def admin_tools_page(name, label): - def decorator(fn): - fn = admin_page(fn) - fn.label = label - TOOLS[name] = fn - - return fn - return decorator - -class ActivityPaginatorContext(pagination.PaginatorContext): - def __init__(self): - super (ActivityPaginatorContext, self).__init__('ADMIN_RECENT_ACTIVITY', pagesizes=(20, 40, 80), default_pagesize=40) - -@admin_page -def dashboard(request): - return ('osqaadmin/dashboard.html', pagination.paginated(request, ("recent_activity", ActivityPaginatorContext()), { - 'settings_pack': unicode(settings.SETTINGS_PACK), - 'statistics': get_statistics(), - 'recent_activity': get_recent_activity(), - 'flagged_posts': get_flagged_posts(), - })) - -@super_user_required -def interface_switch(request): - if request.GET and request.GET.get('to', None) and request.GET['to'] in ('default', 'djstyle'): - settings.DJSTYLE_ADMIN_INTERFACE.set_value(request.GET['to'] == 'djstyle') - - return HttpResponseRedirect(reverse('admin_index')) - -@admin_page -def statistics(request): - today = datetime.now() - last_month = today - timedelta(days=30) - - last_month_questions = Question.objects.filter_state(deleted=False).filter(added_at__gt=last_month - ).order_by('added_at').values_list( - 'added_at', flat=True) - - last_month_n_questions = Question.objects.filter_state(deleted=False).filter(added_at__lt=last_month).count() - qgraph_data = simplejson.dumps([ - (time.mktime(d.timetuple()) * 1000, i + last_month_n_questions) - for i, d in enumerate(last_month_questions) - ]) - - last_month_users = User.objects.filter(date_joined__gt=last_month - ).order_by('date_joined').values_list('date_joined', flat=True) - - last_month_n_users = User.objects.filter(date_joined__lt=last_month).count() - - ugraph_data = simplejson.dumps([ - (time.mktime(d.timetuple()) * 1000, i + last_month_n_users) - for i, d in enumerate(last_month_users) - ]) - - return 'osqaadmin/statistics.html', { - 'graphs': [ - { - 'id': 'questions_graph', - 'caption': _("Questions Graph"), - 'data': qgraph_data - }, { - 'id': 'userss_graph', - 'caption': _("Users Graph"), - 'data': ugraph_data - } - ] - } - -@admin_page -def tools_page(request, name): - if not name in TOOLS: - raise Http404 - - return TOOLS[name](request) - - -@admin_page -def settings_set(request, set_name): - set = Setting.sets.get(set_name, {}) - current_preview = request.session.get('previewing_settings', {}) - - if set is None: - raise Http404 - - if request.POST: - form = SettingsSetForm(set, data=request.POST, files=request.FILES) - - if form.is_valid(): - if 'preview' in request.POST: - current_preview.update(form.cleaned_data) - request.session['previewing_settings'] = current_preview - - return HttpResponseRedirect(reverse('index')) - else: - for s in set: - current_preview.pop(s.name, None) - - request.session['previewing_settings'] = current_preview - - if not 'reset' in request.POST: - form.save() - request.user.message_set.create(message=_("'%s' settings saved succesfully") % set_name) - - if set_name in ('minrep', 'badges', 'repgain'): - settings.SETTINGS_PACK.set_value("custom") - - return HttpResponseRedirect(reverse('admin_set', args=[set_name])) - else: - form = SettingsSetForm(set, unsaved=current_preview) - - return 'osqaadmin/set.html', { - 'form': form, - 'markdown': set.markdown, - } - -@super_user_required -def get_default(request, set_name, var_name): - set = Setting.sets.get(set_name, None) - if set is None: raise Http404 - - setting = dict([(s.name, s) for s in set]).get(var_name, None) - if setting is None: raise Http404 - - setting.to_default() - - if request.is_ajax(): - return HttpResponse(setting.default) - else: - return HttpResponseRedirect(reverse('admin_set', kwargs={'set_name': set_name})) - - -def get_recent_activity(): - return Action.objects.order_by('-action_date') - -def get_flagged_posts(): - return Action.objects.filter(canceled=False, action_type="flag").order_by('-action_date')[0:30] - -def get_statistics(): - return { - 'total_users': User.objects.all().count(), - 'users_last_24': User.objects.filter(date_joined__gt=(datetime.now() - timedelta(days=1))).count(), - 'total_questions': Question.objects.filter_state(deleted=False).count(), - 'questions_last_24': Question.objects.filter_state(deleted=False).filter( - added_at__gt=(datetime.now() - timedelta(days=1))).count(), - 'total_answers': Answer.objects.filter_state(deleted=False).count(), - 'answers_last_24': Answer.objects.filter_state(deleted=False).filter( - added_at__gt=(datetime.now() - timedelta(days=1))).count(), - } - -@super_user_required -def go_bootstrap(request): -#todo: this is the quick and dirty way of implementing a bootstrap mode - try: - from forum_modules.default_badges import settings as dbsets - dbsets.POPULAR_QUESTION_VIEWS.set_value(100) - dbsets.NOTABLE_QUESTION_VIEWS.set_value(200) - dbsets.FAMOUS_QUESTION_VIEWS.set_value(300) - dbsets.NICE_ANSWER_VOTES_UP.set_value(2) - dbsets.NICE_QUESTION_VOTES_UP.set_value(2) - dbsets.GOOD_ANSWER_VOTES_UP.set_value(4) - dbsets.GOOD_QUESTION_VOTES_UP.set_value(4) - dbsets.GREAT_ANSWER_VOTES_UP.set_value(8) - dbsets.GREAT_QUESTION_VOTES_UP.set_value(8) - dbsets.FAVORITE_QUESTION_FAVS.set_value(1) - dbsets.STELLAR_QUESTION_FAVS.set_value(3) - dbsets.DISCIPLINED_MIN_SCORE.set_value(3) - dbsets.PEER_PRESSURE_MAX_SCORE.set_value(-3) - dbsets.CIVIC_DUTY_VOTES.set_value(15) - dbsets.PUNDIT_COMMENT_COUNT.set_value(10) - dbsets.SELF_LEARNER_UP_VOTES.set_value(2) - dbsets.STRUNK_AND_WHITE_EDITS.set_value(10) - dbsets.ENLIGHTENED_UP_VOTES.set_value(2) - dbsets.GURU_UP_VOTES.set_value(4) - dbsets.NECROMANCER_UP_VOTES.set_value(2) - dbsets.NECROMANCER_DIF_DAYS.set_value(30) - dbsets.TAXONOMIST_USE_COUNT.set_value(5) - except: - pass - - settings.REP_TO_VOTE_UP.set_value(0) - settings.REP_TO_VOTE_DOWN.set_value(15) - settings.REP_TO_FLAG.set_value(15) - settings.REP_TO_COMMENT.set_value(0) - settings.REP_TO_LIKE_COMMENT.set_value(0) - settings.REP_TO_UPLOAD.set_value(0) - settings.REP_TO_CREATE_TAGS.set_value(0) - settings.REP_TO_CLOSE_OWN.set_value(60) - settings.REP_TO_REOPEN_OWN.set_value(120) - settings.REP_TO_RETAG.set_value(150) - settings.REP_TO_EDIT_WIKI.set_value(200) - settings.REP_TO_EDIT_OTHERS.set_value(400) - settings.REP_TO_CLOSE_OTHERS.set_value(600) - settings.REP_TO_DELETE_COMMENTS.set_value(400) - settings.REP_TO_VIEW_FLAGS.set_value(30) - - settings.INITIAL_REP.set_value(1) - settings.MAX_REP_BY_UPVOTE_DAY.set_value(300) - settings.REP_GAIN_BY_UPVOTED.set_value(15) - settings.REP_LOST_BY_DOWNVOTED.set_value(1) - settings.REP_LOST_BY_DOWNVOTING.set_value(0) - settings.REP_GAIN_BY_ACCEPTED.set_value(25) - settings.REP_GAIN_BY_ACCEPTING.set_value(5) - settings.REP_LOST_BY_FLAGGED.set_value(2) - settings.REP_LOST_BY_FLAGGED_3_TIMES.set_value(30) - settings.REP_LOST_BY_FLAGGED_5_TIMES.set_value(100) - - settings.SETTINGS_PACK.set_value("bootstrap") - - request.user.message_set.create(message=_('Bootstrap mode enabled')) - return HttpResponseRedirect(reverse('admin_index')) - -@super_user_required -def go_defaults(request): - for setting in Setting.sets['badges']: - setting.to_default() - for setting in Setting.sets['minrep']: - setting.to_default() - for setting in Setting.sets['repgain']: - setting.to_default() - - settings.SETTINGS_PACK.set_value("default") - - request.user.message_set.create(message=_('All values reverted to defaults')) - return HttpResponseRedirect(reverse('admin_index')) - - -@super_user_required -def recalculate_denormalized(request): - for n in Node.objects.all(): - n = n.leaf - n.score = n.votes.aggregate(score=models.Sum('value'))['score'] - if not n.score: n.score = 0 - n.save() - - for u in User.objects.all(): - u.reputation = u.reputes.aggregate(reputation=models.Sum('value'))['reputation'] - u.save() - - request.user.message_set.create(message=_('All values recalculated')) - return HttpResponseRedirect(reverse('admin_index')) - -@admin_page -def maintenance(request): - if request.POST: - if 'close' in request.POST or 'adjust' in request.POST: - form = MaintenanceModeForm(request.POST) - - if form.is_valid(): - settings.MAINTAINANCE_MODE.set_value({ - 'allow_ips': form.cleaned_data['ips'], - 'message': form.cleaned_data['message']}) - - if 'close' in request.POST: - message = _('Maintenance mode enabled') - else: - message = _('Settings adjusted') - - request.user.message_set.create(message=message) - - return HttpResponseRedirect(reverse('admin_maintenance')) - elif 'open' in request.POST: - settings.MAINTAINANCE_MODE.set_value(None) - request.user.message_set.create(message=_("Your site is now running normally")) - return HttpResponseRedirect(reverse('admin_maintenance')) - else: - form = MaintenanceModeForm(initial={'ips': request.META['REMOTE_ADDR'], - 'message': _('Currently down for maintenance. We\'ll be back soon')}) - - return ('osqaadmin/maintenance.html', {'form': form, 'in_maintenance': settings.MAINTAINANCE_MODE.value is not None - }) - - -@moderation_page -def flagged_posts(request): - return ('osqaadmin/flagged_posts.html', { - 'flagged_posts': get_flagged_posts(), - }) - -@admin_page -def static_pages(request): - pages = Page.objects.all() - - return ('osqaadmin/static_pages.html', { - 'pages': pages, - }) - -@admin_page -def edit_page(request, id=None): - if id: - page = get_object_or_404(Page, id=id) - else: - page = None - - if request.POST: - form = PageForm(page, request.POST) - - if form.is_valid(): - if form.has_changed(): - if not page: - page = NewPageAction(user=request.user, ip=request.META['REMOTE_ADDR']).save(data=form.cleaned_data - ).node - else: - EditPageAction(user=request.user, node=page, ip=request.META['REMOTE_ADDR']).save( - data=form.cleaned_data) - - if ('publish' in request.POST) and (not page.published): - PublishAction(user=request.user, node=page, ip=request.META['REMOTE_ADDR']).save() - elif ('unpublish' in request.POST) and page.published: - page.nstate.published.cancel(ip=request.META['REMOTE_ADDR']) - - return HttpResponseRedirect(reverse('admin_edit_page', kwargs={'id': page.id})) - - else: - form = PageForm(page) - - if page: - published = page.published - else: - published = False - - return ('osqaadmin/edit_page.html', { - 'page': page, - 'form': form, - 'published': published - }) - -@admin_page -def delete_page(request, id=None): - page = get_object_or_404(Page, id=id) - page.delete() - return HttpResponseRedirect(reverse('admin_static_pages')) - -@admin_tools_page(_('createuser'), _("Create new user")) -def create_user(request): - if request.POST: - form = CreateUserForm(request.POST) - - if form.is_valid(): - user_ = User(username=form.cleaned_data['username'], email=form.cleaned_data['email']) - user_.set_password(form.cleaned_data['password1']) - - if not form.cleaned_data.get('validate_email', False): - user_.email_isvalid = True - - user_.save() - UserJoinsAction(user=user_).save() - - request.user.message_set.create(message=_("New user created sucessfully. %s.") % html.hyperlink( - user_.get_profile_url(), _("See %s profile") % user_.username, target="_blank")) - - return HttpResponseRedirect(reverse("admin_tools", kwargs={'name': 'createuser'})) - else: - form = CreateUserForm() - - return ('osqaadmin/createuser.html', { - 'form': form, - }) - -class NodeManagementPaginatorContext(pagination.PaginatorContext): - def __init__(self, id='QUESTIONS_LIST', prefix='', default_pagesize=100): - super (NodeManagementPaginatorContext, self).__init__(id, sort_methods=( - (_('added_at'), pagination.SimpleSort(_('added_at'), '-added_at', "")), - (_('added_at_asc'), pagination.SimpleSort(_('added_at_asc'), 'added_at', "")), - (_('author'), pagination.SimpleSort(_('author'), '-author__username', "")), - (_('author_asc'), pagination.SimpleSort(_('author_asc'), 'author__username', "")), - (_('score'), pagination.SimpleSort(_('score'), '-score', "")), - (_('score_asc'), pagination.SimpleSort(_('score_asc'), 'score', "")), - (_('act_at'), pagination.SimpleSort(_('act_at'), '-last_activity_at', "")), - (_('act_at_asc'), pagination.SimpleSort(_('act_at_asc'), 'last_activity_at', "")), - (_('act_by'), pagination.SimpleSort(_('act_by'), '-last_activity_by__username', "")), - (_('act_by_asc'), pagination.SimpleSort(_('act_by_asc'), 'last_activity_by__username', "")), - ), pagesizes=(default_pagesize,), force_sort='added_at', default_pagesize=default_pagesize, prefix=prefix) - -@admin_tools_page(_("nodeman"), _("Bulk management")) -def node_management(request): - if request.POST: - params = pagination.generate_uri(request.GET, ('page',)) - - if "save_filter" in request.POST: - filter_name = request.POST.get('filter_name', _('filter')) - params = pagination.generate_uri(request.GET, ('page',)) - current_filters = settings.NODE_MAN_FILTERS.value - current_filters.append((filter_name, params)) - settings.NODE_MAN_FILTERS.set_value(current_filters) - - elif r"execute" in request.POST: - selected_nodes = request.POST.getlist('_selected_node') - - if selected_nodes and request.POST.get('action', None): - action = str(request.POST['action']) - selected_nodes = Node.objects.filter(id__in=selected_nodes) - - message = _("No action performed") - - if action == 'delete_selected': - for node in selected_nodes: - if node.node_type in ('question', 'answer', 'comment') and (not node.nis.deleted): - DeleteAction(user=request.user, node=node, ip=request.META['REMOTE_ADDR']).save() - - message = _("All selected nodes marked as deleted") - - if action == 'undelete_selected': - for node in selected_nodes: - if node.node_type in ('question', 'answer', 'comment') and (node.nis.deleted): - node.nstate.deleted.cancel(ip=request.META['REMOTE_ADDR']) - - message = _("All selected nodes undeleted") - - if action == "close_selected": - for node in selected_nodes: - if node.node_type == "question" and (not node.nis.closed): - CloseAction(node=node.leaf, user=request.user, extra=_("bulk close"), ip=request.META['REMOTE_ADDR']).save() - - message = _("Selected questions were closed") - - if action == "hard_delete_selected": - ids = [n.id for n in selected_nodes] - - for id in ids: - try: - node = Node.objects.get(id=id) - node.delete() - except: - pass - - message = _("All selected nodes deleted") - - request.user.message_set.create(message=message) - - params = pagination.generate_uri(request.GET, ('page',)) - - return HttpResponseRedirect(reverse("admin_tools", kwargs={'name': 'nodeman'}) + "?" + params) - - - nodes = Node.objects.all() - - text = request.GET.get('text', '') - text_in = request.GET.get('text_in', 'body') - - authors = request.GET.getlist('authors') - tags = request.GET.getlist('tags') - - type_filter = request.GET.getlist('node_type') - state_filter = request.GET.getlist('state_type') - state_filter_type = request.GET.get('state_filter_type', 'any') - - if type_filter: - nodes = nodes.filter(node_type__in=type_filter) - - state_types = NodeState.objects.filter(node__in=nodes).values_list('state_type', flat=True).distinct('state_type') - state_filter = [s for s in state_filter if s in state_types] - - if state_filter: - if state_filter_type == 'all': - nodes = nodes.all_states(*state_filter) - else: - nodes = nodes.any_state(*state_filter) - - if (authors): - nodes = nodes.filter(author__id__in=authors) - authors = User.objects.filter(id__in=authors) - - if (tags): - nodes = nodes.filter(tags__id__in=tags) - tags = Tag.objects.filter(id__in=tags) - - if text: - text_in = request.GET.get('text_in', 'body') - filter = None - - if text_in == 'title' or text_in == 'both': - filter = models.Q(title__icontains=text) - - if text_in == 'body' or text_in == 'both': - sec_filter = models.Q(body__icontains=text) - if filter: - filter = filter | sec_filter - else: - filter = sec_filter - - if filter: - nodes = nodes.filter(filter) - - node_types = [(k, n.friendly_name) for k, n in NodeMetaClass.types.items()] - - return ('osqaadmin/nodeman.html', pagination.paginated(request, ("nodes", NodeManagementPaginatorContext()), { - 'nodes': nodes, - 'text': text, - 'text_in': text_in, - 'type_filter': type_filter, - 'state_filter': state_filter, - 'state_filter_type': state_filter_type, - 'node_types': node_types, - 'state_types': state_types, - 'authors': authors, - 'tags': tags, - 'hide_navigation': True - })) - -@csrf_exempt -@super_user_required -def test_email_settings(request): - user = request.user - - send_template_email([user,], 'osqaadmin/mail_test.html', { 'user' : user }) - - return render_to_response( - 'osqaadmin/test_email_settings.html', - { 'user': user, }, - RequestContext(request) - ) \ No newline at end of file diff --git a/forum/views/.svn/text-base/auth.py.svn-base b/forum/views/.svn/text-base/auth.py.svn-base deleted file mode 100644 index 9511be91b0616102da9d068e8f09eb1b0bdc2643..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/auth.py.svn-base +++ /dev/null @@ -1,441 +0,0 @@ -# -*- coding: utf-8 -*- - -import datetime -import logging -import urllib -from urlparse import urlparse - -from django.shortcuts import render_to_response, get_object_or_404 -from django.template import RequestContext -from django.core.urlresolvers import reverse -from django.http import HttpResponseRedirect, Http404 -from django.utils.safestring import mark_safe -from django.utils.translation import ugettext as _ -from django.utils.encoding import smart_unicode -from django.contrib.auth import login, logout - -from writers import manage_pending_data - -from forum.actions import EmailValidationAction -from forum.utils import html -from forum.views.decorators import login_required -from forum.modules import decorate -from forum.forms import SimpleRegistrationForm, TemporaryLoginRequestForm, ChangePasswordForm, SetPasswordForm -from forum.http_responses import HttpResponseUnauthorized -from forum.utils.mail import send_template_email -from forum.authentication.base import InvalidAuthentication -from forum.authentication import AUTH_PROVIDERS -from forum.models import User, AuthKeyUserAssociation, ValidationHash -from forum.actions import UserJoinsAction, UserLoginAction -from forum import settings - -from vars import ON_SIGNIN_SESSION_ATTR, PENDING_SUBMISSION_SESSION_ATTR - -def signin_page(request): - referer = request.META.get('HTTP_REFERER', '/') - - # If the referer is equal to the sign up page, e. g. if the previous login attempt was not successful we do not - # change the sign in URL. The user should go to the same page. - if not referer.replace(settings.APP_URL, '') == reverse('auth_signin'): - request.session[ON_SIGNIN_SESSION_ATTR] = referer - - all_providers = [provider.context for provider in AUTH_PROVIDERS.values() if provider.context] - - sort = lambda c1, c2: c1.weight - c2.weight - can_show = lambda c: not request.user.is_authenticated() or c.show_to_logged_in_user - - bigicon_providers = sorted([ - context for context in all_providers if context.mode == 'BIGICON' and can_show(context) - ], sort) - - smallicon_providers = sorted([ - context for context in all_providers if context.mode == 'SMALLICON' and can_show(context) - ], sort) - - top_stackitem_providers = sorted([ - context for context in all_providers if context.mode == 'TOP_STACK_ITEM' and can_show(context) - ], sort) - - stackitem_providers = sorted([ - context for context in all_providers if context.mode == 'STACK_ITEM' and can_show(context) - ], sort) - - try: - msg = request.session['auth_error'] - del request.session['auth_error'] - except: - msg = None - - return render_to_response( - 'auth/signin.html', - { - 'msg': msg, - 'all_providers': all_providers, - 'bigicon_providers': bigicon_providers, - 'top_stackitem_providers': top_stackitem_providers, - 'stackitem_providers': stackitem_providers, - 'smallicon_providers': smallicon_providers, - }, - RequestContext(request)) - -def prepare_provider_signin(request, provider): - force_email_request = request.REQUEST.get('validate_email', 'yes') == 'yes' - request.session['force_email_request'] = force_email_request - - if provider in AUTH_PROVIDERS: - provider_class = AUTH_PROVIDERS[provider].consumer - - try: - request_url = provider_class.prepare_authentication_request(request, - reverse('auth_provider_done', - kwargs={'provider': provider})) - - return HttpResponseRedirect(request_url) - except NotImplementedError, e: - return process_provider_signin(request, provider) - except InvalidAuthentication, e: - request.session['auth_error'] = e.message - - return HttpResponseRedirect(reverse('auth_signin')) - else: - raise Http404() - - -def process_provider_signin(request, provider): - if provider in AUTH_PROVIDERS: - provider_class = AUTH_PROVIDERS[provider].consumer - - try: - assoc_key = provider_class.process_authentication_request(request) - except InvalidAuthentication, e: - request.session['auth_error'] = e.message - return HttpResponseRedirect(reverse('auth_signin')) - - if request.user.is_authenticated(): - if isinstance(assoc_key, (type, User)): - if request.user != assoc_key: - request.session['auth_error'] = _( - "Sorry, these login credentials belong to anoother user. Plese terminate your current session and try again." - ) - else: - request.session['auth_error'] = _("You are already logged in with that user.") - else: - try: - assoc = AuthKeyUserAssociation.objects.get(key=assoc_key) - if assoc.user == request.user: - request.session['auth_error'] = _( - "These login credentials are already associated with your account.") - else: - request.session['auth_error'] = _( - "Sorry, these login credentials belong to anoother user. Plese terminate your current session and try again." - ) - except: - uassoc = AuthKeyUserAssociation(user=request.user, key=assoc_key, provider=provider) - uassoc.save() - request.user.message_set.create( - message=_('The new credentials are now associated with your account')) - return HttpResponseRedirect(reverse('user_authsettings', args=[request.user.id])) - - return HttpResponseRedirect(reverse('auth_signin')) - else: - if isinstance(assoc_key, User): - return login_and_forward(request, assoc_key) - - try: - assoc = AuthKeyUserAssociation.objects.get(key=assoc_key) - user_ = assoc.user - return login_and_forward(request, user_) - except AuthKeyUserAssociation.DoesNotExist: - request.session['assoc_key'] = assoc_key - request.session['auth_provider'] = provider - return HttpResponseRedirect(reverse('auth_external_register')) - - return HttpResponseRedirect(reverse('auth_signin')) - -def external_register(request): - if request.method == 'POST' and 'bnewaccount' in request.POST: - form1 = SimpleRegistrationForm(request.POST) - - if form1.is_valid(): - user_ = User(username=form1.cleaned_data['username'], email=form1.cleaned_data['email'], real_name=form1.cleaned_data['real_name']) - user_.email_isvalid = request.session.get('auth_validated_email', '') == form1.cleaned_data['email'] - user_.set_unusable_password() - - if User.objects.all().count() == 0: - user_.is_superuser = True - user_.is_staff = True - - user_.save() - UserJoinsAction(user=user_, ip=request.META['REMOTE_ADDR']).save() - - try: - assoc_key = request.session['assoc_key'] - auth_provider = request.session['auth_provider'] - except: - request.session['auth_error'] = _( - "Oops, something went wrong in the middle of this process. Please try again. Note that you need to have cookies enabled for the authentication to work." - ) - logging.error("Missing session data when trying to complete user registration: %s" % ", ".join( - ["%s: %s" % (k, v) for k, v in request.META.items()])) - return HttpResponseRedirect(reverse('auth_signin')) - - uassoc = AuthKeyUserAssociation(user=user_, key=assoc_key, provider=auth_provider) - uassoc.save() - - del request.session['assoc_key'] - del request.session['auth_provider'] - - return login_and_forward(request, user_, message=_("A welcome email has been sent to your email address. ")) - else: - auth_provider = request.session.get('auth_provider', None) - if not auth_provider: - request.session['auth_error'] = _( - "Oops, something went wrong in the middle of this process. Please try again.") - logging.error("Missing session data when trying to complete user registration: %s" % ", ".join( - ["%s: %s" % (k, v) for k, v in request.META.items()])) - return HttpResponseRedirect(reverse('auth_signin')) - - provider_class = AUTH_PROVIDERS[auth_provider].consumer - - if provider_class.__class__.__name__ == 'FacebookAuthConsumer': - user_data = provider_class.get_user_data(request.session['access_token']) - else: - user_data = provider_class.get_user_data(request.session['assoc_key']) - - - if not user_data: - user_data = request.session.get('auth_consumer_data', {}) - - username = user_data.get('username', '') - email = user_data.get('email', '') - real_name = user_data.get('real_name', '') - - if email: - request.session['auth_validated_email'] = email - - form1 = SimpleRegistrationForm(initial={ - 'next': '/', - 'username': username, - 'email': email, - 'real_name': real_name, - }) - - provider_context = AUTH_PROVIDERS[request.session['auth_provider']].context - - return render_to_response('auth/complete.html', { - 'form1': form1, - 'provider':provider_context and mark_safe(provider_context.human_name) or _('unknown'), - 'login_type':provider_context.id, - 'gravatar_faq_url':reverse('faq') + '#gravatar', - }, context_instance=RequestContext(request)) - -def request_temp_login(request): - if request.method == 'POST': - form = TemporaryLoginRequestForm(request.POST) - - if form.is_valid(): - users = form.user_cache - - for u in users: - if u.is_suspended(): - return forward_suspended_user(request, u, False) - - for u in users: - try: - hash = get_object_or_404(ValidationHash, user=u, type='templogin') - if hash.expiration < datetime.datetime.now(): - hash.delete() - return request_temp_login(request) - except: - hash = ValidationHash.objects.create_new(u, 'templogin', [u.id]) - - send_template_email([u], "auth/temp_login_email.html", {'temp_login_code': hash}) - - request.user.message_set.create(message=_("An email has been sent with your temporary login key")) - - return HttpResponseRedirect(reverse('index')) - else: - form = TemporaryLoginRequestForm() - - return render_to_response( - 'auth/temp_login_request.html', {'form': form}, - context_instance=RequestContext(request)) - -def temp_signin(request, user, code): - user = get_object_or_404(User, id=user) - - if (ValidationHash.objects.validate(code, user, 'templogin', [user.id])): - - # If the user requests temp_signin he must have forgotten his password. So we mark it as unusable. - user.set_unusable_password() - user.save() - - return login_and_forward(request, user, reverse('user_authsettings', kwargs={'id': user.id}), - _( - "You are logged in with a temporary access key, please take the time to fix your issue with authentication." - )) - else: - raise Http404() - -def send_validation_email(request): - if not request.user.is_authenticated(): - return HttpResponseUnauthorized(request) - else: - # We check if there are some old validation hashes. If there are -- we delete them. - try: - hash = ValidationHash.objects.get(user=request.user, type='email') - hash.delete() - except: - pass - - # We don't care if there are previous cashes in the database... In every case we have to create a new one - hash = ValidationHash.objects.create_new(request.user, 'email', [request.user.email]) - - additional_get_params = urllib.urlencode(dict([k, v.encode('utf-8')] for k, v in request.GET.items())) - send_template_email([request.user], "auth/mail_validation.html", { - 'validation_code': hash, - 'additional_get_params' : additional_get_params - }) - - request.user.message_set.create(message=_("A message with an email validation link was just sent to your address.")) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) - - - -def validate_email(request, user, code): - user = get_object_or_404(User, id=user) - - if (ValidationHash.objects.validate(code, user, 'email', [user.email])): - EmailValidationAction(user=user, ip=request.META['REMOTE_ADDR']).save() - return login_and_forward(request, user, reverse('index'), _("Thank you, your email is now validated.")) - else: - return render_to_response('auth/mail_already_validated.html', { 'user' : user }, RequestContext(request)) - -def auth_settings(request, id): - user_ = get_object_or_404(User, id=id) - - if not (request.user.is_superuser or request.user == user_): - return HttpResponseUnauthorized(request) - - auth_keys = user_.auth_keys.all() - - if request.user.is_superuser or (not user_.has_usable_password()): - FormClass = SetPasswordForm - else: - FormClass = ChangePasswordForm - - if request.POST: - form = FormClass(request.POST, user=user_) - if form.is_valid(): - is_new_pass = not user_.has_usable_password() - user_.set_password(form.cleaned_data['password1']) - user_.save() - - if is_new_pass: - request.user.message_set.create(message=_("New password set")) - if not request.user.is_superuser: - form = ChangePasswordForm(user=user_) - else: - request.user.message_set.create(message=_("Your password was changed")) - - return HttpResponseRedirect(reverse('user_authsettings', kwargs={'id': user_.id})) - else: - form = FormClass(user=user_) - - auth_keys_list = [] - - for k in auth_keys: - provider = AUTH_PROVIDERS.get(k.provider, None) - - if provider is not None: - name = "%s: %s" % (provider.context.human_name, provider.context.readable_key(k)) - else: - from forum.authentication.base import ConsumerTemplateContext - "unknown: %s" % ConsumerTemplateContext.readable_key(k) - - auth_keys_list.append({ - 'name': name, - 'id': k.id - }) - - return render_to_response('auth/auth_settings.html', { - 'view_user': user_, - "can_view_private": (user_ == request.user) or request.user.is_superuser, - 'form': form, - 'has_password': user_.has_usable_password(), - 'auth_keys': auth_keys_list, - 'allow_local_auth': AUTH_PROVIDERS.get('local', None), - }, context_instance=RequestContext(request)) - -def remove_external_provider(request, id): - association = get_object_or_404(AuthKeyUserAssociation, id=id) - if not (request.user.is_superuser or request.user == association.user): - return HttpResponseUnauthorized(request) - - request.user.message_set.create(message=_("You removed the association with %s") % association.provider) - association.delete() - return HttpResponseRedirect(reverse('user_authsettings', kwargs={'id': association.user.id})) - -def login_and_forward(request, user, forward=None, message=None): - if user.is_suspended(): - return forward_suspended_user(request, user) - - user.backend = "django.contrib.auth.backends.ModelBackend" - login(request, user) - - # Store the login action - UserLoginAction(user=user, ip=request.META['REMOTE_ADDR']).save() - - if message is None: - message = _("Welcome back %s, you are now logged in") % smart_unicode(user.username) - - request.user.message_set.create(message=message) - - if not forward: - forward = request.session.get(ON_SIGNIN_SESSION_ATTR, reverse('index')) - - pending_data = request.session.get(PENDING_SUBMISSION_SESSION_ATTR, None) - - if pending_data and (user.email_isvalid or pending_data['type'] not in settings.REQUIRE_EMAIL_VALIDATION_TO): - submission_time = pending_data['time'] - if submission_time < datetime.datetime.now() - datetime.timedelta(minutes=int(settings.HOLD_PENDING_POSTS_MINUTES)): - del request.session[PENDING_SUBMISSION_SESSION_ATTR] - elif submission_time < datetime.datetime.now() - datetime.timedelta(minutes=int(settings.WARN_PENDING_POSTS_MINUTES)): - user.message_set.create(message=(_("You have a %s pending submission.") % pending_data['data_name']) + " %s, %s, %s" % ( - html.hyperlink(reverse('manage_pending_data', kwargs={'action': _('save')}), _("save it")), - html.hyperlink(reverse('manage_pending_data', kwargs={'action': _('review')}), _("review")), - html.hyperlink(reverse('manage_pending_data', kwargs={'action': _('cancel')}), _("cancel")) - )) - else: - return manage_pending_data(request, _('save'), forward) - - additional_get_params = urllib.urlencode(dict([k, v.encode('utf-8')] for k, v in request.GET.items())) - - parsed_forward = urlparse(forward) - - # If there is already some parsed query in the URL then change the forward URL - if parsed_forward.query: - forward_url = forward + "&%s" % additional_get_params - else: - forward_url = forward + "?%s" % additional_get_params - - return HttpResponseRedirect(forward_url) - -def forward_suspended_user(request, user, show_private_msg=True): - message = _("Sorry, but this account is suspended") - if show_private_msg: - msg_type = 'privatemsg' - else: - msg_type = 'publicmsg' - - suspension = user.suspension - if suspension: - message += (":<br />" + suspension.extra.get(msg_type, '')) - - request.user.message_set.create(message) - return HttpResponseRedirect(reverse('index')) - -@decorate.withfn(login_required) -def signout(request): - logout(request) - return HttpResponseRedirect(reverse('index')) diff --git a/forum/views/.svn/text-base/commands.py.svn-base b/forum/views/.svn/text-base/commands.py.svn-base deleted file mode 100644 index 5271eec69d014aaf0591120096aa40ab67a29a1f..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/commands.py.svn-base +++ /dev/null @@ -1,640 +0,0 @@ -# -*- coding: utf-8 -*- - -import datetime -import logging - -from urllib import urlencode - -from django.core.exceptions import ObjectDoesNotExist -from django.core.urlresolvers import reverse -from django.utils import simplejson -from django.utils.encoding import smart_unicode -from django.utils.translation import ungettext, ugettext as _ -from django.http import HttpResponse, HttpResponseRedirect, Http404 -from django.shortcuts import get_object_or_404, render_to_response - -from forum.models import * -from forum.utils.decorators import ajax_login_required -from forum.actions import * -from forum.modules import decorate -from forum import settings - -from decorators import command, CommandException, RefreshPageCommand - -class NotEnoughRepPointsException(CommandException): - def __init__(self, action, user_reputation=None, reputation_required=None, node=None): - if reputation_required is not None and user_reputation is not None: - message = _( - """Sorry, but you don't have enough reputation points to %(action)s.<br /> - The minimum reputation required is %(reputation_required)d (yours is %(user_reputation)d). - Please check the <a href='%(faq_url)s'>FAQ</a>""" - ) % { - 'action': action, - 'faq_url': reverse('faq'), - 'reputation_required' : reputation_required, - 'user_reputation' : user_reputation, - } - else: - message = _( - """Sorry, but you don't have enough reputation points to %(action)s.<br />Please check the <a href='%(faq_url)s'>faq</a>""" - ) % {'action': action, 'faq_url': reverse('faq')} - super(NotEnoughRepPointsException, self).__init__(message) - -class CannotDoOnOwnException(CommandException): - def __init__(self, action): - super(CannotDoOnOwnException, self).__init__( - _( - """Sorry but you cannot %(action)s your own post.<br />Please check the <a href='%(faq_url)s'>faq</a>""" - ) % {'action': action, 'faq_url': reverse('faq')} - ) - -class AnonymousNotAllowedException(CommandException): - def __init__(self, action): - super(AnonymousNotAllowedException, self).__init__( - _( - """Sorry but anonymous users cannot %(action)s.<br />Please login or create an account <a href='%(signin_url)s'>here</a>.""" - ) % {'action': action, 'signin_url': reverse('auth_signin')} - ) - -class NotEnoughLeftException(CommandException): - def __init__(self, action, limit): - super(NotEnoughLeftException, self).__init__( - _( - """Sorry, but you don't have enough %(action)s left for today..<br />The limit is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>""" - ) % {'action': action, 'limit': limit, 'faq_url': reverse('faq')} - ) - -class CannotDoubleActionException(CommandException): - def __init__(self, action): - super(CannotDoubleActionException, self).__init__( - _( - """Sorry, but you cannot %(action)s twice the same post.<br />Please check the <a href='%(faq_url)s'>faq</a>""" - ) % {'action': action, 'faq_url': reverse('faq')} - ) - - -@decorate.withfn(command) -def vote_post(request, id, vote_type): - if not request.method == 'POST': - raise CommandException(_("Invalid request")) - - - post = get_object_or_404(Node, id=id).leaf - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('vote')) - - if user == post.author: - raise CannotDoOnOwnException(_('vote')) - - if not (vote_type == 'up' and user.can_vote_up() or user.can_vote_down()): - reputation_required = int(settings.REP_TO_VOTE_UP) if vote_type == 'up' else int(settings.REP_TO_VOTE_DOWN) - action_type = vote_type == 'up' and _('upvote') or _('downvote') - raise NotEnoughRepPointsException(action_type, user_reputation=user.reputation, reputation_required=reputation_required, node=post) - - user_vote_count_today = user.get_vote_count_today() - user_can_vote_count_today = user.can_vote_count_today() - - if user_vote_count_today >= user.can_vote_count_today(): - raise NotEnoughLeftException(_('votes'), str(settings.MAX_VOTES_PER_DAY)) - - new_vote_cls = (vote_type == 'up') and VoteUpAction or VoteDownAction - score_inc = 0 - - old_vote = VoteAction.get_action_for(node=post, user=user) - - if old_vote: - if old_vote.action_date < datetime.datetime.now() - datetime.timedelta(days=int(settings.DENY_UNVOTE_DAYS)): - raise CommandException( - _("Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the original vote") % - {'ndays': int(settings.DENY_UNVOTE_DAYS), - 'tdays': ungettext('day', 'days', int(settings.DENY_UNVOTE_DAYS))} - ) - - old_vote.cancel(ip=request.META['REMOTE_ADDR']) - score_inc = (old_vote.__class__ == VoteDownAction) and 1 or -1 - vote_type = "none" - else: - new_vote_cls(user=user, node=post, ip=request.META['REMOTE_ADDR']).save() - score_inc = (new_vote_cls == VoteUpAction) and 1 or -1 - - response = { - 'commands': { - 'update_post_score': [id, score_inc], - 'update_user_post_vote': [id, vote_type] - } - } - - votes_left = (user_can_vote_count_today - user_vote_count_today) + (vote_type == 'none' and -1 or 1) - - if int(settings.START_WARN_VOTES_LEFT) >= votes_left: - response['message'] = _("You have %(nvotes)s %(tvotes)s left today.") % \ - {'nvotes': votes_left, 'tvotes': ungettext('vote', 'votes', votes_left)} - - return response - -@decorate.withfn(command) -def flag_post(request, id): - if not request.POST: - return render_to_response('node/report.html', {'types': settings.FLAG_TYPES}) - - post = get_object_or_404(Node, id=id) - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('flag posts')) - - if user == post.author: - raise CannotDoOnOwnException(_('flag')) - - if not (user.can_flag_offensive(post)): - raise NotEnoughRepPointsException(_('flag posts')) - - user_flag_count_today = user.get_flagged_items_count_today() - - if user_flag_count_today >= int(settings.MAX_FLAGS_PER_DAY): - raise NotEnoughLeftException(_('flags'), str(settings.MAX_FLAGS_PER_DAY)) - - try: - current = FlagAction.objects.get(canceled=False, user=user, node=post) - raise CommandException( - _("You already flagged this post with the following reason: %(reason)s") % {'reason': current.extra}) - except ObjectDoesNotExist: - reason = request.POST.get('prompt', '').strip() - - if not len(reason): - raise CommandException(_("Reason is empty")) - - FlagAction(user=user, node=post, extra=reason, ip=request.META['REMOTE_ADDR']).save() - - return {'message': _("Thank you for your report. A moderator will review your submission shortly.")} - -@decorate.withfn(command) -def like_comment(request, id): - comment = get_object_or_404(Comment, id=id) - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('like comments')) - - if user == comment.user: - raise CannotDoOnOwnException(_('like')) - - if not user.can_like_comment(comment): - raise NotEnoughRepPointsException( _('like comments'), node=comment) - - like = VoteAction.get_action_for(node=comment, user=user) - - if like: - like.cancel(ip=request.META['REMOTE_ADDR']) - likes = False - else: - VoteUpCommentAction(node=comment, user=user, ip=request.META['REMOTE_ADDR']).save() - likes = True - - return { - 'commands': { - 'update_post_score': [comment.id, likes and 1 or -1], - 'update_user_post_vote': [comment.id, likes and 'up' or 'none'] - } - } - -@decorate.withfn(command) -def delete_comment(request, id): - comment = get_object_or_404(Comment, id=id) - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('delete comments')) - - if not user.can_delete_comment(comment): - raise NotEnoughRepPointsException( _('delete comments')) - - if not comment.nis.deleted: - DeleteAction(node=comment, user=user, ip=request.META['REMOTE_ADDR']).save() - - return { - 'commands': { - 'remove_comment': [comment.id], - } - } - -@decorate.withfn(command) -def mark_favorite(request, id): - node = get_object_or_404(Node, id=id) - - if not request.user.is_authenticated(): - raise AnonymousNotAllowedException(_('mark a question as favorite')) - - try: - favorite = FavoriteAction.objects.get(canceled=False, node=node, user=request.user) - favorite.cancel(ip=request.META['REMOTE_ADDR']) - added = False - except ObjectDoesNotExist: - FavoriteAction(node=node, user=request.user, ip=request.META['REMOTE_ADDR']).save() - added = True - - return { - 'commands': { - 'update_favorite_count': [added and 1 or -1], - 'update_favorite_mark': [added and 'on' or 'off'] - } - } - -@decorate.withfn(command) -def comment(request, id): - post = get_object_or_404(Node, id=id) - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('comment')) - - if not request.method == 'POST': - raise CommandException(_("Invalid request")) - - comment_text = request.POST.get('comment', '').strip() - - if not len(comment_text): - raise CommandException(_("Comment is empty")) - - if len(comment_text) < settings.FORM_MIN_COMMENT_BODY: - raise CommandException(_("At least %d characters required on comment body.") % settings.FORM_MIN_COMMENT_BODY) - - if len(comment_text) > settings.FORM_MAX_COMMENT_BODY: - raise CommandException(_("No more than %d characters on comment body.") % settings.FORM_MAX_COMMENT_BODY) - - if 'id' in request.POST: - comment = get_object_or_404(Comment, id=request.POST['id']) - - if not user.can_edit_comment(comment): - raise NotEnoughRepPointsException( _('edit comments')) - - comment = ReviseAction(user=user, node=comment, ip=request.META['REMOTE_ADDR']).save( - data=dict(text=comment_text)).node - else: - if not user.can_comment(post): - raise NotEnoughRepPointsException( _('comment')) - - comment = CommentAction(user=user, ip=request.META['REMOTE_ADDR']).save( - data=dict(text=comment_text, parent=post)).node - - if comment.active_revision.revision == 1: - return { - 'commands': { - 'insert_comment': [ - id, comment.id, comment.comment, user.decorated_name, user.get_profile_url(), - reverse('delete_comment', kwargs={'id': comment.id}), - reverse('node_markdown', kwargs={'id': comment.id}), - reverse('convert_comment', kwargs={'id': comment.id}), - user.can_convert_comment_to_answer(comment), - bool(settings.SHOW_LATEST_COMMENTS_FIRST) - ] - } - } - else: - return { - 'commands': { - 'update_comment': [comment.id, comment.comment] - } - } - -@decorate.withfn(command) -def node_markdown(request, id): - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('accept answers')) - - node = get_object_or_404(Node, id=id) - return HttpResponse(node.active_revision.body, mimetype="text/plain") - - -@decorate.withfn(command) -def accept_answer(request, id): - if settings.DISABLE_ACCEPTING_FEATURE: - raise Http404() - - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('accept answers')) - - answer = get_object_or_404(Answer, id=id) - question = answer.question - - if not user.can_accept_answer(answer): - raise CommandException(_("Sorry but you cannot accept the answer")) - - commands = {} - - if answer.nis.accepted: - answer.nstate.accepted.cancel(user, ip=request.META['REMOTE_ADDR']) - commands['unmark_accepted'] = [answer.id] - else: - if settings.MAXIMUM_ACCEPTED_ANSWERS and (question.accepted_count >= settings.MAXIMUM_ACCEPTED_ANSWERS): - raise CommandException(ungettext("This question already has an accepted answer.", - "Sorry but this question has reached the limit of accepted answers.", int(settings.MAXIMUM_ACCEPTED_ANSWERS))) - - if settings.MAXIMUM_ACCEPTED_PER_USER and question.accepted_count: - accepted_from_author = question.accepted_answers.filter(author=answer.author).count() - - if accepted_from_author >= settings.MAXIMUM_ACCEPTED_PER_USER: - raise CommandException(ungettext("The author of this answer already has an accepted answer in this question.", - "Sorry but the author of this answer has reached the limit of accepted answers per question.", int(settings.MAXIMUM_ACCEPTED_PER_USER))) - - - AcceptAnswerAction(node=answer, user=user, ip=request.META['REMOTE_ADDR']).save() - - # If the request is not an AJAX redirect to the answer URL rather than to the home page - if not request.is_ajax(): - msg = _(""" - Congratulations! You've accepted an answer. - """) - - # Notify the user with a message that an answer has been accepted - request.user.message_set.create(message=msg) - - # Redirect URL should include additional get parameters that might have been attached - redirect_url = answer.parent.get_absolute_url() + "?accepted_answer=true&%s" % smart_unicode(urlencode(request.GET)) - - return HttpResponseRedirect(redirect_url) - - commands['mark_accepted'] = [answer.id] - - return {'commands': commands} - -@decorate.withfn(command) -def delete_post(request, id): - post = get_object_or_404(Node, id=id) - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('delete posts')) - - if not (user.can_delete_post(post)): - raise NotEnoughRepPointsException(_('delete posts')) - - ret = {'commands': {}} - - if post.nis.deleted: - post.nstate.deleted.cancel(user, ip=request.META['REMOTE_ADDR']) - ret['commands']['unmark_deleted'] = [post.node_type, id] - else: - DeleteAction(node=post, user=user, ip=request.META['REMOTE_ADDR']).save() - - ret['commands']['mark_deleted'] = [post.node_type, id] - - return ret - -@decorate.withfn(command) -def close(request, id, close): - if close and not request.POST: - return render_to_response('node/report.html', {'types': settings.CLOSE_TYPES}) - - question = get_object_or_404(Question, id=id) - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('close questions')) - - if question.nis.closed: - if not user.can_reopen_question(question): - raise NotEnoughRepPointsException(_('reopen questions')) - - question.nstate.closed.cancel(user, ip=request.META['REMOTE_ADDR']) - else: - if not request.user.can_close_question(question): - raise NotEnoughRepPointsException(_('close questions')) - - reason = request.POST.get('prompt', '').strip() - - if not len(reason): - raise CommandException(_("Reason is empty")) - - CloseAction(node=question, user=user, extra=reason, ip=request.META['REMOTE_ADDR']).save() - - return RefreshPageCommand() - -@decorate.withfn(command) -def wikify(request, id): - node = get_object_or_404(Node, id=id) - user = request.user - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('mark posts as community wiki')) - - if node.nis.wiki: - if not user.can_cancel_wiki(node): - raise NotEnoughRepPointsException(_('cancel a community wiki post')) - - if node.nstate.wiki.action_type == "wikify": - node.nstate.wiki.cancel() - else: - node.nstate.wiki = None - else: - if not user.can_wikify(node): - raise NotEnoughRepPointsException(_('mark posts as community wiki')) - - WikifyAction(node=node, user=user, ip=request.META['REMOTE_ADDR']).save() - - return RefreshPageCommand() - -@decorate.withfn(command) -def convert_to_comment(request, id): - user = request.user - answer = get_object_or_404(Answer, id=id) - question = answer.question - - # Check whether the user has the required permissions - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_("convert answers to comments")) - - if not user.can_convert_to_comment(answer): - raise NotEnoughRepPointsException(_("convert answers to comments")) - - if not request.POST: - description = lambda a: _("Answer by %(uname)s: %(snippet)s...") % {'uname': smart_unicode(a.author.username), - 'snippet': a.summary[:10]} - nodes = [(question.id, _("Question"))] - [nodes.append((a.id, description(a))) for a in - question.answers.filter_state(deleted=False).exclude(id=answer.id)] - - return render_to_response('node/convert_to_comment.html', {'answer': answer, 'nodes': nodes}) - - try: - new_parent = Node.objects.get(id=request.POST.get('under', None)) - except: - raise CommandException(_("That is an invalid post to put the comment under")) - - if not (new_parent == question or (new_parent.node_type == 'answer' and new_parent.parent == question)): - raise CommandException(_("That is an invalid post to put the comment under")) - - AnswerToCommentAction(user=user, node=answer, ip=request.META['REMOTE_ADDR']).save(data=dict(new_parent=new_parent)) - - return RefreshPageCommand() - -@decorate.withfn(command) -def convert_comment_to_answer(request, id): - user = request.user - comment = get_object_or_404(Comment, id=id) - parent = comment.parent - - if not parent.question: - question = parent - else: - question = parent.question - - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_("convert comments to answers")) - - if not user.can_convert_comment_to_answer(comment): - raise NotEnoughRepPointsException(_("convert comments to answers")) - - CommentToAnswerAction(user=user, node=comment, ip=request.META['REMOTE_ADDR']).save(data=dict(question=question)) - - return RefreshPageCommand() - -@decorate.withfn(command) -def subscribe(request, id, user=None): - if user: - try: - user = User.objects.get(id=user) - except User.DoesNotExist: - raise Http404() - - if not (request.user.is_a_super_user_or_staff() or user.is_authenticated()): - raise CommandException(_("You do not have the correct credentials to preform this action.")) - else: - user = request.user - - question = get_object_or_404(Question, id=id) - - try: - subscription = QuestionSubscription.objects.get(question=question, user=user) - subscription.delete() - subscribed = False - except: - subscription = QuestionSubscription(question=question, user=user, auto_subscription=False) - subscription.save() - subscribed = True - - return { - 'commands': { - 'set_subscription_button': [subscribed and _('unsubscribe me') or _('subscribe me')], - 'set_subscription_status': [''] - } - } - -#internally grouped views - used by the tagging system -@ajax_login_required -def mark_tag(request, tag=None, **kwargs):#tagging system - action = kwargs['action'] - ts = MarkedTag.objects.filter(user=request.user, tag__name=tag) - if action == 'remove': - logging.debug('deleting tag %s' % tag) - ts.delete() - else: - reason = kwargs['reason'] - if len(ts) == 0: - try: - t = Tag.objects.get(name=tag) - mt = MarkedTag(user=request.user, reason=reason, tag=t) - mt.save() - except: - pass - else: - ts.update(reason=reason) - return HttpResponse(simplejson.dumps(''), mimetype="application/json") - -def matching_tags(request): - if len(request.GET['q']) == 0: - raise CommandException(_("Invalid request")) - - possible_tags = Tag.active.filter(name__icontains = request.GET['q']) - tag_output = '' - for tag in possible_tags: - tag_output += "%s|%s|%s\n" % (tag.id, tag.name, tag.used_count) - - return HttpResponse(tag_output, mimetype="text/plain") - -def matching_users(request): - if len(request.GET['q']) == 0: - raise CommandException(_("Invalid request")) - - possible_users = User.objects.filter(username__icontains = request.GET['q']) - output = '' - - for user in possible_users: - output += ("%s|%s|%s\n" % (user.id, user.decorated_name, user.reputation)) - - return HttpResponse(output, mimetype="text/plain") - -def related_questions(request): - if request.POST and request.POST.get('title', None): - can_rank, questions = Question.objects.search(request.POST['title']) - - if can_rank and isinstance(can_rank, basestring): - questions = questions.order_by(can_rank) - - return HttpResponse(simplejson.dumps( - [dict(title=q.title, url=q.get_absolute_url(), score=q.score, summary=q.summary) - for q in questions.filter_state(deleted=False)[0:10]]), mimetype="application/json") - else: - raise Http404() - -@decorate.withfn(command) -def answer_permanent_link(request, id): - # Getting the current answer object - answer = get_object_or_404(Answer, id=id) - - # Getting the current object URL -- the Application URL + the object relative URL - url = '%s%s' % (settings.APP_BASE_URL, answer.get_absolute_url()) - - if not request.POST: - # Display the template - return render_to_response('node/permanent_link.html', { 'url' : url, }) - - return { - 'commands' : { - 'copy_url' : [request.POST['permanent_link_url'],], - }, - 'message' : _("The permanent URL to the answer has been copied to your clipboard."), - } - -@decorate.withfn(command) -def award_points(request, user_id, answer_id): - user = request.user - awarded_user = get_object_or_404(User, id=user_id) - answer = get_object_or_404(Answer, id=answer_id) - - # Users shouldn't be able to award themselves - if awarded_user.id == user.id: - raise CannotDoOnOwnException(_("award")) - - # Anonymous users cannot award points, they just don't have such - if not user.is_authenticated(): - raise AnonymousNotAllowedException(_('award')) - - if not request.POST: - return render_to_response("node/award_points.html", { - 'user' : user, - 'awarded_user' : awarded_user, - 'reputation_to_comment' : str(settings.REP_TO_COMMENT) - }) - else: - points = int(request.POST['points']) - - # We should check if the user has enough reputation points, otherwise we raise an exception. - if points < 0: - raise CommandException(_("The number of points to award needs to be a positive value.")) - - if user.reputation < points: - raise NotEnoughRepPointsException(_("award")) - - extra = dict(message=request.POST.get('message', ''), awarding_user=request.user.id, value=points) - - # We take points from the awarding user - AwardPointsAction(user=request.user, node=answer, extra=extra).save(data=dict(value=points, affected=awarded_user)) - - return { 'message' : _("You have awarded %(awarded_user)s with %(points)d points") % {'awarded_user' : awarded_user, 'points' : points} } diff --git a/forum/views/.svn/text-base/decorators.py.svn-base b/forum/views/.svn/text-base/decorators.py.svn-base deleted file mode 100644 index 9cb8cbd4ca08d622f0a3edb9f8cd18e1a4eae629..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/decorators.py.svn-base +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- - -import logging - -from datetime import datetime - -from django.http import HttpResponse, HttpResponseRedirect -from django.utils import simplejson -from django.shortcuts import render_to_response -from django.core.urlresolvers import reverse -from django.template import RequestContext -from django.utils.translation import ugettext as _ - -from forum.modules import ui, decorate -from forum.settings import ONLINE_USERS - -def login_required(func, request, *args, **kwargs): - if not request.user.is_authenticated(): - return HttpResponseRedirect(reverse('auth_signin')) - else: - return func(request, *args, **kwargs) - -def render(template=None, tab=None, tab_title='', weight=500, tabbed=True): - def decorator(func): - def decorated(context, request, *args, **kwargs): - if request.user.is_authenticated(): - ONLINE_USERS[request.user] = datetime.now() - - if isinstance(context, HttpResponse): - return context - - if tab is not None: - context['tab'] = tab - - return render_to_response(context.pop('template', template), context, - context_instance=RequestContext(request)) - - if tabbed and tab and tab_title: - ui.register(ui.PAGE_TOP_TABS, - ui.PageTab(tab, tab_title, lambda: reverse(func.__name__), weight=weight)) - - return decorate.result.withfn(decorated, needs_params=True)(func) - - return decorator - -class CommandException(Exception): - pass - -class RefreshPageCommand(HttpResponse): - def __init__(self): - super(RefreshPageCommand, self).__init__( - content=simplejson.dumps({'commands': {'refresh_page': []}, 'success': True}), - mimetype="application/json") - -def command(func, request, *args, **kwargs): - try: - response = func(request, *args, **kwargs) - - if isinstance(response, HttpResponse): - return response - - response['success'] = True - except Exception, e: - import traceback - #traceback.print_exc() - - if isinstance(e, CommandException): - response = { - 'success': False, - 'error_message': e.message - } - else: - logging.error("%s: %s" % (func.__name__, str(e))) - logging.error(traceback.format_exc()) - response = { - 'success': False, - 'error_message': _("We're sorry, but an unknown error ocurred.<br />Please try again in a while.") - } - - if request.is_ajax(): - return HttpResponse(simplejson.dumps(response), mimetype="application/json") - else: - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) - diff --git a/forum/views/.svn/text-base/meta.py.svn-base b/forum/views/.svn/text-base/meta.py.svn-base deleted file mode 100644 index c9548e58d46e34d6af9780503e59de1577b70797..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/meta.py.svn-base +++ /dev/null @@ -1,201 +0,0 @@ -import os -from itertools import groupby - -from django.shortcuts import render_to_response -from django.template import RequestContext -from django.http import HttpResponseRedirect, HttpResponse -from django.views.static import serve -from django.views.decorators.cache import cache_page -from django.utils.translation import ugettext as _ -from django.utils.safestring import mark_safe - -from forum import settings -from forum.views.decorators import login_required -from forum.forms import FeedbackForm -from forum.modules import decorate -from forum.forms import get_next_url -from forum.models import Badge, Award, User, Page -from forum.badges.base import BadgesMeta -from forum.http_responses import HttpResponseNotFound, HttpResponseIntServerError -from forum.utils.mail import send_template_email -from forum.templatetags.extra_filters import or_preview - -import decorators -import logging, traceback - -def favicon(request): - return HttpResponseRedirect(str(settings.APP_FAVICON)) - -def custom_css(request): - return HttpResponse(or_preview(settings.CUSTOM_CSS, request), mimetype="text/css") - -def static(request, title, content): - return render_to_response('static.html', {'content' : content, 'title': title}, - context_instance=RequestContext(request)) - -def media(request, skin, path): - response = serve(request, "%s/media/%s" % (skin, path), - document_root=os.path.join(os.path.dirname(os.path.dirname(__file__)), 'skins').replace('\\', '/')) - content_type = response['Content-Type'] - if ('charset=' not in content_type): - if (content_type.startswith('text') or content_type=='application/x-javascript'): - content_type += '; charset=utf-8' - response['Content-Type'] = content_type - return response - - -def markdown_help(request): - return render_to_response('markdown_help.html', context_instance=RequestContext(request)) - -@cache_page(60 * 60 * 24 * 30) #30 days -def opensearch(request): - return render_to_response('opensearch.html', {'settings' : settings}, context_instance=RequestContext(request)) - - -def feedback(request): - if request.method == "POST": - form = FeedbackForm(request.user, data=request.POST) - if form.is_valid(): - context = { - 'user': request.user, - 'email': request.user.is_authenticated() and request.user.email or form.cleaned_data.get('email', None), - 'message': form.cleaned_data['message'], - 'name': request.user.is_authenticated() and request.user.username or form.cleaned_data.get('name', None), - 'ip': request.META['REMOTE_ADDR'], - } - - recipients = User.objects.filter(is_superuser=True) - send_template_email(recipients, "notifications/feedback.html", context) - - msg = _('Thanks for the feedback!') - request.user.message_set.create(message=msg) - return HttpResponseRedirect(get_next_url(request)) - else: - form = FeedbackForm(request.user, initial={'next':get_next_url(request)}) - - return render_to_response('feedback.html', {'form': form}, context_instance=RequestContext(request)) - -feedback.CANCEL_MESSAGE=_('We look forward to hearing your feedback! Please, give it next time :)') - -def privacy(request): - return render_to_response('privacy.html', context_instance=RequestContext(request)) - -@decorate.withfn(login_required) -def logout(request): - return render_to_response('logout.html', { - 'next' : get_next_url(request), - }, context_instance=RequestContext(request)) - -@decorators.render('badges.html', 'badges', _('badges'), weight=300) -def badges(request): - badges = sorted([Badge.objects.get(id=id) for id in BadgesMeta.by_id.keys()], lambda b1, b2: cmp(b1.name, b2.name)) - - if request.user.is_authenticated(): - my_badges = Award.objects.filter(user=request.user).values_list('badge_id', flat=True).distinct() - else: - my_badges = [] - - return { - 'badges' : badges, - 'mybadges' : my_badges, - } - -def badge(request, id, slug): - badge = Badge.objects.get(id=id) - awards = list(Award.objects.filter(badge=badge).order_by('user', 'awarded_at')) - award_count = len(awards) - - awards = sorted([dict(count=len(list(g)), user=k) for k, g in groupby(awards, lambda a: a.user)], - lambda c1, c2: c2['count'] - c1['count']) - - return render_to_response('badge.html', { - 'award_count': award_count, - 'awards' : awards, - 'badge' : badge, - }, context_instance=RequestContext(request)) - -def page(request): - path = request.path[1:] - - if path in settings.STATIC_PAGE_REGISTRY: - try: - page = Page.objects.get(id=settings.STATIC_PAGE_REGISTRY[path]) - - if (not page.published) and (not request.user.is_superuser): - return HttpResponseNotFound(request) - except: - return HttpResponseNotFound(request) - else: - return HttpResponseNotFound(request) - - template = page.extra.get('template', 'default') - sidebar = page.extra.get('sidebar', '') - - if template == 'default': - base = 'base_content.html' - elif template == 'sidebar': - base = 'base.html' - - sidebar_render = page.extra.get('render', 'markdown') - - if sidebar_render == 'markdown': - sidebar = page._as_markdown(sidebar) - elif sidebar_render == 'html': - sidebar = mark_safe(sidebar) - - else: - return HttpResponse(page.body, mimetype=page.extra.get('mimetype', 'text/html')) - - render = page.extra.get('render', 'markdown') - - if render == 'markdown': - body = page.as_markdown() - elif render == 'html': - body = mark_safe(page.body) - else: - body = page.body - - return render_to_response('page.html', { - 'page' : page, - 'body' : body, - 'sidebar': sidebar, - 'base': base, - }, context_instance=RequestContext(request)) - - -def error_handler(request): - - stacktrace = "".join(["\t\t%s\n" % l for l in traceback.format_exc().split("\n")]) - - try: - log_msg = """ - error executing request: - PATH: %(path)s - USER: %(user)s - METHOD: %(method)s - POST PARAMETERS: - %(post)s - GET PARAMETERS: - %(get)s - HTTP HEADERS: - %(headers)s - COOKIES: - %(cookies)s - EXCEPTION INFO: - %(stacktrace)s - """ % { - 'path': request.path, - 'user': request.user.is_authenticated() and ("%s (%s)" % (request.user.username, request.user.id)) or "<anonymous>", - 'method': request.method, - 'post': request.POST and "".join(["\t\t%s: %s\n" % (k, v) for k, v in request.POST.items()]) or "None", - 'get': request.GET and "".join(["\t\t%s: %s\n" % (k, v) for k, v in request.GET.items()]) or "None", - 'cookies': request.COOKIES and "".join(["\t\t%s: %s\n" % (k, v) for k, v in request.COOKIES.items()]) or "None", - 'headers': request.META and "".join(["\t\t%s: %s\n" % (k, v) for k, v in request.META.items()]) or "None", - 'stacktrace': stacktrace - } - except: - log_msg = "error executing request:\n%s" % stacktrace - - - logging.error(log_msg) - return HttpResponseIntServerError(request) diff --git a/forum/views/.svn/text-base/readers.py.svn-base b/forum/views/.svn/text-base/readers.py.svn-base deleted file mode 100644 index 669eaf3006a849aefdaf84d40e3adf72d6089742..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/readers.py.svn-base +++ /dev/null @@ -1,433 +0,0 @@ -# encoding:utf-8 -import datetime -import logging -from urllib import unquote -from django.shortcuts import render_to_response, get_object_or_404 -from django.http import HttpResponseRedirect, Http404, HttpResponsePermanentRedirect -from django.core.paginator import Paginator, EmptyPage, InvalidPage -from django.template import RequestContext -from django import template -from django.utils.html import * -from django.db.models import Q, Count -from django.utils.translation import ugettext as _ -from django.core.urlresolvers import reverse -from django.template.defaultfilters import slugify -from django.utils.safestring import mark_safe - -from forum import settings as django_settings -from forum.utils.html import hyperlink -from forum.utils.diff import textDiff as htmldiff -from forum.utils import pagination -from forum.forms import * -from forum.models import * -from forum.actions import QuestionViewAction -from forum.http_responses import HttpResponseUnauthorized -from forum.feed import RssQuestionFeed, RssAnswerFeed -from forum.utils.pagination import generate_uri - -import decorators - -class HottestQuestionsSort(pagination.SortBase): - def apply(self, questions): - return questions.annotate(new_child_count=Count('all_children')).filter( - all_children__added_at__gt=datetime.datetime.now() - datetime.timedelta(days=1)).order_by('-new_child_count') - - -class QuestionListPaginatorContext(pagination.PaginatorContext): - def __init__(self, id='QUESTIONS_LIST', prefix='', pagesizes=(15, 30, 50), default_pagesize=30): - super (QuestionListPaginatorContext, self).__init__(id, sort_methods=( - (_('active'), pagination.SimpleSort(_('active'), '-last_activity_at', _("Most <strong>recently updated</strong> questions"))), - (_('newest'), pagination.SimpleSort(_('newest'), '-added_at', _("most <strong>recently asked</strong> questions"))), - (_('hottest'), HottestQuestionsSort(_('hottest'), _("most <strong>active</strong> questions in the last 24 hours</strong>"))), - (_('mostvoted'), pagination.SimpleSort(_('most voted'), '-score', _("most <strong>voted</strong> questions"))), - ), pagesizes=pagesizes, default_pagesize=default_pagesize, prefix=prefix) - -class AnswerSort(pagination.SimpleSort): - def apply(self, answers): - if not settings.DISABLE_ACCEPTING_FEATURE: - return answers.order_by(*(['-marked'] + list(self._get_order_by()))) - else: - return super(AnswerSort, self).apply(answers) - -class AnswerPaginatorContext(pagination.PaginatorContext): - def __init__(self, id='ANSWER_LIST', prefix='', default_pagesize=10): - super (AnswerPaginatorContext, self).__init__(id, sort_methods=( - (_('oldest'), AnswerSort(_('oldest answers'), 'added_at', _("oldest answers will be shown first"))), - (_('newest'), AnswerSort(_('newest answers'), '-added_at', _("newest answers will be shown first"))), - (_('votes'), AnswerSort(_('popular answers'), ('-score', 'added_at'), _("most voted answers will be shown first"))), - ), default_sort=_('votes'), pagesizes=(5, 10, 20), default_pagesize=default_pagesize, prefix=prefix) - -class TagPaginatorContext(pagination.PaginatorContext): - def __init__(self): - super (TagPaginatorContext, self).__init__('TAG_LIST', sort_methods=( - (_('name'), pagination.SimpleSort(_('by name'), 'name', _("sorted alphabetically"))), - (_('used'), pagination.SimpleSort(_('by popularity'), '-used_count', _("sorted by frequency of tag use"))), - ), default_sort=_('used'), pagesizes=(30, 60, 120)) - - -def feed(request): - return RssQuestionFeed( - request, - Question.objects.filter_state(deleted=False).order_by('-last_activity_at'), - settings.APP_TITLE + _(' - ')+ _('latest questions'), - settings.APP_DESCRIPTION)(request) - -@decorators.render('index.html') -def index(request): - paginator_context = QuestionListPaginatorContext() - paginator_context.base_path = reverse('questions') - return question_list(request, - Question.objects.all(), - base_path=reverse('questions'), - feed_url=reverse('latest_questions_feed'), - paginator_context=paginator_context) - -@decorators.render('questions.html', 'unanswered', _('unanswered'), weight=400) -def unanswered(request): - return question_list(request, - Question.objects.exclude(id__in=Question.objects.filter(children__marked=True).distinct()).exclude(marked=True), - _('open questions without an accepted answer'), - None, - _("Unanswered Questions")) - -@decorators.render('questions.html', 'questions', _('questions'), weight=0) -def questions(request): - return question_list(request, - Question.objects.all(), - _('questions')) - -@decorators.render('questions.html') -def tag(request, tag): - try: - tag = Tag.active.get(name=unquote(tag)) - except Tag.DoesNotExist: - raise Http404 - - # Getting the questions QuerySet - questions = Question.objects.filter(tags__id=tag.id) - - if request.method == "GET": - user = request.GET.get('user', None) - - if user is not None: - try: - questions = questions.filter(author=User.objects.get(username=user)) - except User.DoesNotExist: - raise Http404 - - # The extra tag context we need to pass - tag_context = { - 'tag' : tag, - } - - # The context returned by the question_list function, contains info about the questions - question_context = question_list(request, - questions, - mark_safe(_(u'questions tagged <span class="tag">%(tag)s</span>') % {'tag': tag}), - None, - mark_safe(_(u'Questions Tagged With %(tag)s') % {'tag': tag}), - False) - - # If the return data type is not a dict just return it - if not isinstance(question_context, dict): - return question_context - - question_context = dict(question_context) - - # Create the combined context - context = dict(question_context.items() + tag_context.items()) - - return context - -@decorators.render('questions.html', 'questions', tabbed=False) -def user_questions(request, mode, user, slug): - user = get_object_or_404(User, id=user) - - if mode == _('asked-by'): - questions = Question.objects.filter(author=user) - description = _("Questions asked by %s") - elif mode == _('answered-by'): - questions = Question.objects.filter(children__author=user, children__node_type='answer').distinct() - description = _("Questions answered by %s") - elif mode == _('subscribed-by'): - if not (request.user.is_superuser or request.user == user): - return HttpResponseUnauthorized(request) - questions = user.subscriptions - - if request.user == user: - description = _("Questions you subscribed %s") - else: - description = _("Questions subscribed by %s") - else: - raise Http404 - - - return question_list(request, questions, - mark_safe(description % hyperlink(user.get_profile_url(), user.username)), - page_title=description % user.username) - -def question_list(request, initial, - list_description=_('questions'), - base_path=None, - page_title=_("All Questions"), - allowIgnoreTags=True, - feed_url=None, - paginator_context=None, - show_summary=None, - feed_sort=('-added_at',), - feed_req_params_exclude=(_('page'), _('pagesize'), _('sort')), - extra_context={}): - - if show_summary is None: - show_summary = bool(settings.SHOW_SUMMARY_ON_QUESTIONS_LIST) - - questions = initial.filter_state(deleted=False) - - if request.user.is_authenticated() and allowIgnoreTags: - questions = questions.filter(~Q(tags__id__in = request.user.marked_tags.filter(user_selections__reason = 'bad'))) - - if page_title is None: - page_title = _("Questions") - - if request.GET.get('type', None) == 'rss': - if feed_sort: - questions = questions.order_by(*feed_sort) - return RssQuestionFeed(request, questions, page_title, list_description)(request) - - keywords = "" - if request.GET.get("q"): - keywords = request.GET.get("q").strip() - - #answer_count = Answer.objects.filter_state(deleted=False).filter(parent__in=questions).count() - #answer_description = _("answers") - - if not feed_url: - req_params = generate_uri(request.GET, feed_req_params_exclude) - - if req_params: - req_params = '&' + req_params - - feed_url = request.path + "?type=rss" + req_params - - context = { - 'questions' : questions.distinct(), - 'questions_count' : questions.count(), - 'keywords' : keywords, - 'list_description': list_description, - 'base_path' : base_path, - 'page_title' : page_title, - 'tab' : 'questions', - 'feed_url': feed_url, - 'show_summary' : show_summary, - } - context.update(extra_context) - - return pagination.paginated(request, - ('questions', paginator_context or QuestionListPaginatorContext()), context) - - -def search(request): - if request.method == "GET" and "q" in request.GET: - keywords = request.GET.get("q") - search_type = request.GET.get("t") - - if not keywords: - return HttpResponseRedirect(reverse(index)) - if search_type == 'tag': - return HttpResponseRedirect(reverse('tags') + '?q=%s' % urlquote(keywords.strip())) - elif search_type == "user": - return HttpResponseRedirect(reverse('users') + '?q=%s' % urlquote(keywords.strip())) - else: - return question_search(request, keywords) - else: - return render_to_response("search.html", context_instance=RequestContext(request)) - -@decorators.render('questions.html') -def question_search(request, keywords): - rank_feed = False - can_rank, initial = Question.objects.search(keywords) - - if can_rank: - sort_order = None - - if isinstance(can_rank, basestring): - sort_order = can_rank - rank_feed = True - - paginator_context = QuestionListPaginatorContext() - paginator_context.sort_methods[_('ranking')] = pagination.SimpleSort(_('relevance'), sort_order, _("most relevant questions")) - paginator_context.force_sort = _('ranking') - else: - paginator_context = None - - feed_url = mark_safe(escape(request.path + "?type=rss&q=" + keywords)) - - return question_list(request, initial, - _("questions matching '%(keywords)s'") % {'keywords': keywords}, - None, - _("questions matching '%(keywords)s'") % {'keywords': keywords}, - paginator_context=paginator_context, - feed_url=feed_url, feed_sort=rank_feed and (can_rank,) or '-added_at') - - -@decorators.render('tags.html', 'tags', _('tags'), weight=100) -def tags(request): - stag = "" - tags = Tag.active.all() - - if request.method == "GET": - stag = request.GET.get("q", "").strip() - if stag: - tags = tags.filter(name__icontains=stag) - - return pagination.paginated(request, ('tags', TagPaginatorContext()), { - "tags" : tags, - "stag" : stag, - "keywords" : stag - }) - -def update_question_view_times(request, question): - last_seen_in_question = request.session.get('last_seen_in_question', {}) - - last_seen = last_seen_in_question.get(question.id, None) - - if (not last_seen) or (last_seen < question.last_activity_at): - QuestionViewAction(question, request.user, ip=request.META['REMOTE_ADDR']).save() - last_seen_in_question[question.id] = datetime.datetime.now() - request.session['last_seen_in_question'] = last_seen_in_question - -def match_question_slug(id, slug): - slug_words = slug.split('-') - qs = Question.objects.filter(title__istartswith=slug_words[0]) - - for q in qs: - if slug == urlquote(slugify(q.title)): - return q - - return None - -def answer_redirect(request, answer): - pc = AnswerPaginatorContext() - - sort = pc.sort(request) - - if sort == _('oldest'): - filter = Q(added_at__lt=answer.added_at) - elif sort == _('newest'): - filter = Q(added_at__gt=answer.added_at) - elif sort == _('votes'): - filter = Q(score__gt=answer.score) | Q(score=answer.score, added_at__lt=answer.added_at) - else: - raise Http404() - - count = answer.question.answers.filter(Q(marked=True) | filter).exclude(state_string="(deleted)").count() - pagesize = pc.pagesize(request) - - page = count / pagesize - - if count % pagesize: - page += 1 - - if page == 0: - page = 1 - - return HttpResponseRedirect("%s?%s=%s&focusedAnswerId=%s#%s" % ( - answer.question.get_absolute_url(), _('page'), page, answer.id, answer.id)) - -@decorators.render("question.html", 'questions') -def question(request, id, slug='', answer=None): - try: - question = Question.objects.get(id=id) - except: - if slug: - question = match_question_slug(id, slug) - if question is not None: - return HttpResponseRedirect(question.get_absolute_url()) - - raise Http404() - - if question.nis.deleted and not request.user.can_view_deleted_post(question): - raise Http404 - - if request.GET.get('type', None) == 'rss': - return RssAnswerFeed(request, question, include_comments=request.GET.get('comments', None) == 'yes')(request) - - if answer: - answer = get_object_or_404(Answer, id=answer) - - if (question.nis.deleted and not request.user.can_view_deleted_post(question)) or answer.question != question: - raise Http404 - - if answer.marked: - return HttpResponsePermanentRedirect(question.get_absolute_url()) - - return answer_redirect(request, answer) - - if settings.FORCE_SINGLE_URL and (slug != slugify(question.title)): - return HttpResponsePermanentRedirect(question.get_absolute_url()) - - if request.POST: - answer_form = AnswerForm(request.POST, user=request.user) - else: - answer_form = AnswerForm(user=request.user) - - answers = request.user.get_visible_answers(question) - - update_question_view_times(request, question) - - if request.user.is_authenticated(): - try: - subscription = QuestionSubscription.objects.get(question=question, user=request.user) - except: - subscription = False - else: - subscription = False - try: - focused_answer_id = int(request.GET.get("focusedAnswerId", None)) - except TypeError, ValueError: - focused_answer_id = None - - return pagination.paginated(request, ('answers', AnswerPaginatorContext()), { - "question" : question, - "answer" : answer_form, - "answers" : answers, - "similar_questions" : question.get_related_questions(), - "subscription": subscription, - "embed_youtube_videos" : settings.EMBED_YOUTUBE_VIDEOS, - "focused_answer_id" : focused_answer_id - }) - - -REVISION_TEMPLATE = template.loader.get_template('node/revision.html') - -def revisions(request, id): - post = get_object_or_404(Node, id=id).leaf - revisions = list(post.revisions.order_by('revised_at')) - rev_ctx = [] - - for i, revision in enumerate(revisions): - rev_ctx.append(dict(inst=revision, html=template.loader.get_template('node/revision.html').render(template.Context({ - 'title': revision.title, - 'html': revision.html, - 'tags': revision.tagname_list(), - })))) - - if i > 0: - rev_ctx[i]['diff'] = mark_safe(htmldiff(rev_ctx[i-1]['html'], rev_ctx[i]['html'])) - else: - rev_ctx[i]['diff'] = mark_safe(rev_ctx[i]['html']) - - if not (revision.summary): - rev_ctx[i]['summary'] = _('Revision n. %(rev_number)d') % {'rev_number': revision.revision} - else: - rev_ctx[i]['summary'] = revision.summary - - rev_ctx.reverse() - - return render_to_response('revisions.html', { - 'post': post, - 'revisions': rev_ctx, - }, context_instance=RequestContext(request)) - - - diff --git a/forum/views/.svn/text-base/users.py.svn-base b/forum/views/.svn/text-base/users.py.svn-base deleted file mode 100644 index 84f1cdf2ad222e182161a658a620d8f01953cc46..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/users.py.svn-base +++ /dev/null @@ -1,466 +0,0 @@ -from forum.models import User -from django.db.models import Q, Count -from django.core.paginator import Paginator, EmptyPage, InvalidPage -from django.template.defaultfilters import slugify -from django.contrib.contenttypes.models import ContentType -from django.core.urlresolvers import reverse -from django.shortcuts import render_to_response, get_object_or_404 -from django.template import RequestContext -from django.http import HttpResponse, HttpResponseRedirect, Http404 -from forum.http_responses import HttpResponseUnauthorized -from django.utils.translation import ugettext as _ -from django.utils.http import urlquote_plus -from django.utils.html import strip_tags -from django.utils.encoding import smart_unicode -from django.utils import simplejson -from django.core.urlresolvers import reverse, NoReverseMatch -from forum.forms import * -from forum.utils.html import sanitize_html -from forum.modules import decorate, ReturnImediatelyException -from datetime import datetime, date -from forum.actions import EditProfileAction, FavoriteAction, BonusRepAction, SuspendAction -from forum.modules import ui -from forum.utils import pagination -from forum.views.readers import QuestionListPaginatorContext, AnswerPaginatorContext -from forum.settings import ONLINE_USERS - -import time -import datetime -import decorators - -class UserReputationSort(pagination.SimpleSort): - def apply(self, objects): - return objects.order_by('-is_active', self.order_by) - -class UserListPaginatorContext(pagination.PaginatorContext): - def __init__(self, pagesizes=(20, 35, 60), default_pagesize=35): - super (UserListPaginatorContext, self).__init__('USERS_LIST', sort_methods=( - (_('reputation'), UserReputationSort(_('reputation'), '-reputation', _("sorted by reputation"))), - (_('newest'), pagination.SimpleSort(_('recent'), '-date_joined', _("newest members"))), - (_('last'), pagination.SimpleSort(_('oldest'), 'date_joined', _("oldest members"))), - (_('name'), pagination.SimpleSort(_('by username'), 'username', _("sorted by username"))), - ), pagesizes=pagesizes, default_pagesize=default_pagesize) - -class SubscriptionListPaginatorContext(pagination.PaginatorContext): - def __init__(self): - super (SubscriptionListPaginatorContext, self).__init__('SUBSCRIPTION_LIST', pagesizes=(5, 10, 20), default_pagesize=20) - -class UserAnswersPaginatorContext(pagination.PaginatorContext): - def __init__(self): - super (UserAnswersPaginatorContext, self).__init__('USER_ANSWER_LIST', sort_methods=( - (_('oldest'), pagination.SimpleSort(_('oldest answers'), 'added_at', _("oldest answers will be shown first"))), - (_('newest'), pagination.SimpleSort(_('newest answers'), '-added_at', _("newest answers will be shown first"))), - (_('votes'), pagination.SimpleSort(_('popular answers'), '-score', _("most voted answers will be shown first"))), - ), default_sort=_('votes'), pagesizes=(5, 10, 20), default_pagesize=20, prefix=_('answers')) - -USERS_PAGE_SIZE = 35# refactor - move to some constants file - -@decorators.render('users/users.html', 'users', _('users'), weight=200) -def users(request): - suser = request.REQUEST.get('q', "") - users = User.objects.all() - - if suser != "": - users = users.filter(username__icontains=suser) - - return pagination.paginated(request, ('users', UserListPaginatorContext()), { - "users" : users, - "suser" : suser, - }) - - -@decorators.render('users/online_users.html', 'online_users', _('Online Users'), weight=200, tabbed=False) -def online_users(request): - suser = request.REQUEST.get('q', "") - - sort = "" - if request.GET.get("sort", None): - try: - sort = int(request.GET["sort"]) - except ValueError: - logging.error('Found invalid sort "%s", loading %s, refered by %s' % ( - request.GET.get("sort", ''), request.path, request.META.get('HTTP_REFERER', 'UNKNOWN') - )) - raise Http404() - - page = 0 - if request.GET.get("page", None): - try: - page = int(request.GET["page"]) - except ValueError: - logging.error('Found invalid page "%s", loading %s, refered by %s' % ( - request.GET.get("page", ''), request.path, request.META.get('HTTP_REFERER', 'UNKNOWN') - )) - raise Http404() - - pagesize = 10 - if request.GET.get("pagesize", None): - try: - pagesize = int(request.GET["pagesize"]) - except ValueError: - logging.error('Found invalid pagesize "%s", loading %s, refered by %s' % ( - request.GET.get("pagesize", ''), request.path, request.META.get('HTTP_REFERER', 'UNKNOWN') - )) - raise Http404() - - - users = None - if sort == "reputation": - users = sorted(ONLINE_USERS.sets.keys(), key=lambda user: user.reputation) - elif sort == "newest" : - users = sorted(ONLINE_USERS.sets.keys(), key=lambda user: user.newest) - elif sort == "last": - users = sorted(ONLINE_USERS.sets.keys(), key=lambda user: user.last) - elif sort == "name": - users = sorted(ONLINE_USERS.sets.keys(), key=lambda user: user.name) - elif sort == "oldest": - users = sorted(ONLINE_USERS.sets.keys(), key=lambda user: user.oldest) - elif sort == "newest": - users = sorted(ONLINE_USERS.sets.keys(), key=lambda user: user.newest) - elif sort == "votes": - users = sorted(ONLINE_USERS.sets.keys(), key=lambda user: user.votes) - else: - users = sorted(ONLINE_USERS.iteritems(), key=lambda x: x[1]) - - return render_to_response('users/online_users.html', { - "users" : users, - "suser" : suser, - "sort" : sort, - "page" : page, - "pageSize" : pagesize, - }) - - -def edit_user(request, id, slug): - user = get_object_or_404(User, id=id) - if not (request.user.is_superuser or request.user == user): - return HttpResponseUnauthorized(request) - if request.method == "POST": - form = EditUserForm(user, request.POST) - if form.is_valid(): - new_email = sanitize_html(form.cleaned_data['email']) - - if new_email != user.email: - user.email = new_email - user.email_isvalid = False - - try: - hash = ValidationHash.objects.get(user=request.user, type='email') - hash.delete() - except: - pass - - if settings.EDITABLE_SCREEN_NAME: - user.username = sanitize_html(form.cleaned_data['username']) - user.real_name = sanitize_html(form.cleaned_data['realname']) - user.website = sanitize_html(form.cleaned_data['website']) - user.location = sanitize_html(form.cleaned_data['city']) - user.date_of_birth = form.cleaned_data['birthday'] - if user.date_of_birth == "None": - user.date_of_birth = datetime(1900, 1, 1, 0, 0) - user.about = sanitize_html(form.cleaned_data['about']) - - user.save() - EditProfileAction(user=user, ip=request.META['REMOTE_ADDR']).save() - - request.user.message_set.create(message=_("Profile updated.")) - return HttpResponseRedirect(user.get_profile_url()) - else: - form = EditUserForm(user) - return render_to_response('users/edit.html', { - 'user': user, - 'form' : form, - 'gravatar_faq_url' : reverse('faq') + '#gravatar', - }, context_instance=RequestContext(request)) - - -@decorate.withfn(decorators.command) -def user_powers(request, id, action, status): - if not request.user.is_superuser: - raise decorators.CommandException(_("Only superusers are allowed to alter other users permissions.")) - - if (action == 'remove' and 'status' == 'super') and not request.user.is_siteowner(): - raise decorators.CommandException(_("Only the site owner can remove the super user status from other user.")) - - user = get_object_or_404(User, id=id) - new_state = action == 'grant' - - if status == 'super': - user.is_superuser = new_state - elif status == 'staff': - user.is_staff = new_state - else: - raise Http404() - - user.save() - return decorators.RefreshPageCommand() - - -@decorate.withfn(decorators.command) -def award_points(request, id): - if not request.POST: - return render_to_response('users/karma_bonus.html') - - if not request.user.is_superuser: - raise decorators.CommandException(_("Only superusers are allowed to award reputation points")) - - try: - points = int(request.POST['points']) - except: - raise decorators.CommandException(_("Invalid number of points to award.")) - - user = get_object_or_404(User, id=id) - - extra = dict(message=request.POST.get('message', ''), awarding_user=request.user.id, value=points) - - BonusRepAction(user=request.user, extra=extra).save(data=dict(value=points, affected=user)) - - return {'commands': { - 'update_profile_karma': [user.reputation] - }} - - -@decorate.withfn(decorators.command) -def suspend(request, id): - user = get_object_or_404(User, id=id) - - if not request.user.is_superuser: - raise decorators.CommandException(_("Only superusers can suspend other users")) - - if not request.POST.get('bantype', None): - if user.is_suspended(): - suspension = user.suspension - suspension.cancel(user=request.user, ip=request.META['REMOTE_ADDR']) - return decorators.RefreshPageCommand() - else: - return render_to_response('users/suspend_user.html') - - data = { - 'bantype': request.POST.get('bantype', 'Indefinitely').strip(), - 'publicmsg': request.POST.get('publicmsg', _('Bad behaviour')), - 'privatemsg': request.POST.get('privatemsg', None) or request.POST.get('publicmsg', ''), - 'suspended': user - } - - if data['bantype'] == 'forxdays': - try: - data['forxdays'] = int(request.POST['forxdays']) - except: - raise decorators.CommandException(_('Invalid numeric argument for the number of days.')) - - SuspendAction(user=request.user, ip=request.META['REMOTE_ADDR']).save(data=data) - - return decorators.RefreshPageCommand() - - -def user_view(template, tab_name, tab_title, tab_description, private=False, tabbed=True, render_to=None, weight=500): - def decorator(fn): - def params(request, id=None, slug=None): - # Get the user object by id if the id parameter has been passed - if id is not None: - user = get_object_or_404(User, id=id) - # ...or by slug if the slug has been given - elif slug is not None: - try: - user = User.objects.get(username__iexact=slug) - except User.DoesNotExist: - raise Http404 - - if private and not (user == request.user or request.user.is_superuser): - raise ReturnImediatelyException(HttpResponseUnauthorized(request)) - - if render_to and (not render_to(user)): - raise ReturnImediatelyException(HttpResponseRedirect(user.get_profile_url())) - - return [request, user], { 'slug' : slug, } - - decorated = decorate.params.withfn(params)(fn) - - def result(context_or_response, request, user, **kwargs): - rev_page_title = smart_unicode(user.username) + " - " + tab_description - - # Check whether the return type of the decorated function is a context or Http Response - if isinstance(context_or_response, HttpResponse): - response = context_or_response - - # If it is a response -- show it - return response - else: - # ...if it is a context move forward, update it and render it to response - context = context_or_response - - context.update({ - "tab": "users", - "active_tab" : tab_name, - "tab_description" : tab_description, - "page_title" : rev_page_title, - "can_view_private": (user == request.user) or request.user.is_superuser - }) - return render_to_response(template, context, context_instance=RequestContext(request)) - - decorated = decorate.result.withfn(result, needs_params=True)(decorated) - - if tabbed: - def url_getter(vu): - try: - return reverse(fn.__name__, kwargs={'id': vu.id, 'slug': slugify(smart_unicode(vu.username))}) - except NoReverseMatch: - try: - return reverse(fn.__name__, kwargs={'id': vu.id}) - except NoReverseMatch: - return reverse(fn.__name__, kwargs={'slug': slugify(smart_unicode(vu.username))}) - - ui.register(ui.PROFILE_TABS, ui.ProfileTab( - tab_name, tab_title, tab_description,url_getter, private, render_to, weight - )) - - return decorated - return decorator - - -@user_view('users/stats.html', 'stats', _('overview'), _('user overview')) -def user_profile(request, user, **kwargs): - questions = Question.objects.filter_state(deleted=False).filter(author=user).order_by('-added_at') - answers = Answer.objects.filter_state(deleted=False).filter(author=user).order_by('-added_at') - - # Check whether the passed slug matches the one for the user object - slug = kwargs['slug'] - if slug != slugify(smart_unicode(user.username)): - return HttpResponseRedirect(user.get_absolute_url()) - - up_votes = user.vote_up_count - down_votes = user.vote_down_count - votes_today = user.get_vote_count_today() - votes_total = user.can_vote_count_today() - - user_tags = Tag.objects.filter(Q(nodes__author=user) | Q(nodes__children__author=user)) \ - .annotate(user_tag_usage_count=Count('name')).order_by('-user_tag_usage_count') - - awards = [(Badge.objects.get(id=b['id']), b['count']) for b in - Badge.objects.filter(awards__user=user).values('id').annotate(count=Count('cls')).order_by('-count')] - - return pagination.paginated(request, ( - ('questions', QuestionListPaginatorContext('USER_QUESTION_LIST', _('questions'), default_pagesize=15)), - ('answers', UserAnswersPaginatorContext())), { - "view_user" : user, - "questions" : questions, - "answers" : answers, - "up_votes" : up_votes, - "down_votes" : down_votes, - "total_votes": up_votes + down_votes, - "votes_today_left": votes_total-votes_today, - "votes_total_per_day": votes_total, - "user_tags" : user_tags[:50], - "awards": awards, - "total_awards" : len(awards), - }) - -@user_view('users/recent.html', 'recent', _('recent activity'), _('recent user activity')) -def user_recent(request, user, **kwargs): - activities = user.actions.exclude( - action_type__in=("voteup", "votedown", "voteupcomment", "flag", "newpage", "editpage")).order_by( - '-action_date')[:USERS_PAGE_SIZE] - - return {"view_user" : user, "activities" : activities} - - -@user_view('users/reputation.html', 'reputation', _('reputation history'), _('graph of user karma')) -def user_reputation(request, user, **kwargs): - rep = list(user.reputes.order_by('date')) - values = [r.value for r in rep] - redux = lambda x, y: x+y - - graph_data = simplejson.dumps([ - (time.mktime(rep[i].date.timetuple()) * 1000, reduce(redux, values[:i+1], 0)) - for i in range(len(values)) - ]) - - rep = user.reputes.filter(action__canceled=False).order_by('-date')[0:20] - - return {"view_user": user, "reputation": rep, "graph_data": graph_data} - -@user_view('users/votes.html', 'votes', _('votes'), _('user vote record'), True) -def user_votes(request, user, **kwargs): - votes = user.votes.exclude(node__state_string__contains="(deleted").filter( - node__node_type__in=("question", "answer")).order_by('-voted_at')[:USERS_PAGE_SIZE] - - return {"view_user" : user, "votes" : votes} - -@user_view('users/questions.html', 'favorites', _('favorites'), _('questions that user selected as his/her favorite')) -def user_favorites(request, user, **kwargs): - favorites = FavoriteAction.objects.filter(canceled=False, user=user) - - return {"favorites" : favorites, "view_user" : user} - -@user_view('users/subscriptions.html', 'subscriptions', _('subscription'), _('subscriptions'), True, tabbed=False) -def user_subscriptions(request, user, **kwargs): - return _user_subscriptions(request, user, **kwargs) - -def _user_subscriptions(request, user, **kwargs): - enabled = True - - tab = request.GET.get('tab', "settings") - - # Manage tab - if tab == 'manage': - manage_open = True - - auto = request.GET.get('auto', 'True') - if auto == 'True': - show_auto = True - subscriptions = QuestionSubscription.objects.filter(user=user).order_by('-last_view') - else: - show_auto = False - subscriptions = QuestionSubscription.objects.filter(user=user, auto_subscription=False).order_by('-last_view') - - return pagination.paginated(request, ('subscriptions', SubscriptionListPaginatorContext()), { - 'subscriptions':subscriptions, - 'view_user':user, - "auto":show_auto, - 'manage_open':manage_open, - }) - # Settings Tab and everything else - else: - manage_open = False - if request.method == 'POST': - manage_open = False - form = SubscriptionSettingsForm(data=request.POST, instance=user.subscription_settings) - - if form.is_valid(): - form.save() - message = _('New subscription settings are now saved') - - user.subscription_settings.enable_notifications = enabled - user.subscription_settings.save() - - request.user.message_set.create(message=message) - else: - form = SubscriptionSettingsForm(instance=user.subscription_settings) - - return { - 'view_user':user, - 'notificatons_on': enabled, - 'form':form, - 'manage_open':manage_open, - } - -@user_view('users/preferences.html', 'preferences', _('preferences'), _('preferences'), True, tabbed=False) -def user_preferences(request, user, **kwargs): - if request.POST: - form = UserPreferencesForm(request.POST) - - if form.is_valid(): - user.prop.preferences = form.cleaned_data - request.user.message_set.create(message=_('New preferences saved')) - - else: - preferences = user.prop.preferences - - if preferences: - form = UserPreferencesForm(initial=preferences) - else: - form = UserPreferencesForm() - - return {'view_user': user, 'form': form} - - diff --git a/forum/views/.svn/text-base/vars.py.svn-base b/forum/views/.svn/text-base/vars.py.svn-base deleted file mode 100644 index 3ac5c2c039629bc710efd1093cd4165e695ed34a..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/vars.py.svn-base +++ /dev/null @@ -1,2 +0,0 @@ -ON_SIGNIN_SESSION_ATTR = 'on_signin_url' -PENDING_SUBMISSION_SESSION_ATTR = 'pending_submission_data' diff --git a/forum/views/.svn/text-base/writers.py.svn-base b/forum/views/.svn/text-base/writers.py.svn-base deleted file mode 100644 index 8c7980af09da8cbaee9523c6e253fb5d2bdb4de7..0000000000000000000000000000000000000000 --- a/forum/views/.svn/text-base/writers.py.svn-base +++ /dev/null @@ -1,298 +0,0 @@ -# encoding:utf-8 -import os.path - -import datetime - -from django.core.urlresolvers import reverse -from django.core.files.storage import FileSystemStorage -from django.views.decorators.csrf import csrf_exempt -from django.shortcuts import render_to_response, get_object_or_404 -from django.template import RequestContext -from django.http import HttpResponseRedirect, HttpResponse, Http404 -from django.utils.html import * -from django.utils.translation import ugettext as _ - -from forum.actions import AskAction, AnswerAction, ReviseAction, RollbackAction, RetagAction, AnswerToQuestionAction, CommentToQuestionAction -from forum.forms import * -from forum.models import * -from forum.utils import html -from forum.http_responses import HttpResponseUnauthorized - -from vars import PENDING_SUBMISSION_SESSION_ATTR - -@csrf_exempt -def upload(request):#ajax upload file to a question or answer - class FileTypeNotAllow(Exception): - pass - class FileSizeNotAllow(Exception): - pass - class UploadPermissionNotAuthorized(Exception): - pass - - xml_template = "<result><msg><![CDATA[%s]]></msg><error><![CDATA[%s]]></error><file_url>%s</file_url></result>" - - try: - f = request.FILES['file-upload'] - # check upload permission - if not request.user.can_upload_files(): - raise UploadPermissionNotAuthorized() - - # check file type - try: - file_name_suffix = os.path.splitext(f.name)[1].lower() - except KeyError: - raise FileTypeNotAllow() - - if not file_name_suffix in ('.jpg', '.jpeg', '.gif', '.png', '.bmp', '.tiff', '.ico'): - raise FileTypeNotAllow() - - storage = FileSystemStorage(str(settings.UPFILES_FOLDER), str(settings.UPFILES_ALIAS)) - new_file_name = storage.save("_".join(f.name.split()), f) - # check file size - # byte - size = storage.size(new_file_name) - - if size > float(settings.ALLOW_MAX_FILE_SIZE) * 1024 * 1024: - storage.delete(new_file_name) - raise FileSizeNotAllow() - - result = xml_template % ('Good', '', str(settings.UPFILES_ALIAS) + new_file_name) - except UploadPermissionNotAuthorized: - result = xml_template % ('', _('uploading images is limited to users with >60 reputation points'), '') - except FileTypeNotAllow: - result = xml_template % ('', _("allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'"), '') - except FileSizeNotAllow: - result = xml_template % ('', _("maximum upload file size is %sM") % settings.ALLOW_MAX_FILE_SIZE, '') - except Exception, e: - result = xml_template % ('', _('Error uploading file. Please contact the site administrator. Thank you. %s' % e), '') - - return HttpResponse(result, mimetype="application/xml") - -def ask(request): - form = None - - if request.POST: - if request.session.pop('reviewing_pending_data', False): - form = AskForm(initial=request.POST, user=request.user) - elif "text" in request.POST: - form = AskForm(request.POST, user=request.user) - if form.is_valid(): - if request.user.is_authenticated() and request.user.email_valid_and_can_ask(): - ask_action = AskAction(user=request.user, ip=request.META['REMOTE_ADDR']).save(data=form.cleaned_data) - question = ask_action.node - - if settings.WIKI_ON and request.POST.get('wiki', False): - question.nstate.wiki = ask_action - - return HttpResponseRedirect(question.get_absolute_url()) - else: - request.session[PENDING_SUBMISSION_SESSION_ATTR] = { - 'POST': request.POST, - 'data_name': _("question"), - 'type': 'ask', - 'submission_url': reverse('ask'), - 'time': datetime.datetime.now() - } - - if request.user.is_authenticated(): - request.user.message_set.create(message=_("Your question is pending until you %s.") % html.hyperlink( - reverse('send_validation_email'), _("validate your email") - )) - return HttpResponseRedirect(reverse('index')) - else: - return HttpResponseRedirect(reverse('auth_signin')) - elif "go" in request.POST: - form = AskForm({'title': request.POST['q']}, user=request.user) - - if not form: - form = AskForm(user=request.user) - - return render_to_response('ask.html', { - 'form' : form, - 'tab' : 'ask' - }, context_instance=RequestContext(request)) - -def convert_to_question(request, id): - user = request.user - - node_type = request.GET.get('node_type', 'answer') - if node_type == 'comment': - node = get_object_or_404(Comment, id=id) - action_class = CommentToQuestionAction - else: - node = get_object_or_404(Answer, id=id) - action_class = AnswerToQuestionAction - - if not user.can_convert_to_question(node): - return HttpResponseUnauthorized(request) - - return _edit_question(request, node, template='node/convert_to_question.html', summary=_("Converted to question"), - action_class =action_class, allow_rollback=False, url_getter=lambda a: Question.objects.get(id=a.id).get_absolute_url()) - -def edit_question(request, id): - question = get_object_or_404(Question, id=id) - if question.nis.deleted and not request.user.can_view_deleted_post(question): - raise Http404 - if request.user.can_edit_post(question): - return _edit_question(request, question) - elif request.user.can_retag_questions(): - return _retag_question(request, question) - else: - raise Http404 - -def _retag_question(request, question): - if request.method == 'POST': - form = RetagQuestionForm(question, request.POST) - if form.is_valid(): - if form.has_changed(): - RetagAction(user=request.user, node=question, ip=request.META['REMOTE_ADDR']).save(data=dict(tagnames=form.cleaned_data['tags'])) - - return HttpResponseRedirect(question.get_absolute_url()) - else: - form = RetagQuestionForm(question) - return render_to_response('question_retag.html', { - 'question': question, - 'form' : form, - #'tags' : _get_tags_cache_json(), - }, context_instance=RequestContext(request)) - -def _edit_question(request, question, template='question_edit.html', summary='', action_class=ReviseAction, - allow_rollback=True, url_getter=lambda q: q.get_absolute_url(), additional_context=None): - if request.method == 'POST': - revision_form = RevisionForm(question, data=request.POST) - revision_form.is_valid() - revision = question.revisions.get(revision=revision_form.cleaned_data['revision']) - - if 'select_revision' in request.POST: - form = EditQuestionForm(question, request.user, revision) - else: - form = EditQuestionForm(question, request.user, revision, data=request.POST) - - if not 'select_revision' in request.POST and form.is_valid(): - if form.has_changed(): - action = action_class(user=request.user, node=question, ip=request.META['REMOTE_ADDR']).save(data=form.cleaned_data) - - if settings.WIKI_ON: - if request.POST.get('wiki', False) and not question.nis.wiki: - question.nstate.wiki = action - elif question.nis.wiki and (not request.POST.get('wiki', False)) and request.user.can_cancel_wiki(question): - question.nstate.wiki = None - else: - if not revision == question.active_revision: - if allow_rollback: - RollbackAction(user=request.user, node=question).save(data=dict(activate=revision)) - else: - pass - - return HttpResponseRedirect(url_getter(question)) - else: - revision_form = RevisionForm(question) - form = EditQuestionForm(question, request.user, initial={'summary': summary}) - - context = { - 'question': question, - 'revision_form': revision_form, - 'form' : form, - } - - if not (additional_context is None): - context.update(additional_context) - - return render_to_response(template, context, context_instance=RequestContext(request)) - - -def edit_answer(request, id): - answer = get_object_or_404(Answer, id=id) - if answer.deleted and not request.user.can_view_deleted_post(answer): - raise Http404 - elif not request.user.can_edit_post(answer): - raise Http404 - - if request.method == "POST": - revision_form = RevisionForm(answer, data=request.POST) - revision_form.is_valid() - revision = answer.revisions.get(revision=revision_form.cleaned_data['revision']) - - if 'select_revision' in request.POST: - form = EditAnswerForm(answer, request.user, revision) - else: - form = EditAnswerForm(answer, request.user, revision, data=request.POST) - - if not 'select_revision' in request.POST and form.is_valid(): - if form.has_changed(): - action = ReviseAction(user=request.user, node=answer, ip=request.META['REMOTE_ADDR']).save(data=form.cleaned_data) - - if settings.WIKI_ON: - if request.POST.get('wiki', False) and not answer.nis.wiki: - answer.nstate.wiki = action - elif answer.nis.wiki and (not request.POST.get('wiki', False)) and request.user.can_cancel_wiki(answer): - answer.nstate.wiki = None - else: - if not revision == answer.active_revision: - RollbackAction(user=request.user, node=answer, ip=request.META['REMOTE_ADDR']).save(data=dict(activate=revision)) - - return HttpResponseRedirect(answer.get_absolute_url()) - - else: - revision_form = RevisionForm(answer) - form = EditAnswerForm(answer, request.user) - return render_to_response('answer_edit.html', { - 'answer': answer, - 'revision_form': revision_form, - 'form': form, - }, context_instance=RequestContext(request)) - -def answer(request, id): - question = get_object_or_404(Question, id=id) - - if request.POST: - form = AnswerForm(request.POST, request.user) - - if request.session.pop('reviewing_pending_data', False) or not form.is_valid(): - request.session['redirect_POST_data'] = request.POST - return HttpResponseRedirect(question.get_absolute_url() + '#fmanswer') - - if request.user.is_authenticated() and request.user.email_valid_and_can_answer(): - answer_action = AnswerAction(user=request.user, ip=request.META['REMOTE_ADDR']).save(dict(question=question, **form.cleaned_data)) - answer = answer_action.node - - if settings.WIKI_ON and request.POST.get('wiki', False): - answer.nstate.wiki = answer_action - - return HttpResponseRedirect(answer.get_absolute_url()) - else: - request.session[PENDING_SUBMISSION_SESSION_ATTR] = { - 'POST': request.POST, - 'data_name': _("answer"), - 'type': 'answer', - 'submission_url': reverse('answer', kwargs={'id': id}), - 'time': datetime.datetime.now() - } - - if request.user.is_authenticated(): - request.user.message_set.create(message=_("Your answer is pending until you %s.") % html.hyperlink( - reverse('send_validation_email'), _("validate your email") - )) - return HttpResponseRedirect(question.get_absolute_url()) - else: - return HttpResponseRedirect(reverse('auth_signin')) - - return HttpResponseRedirect(question.get_absolute_url()) - - -def manage_pending_data(request, action, forward=None): - pending_data = request.session.pop(PENDING_SUBMISSION_SESSION_ATTR, None) - - if not pending_data: - raise Http404 - - if action == _("cancel"): - return HttpResponseRedirect(forward or request.META.get('HTTP_REFERER', '/')) - else: - if action == _("review"): - request.session['reviewing_pending_data'] = True - - request.session['redirect_POST_data'] = pending_data['POST'] - return HttpResponseRedirect(pending_data['submission_url']) - - diff --git a/forum_modules/.svn/all-wcprops b/forum_modules/.svn/all-wcprops deleted file mode 100644 index 6774d9086671d5bccace2d1c357df7e3fdf5cefb..0000000000000000000000000000000000000000 --- a/forum_modules/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 47 -/svnroot/!svn/ver/1252/osqa/trunk/forum_modules -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/__init__.py -END diff --git a/forum_modules/.svn/dir-prop-base b/forum_modules/.svn/dir-prop-base deleted file mode 100644 index d12dad595da913d74f81d842792ebfbcf0564fba..0000000000000000000000000000000000000000 --- a/forum_modules/.svn/dir-prop-base +++ /dev/null @@ -1,8 +0,0 @@ -K 10 -svn:ignore -V 20 -alteregos - -partners - -END diff --git a/forum_modules/.svn/entries b/forum_modules/.svn/entries deleted file mode 100644 index 4e436200d9d8b6c005a8a35bb2374ac8e2651b0e..0000000000000000000000000000000000000000 --- a/forum_modules/.svn/entries +++ /dev/null @@ -1,110 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules -http://svn.osqa.net/svnroot - - - -2012-04-18T13:49:12.520070Z -1252 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:38.538501Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -default_badges -dir - -recaptcha -dir - -facebookauth -dir - -mysqlfulltext -dir - -akismet -dir - -pgfulltext -dir - -openidauth -dir - -sphinxfulltext -dir - -oauthauth -dir - -ldapauth -dir - -updates -dir - -robotstxt -dir - -exporter -dir - -project_badges -dir - -sximporter -dir - -localauth -dir - diff --git a/forum_modules/.svn/prop-base/__init__.py.svn-base b/forum_modules/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/.svn/text-base/__init__.py.svn-base b/forum_modules/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/akismet/.svn/all-wcprops b/forum_modules/akismet/.svn/all-wcprops deleted file mode 100644 index 1c9a4d5b55d74408bb8351683a7cc724abf1354c..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1169/osqa/trunk/forum_modules/akismet -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/akismet/__init__.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/akismet/settings.py -END -startup.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/akismet/startup.py -END diff --git a/forum_modules/akismet/.svn/entries b/forum_modules/akismet/.svn/entries deleted file mode 100644 index 29df896e86f6fe305fca647d96d03e13c16cbf2e..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/.svn/entries +++ /dev/null @@ -1,136 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/akismet -http://svn.osqa.net/svnroot - - - -2011-09-06T13:39:19.526744Z -1169 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -lib -dir - -__init__.py -file - - - - -2012-06-22T20:34:37.415061Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -settings.py -file - - - - -2012-06-22T20:34:37.415061Z -0347ac8b984e91b39a27438651c8e6bb -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -718 - -startup.py -file - - - - -2012-06-22T20:34:37.415061Z -8ae2f0d6dd8f1260b84f32aeb5efe540 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3041 - -templates -dir - diff --git a/forum_modules/akismet/.svn/prop-base/__init__.py.svn-base b/forum_modules/akismet/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/akismet/.svn/prop-base/settings.py.svn-base b/forum_modules/akismet/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/akismet/.svn/prop-base/startup.py.svn-base b/forum_modules/akismet/.svn/prop-base/startup.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/.svn/prop-base/startup.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/akismet/.svn/text-base/__init__.py.svn-base b/forum_modules/akismet/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/akismet/.svn/text-base/settings.py.svn-base b/forum_modules/akismet/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 8e7a59eaff10a9aa1c65b226b3413a3b14416fb4..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -from forum.settings.base import Setting -from forum.settings.extkeys import EXT_KEYS_SET -from forum.settings.minrep import MIN_REP_SET -from django.utils.translation import ugettext_lazy as _ - -WORDPRESS_API_KEY = Setting('WORDPRESS_API_KEY', '', EXT_KEYS_SET, dict( -label = _("WordPress API key"), -help_text = _("Your WordPress API key. You can get one at <a href='http://wordpress.com/'>http://wordpress.com/</a>"), -required=False)) - -REP_FOR_NO_SPAM_CHECK = Setting('REP_FOR_NO_SPAM_CHECK', 750, MIN_REP_SET, dict( -label = _("Minimum reputation to not have your posts checked"), -help_text = _("The minimum reputation a user must have so that when they post a question, answer or comment it is not checked for spam."))) diff --git a/forum_modules/akismet/.svn/text-base/startup.py.svn-base b/forum_modules/akismet/.svn/text-base/startup.py.svn-base deleted file mode 100644 index 2107bbbe8f3aa981d8700217f799afd9013e8e3b..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/.svn/text-base/startup.py.svn-base +++ /dev/null @@ -1,77 +0,0 @@ -from django.utils.translation import ugettext as _ -from django.http import HttpResponse, HttpResponseRedirect -from django.template import RequestContext -from django.utils import simplejson -from django.utils.encoding import smart_str -from django.shortcuts import render_to_response -from forum.modules import decorate -from forum import views -from lib.akismet import Akismet -from forum.settings import APP_URL, OSQA_VERSION - -from settings import WORDPRESS_API_KEY, REP_FOR_NO_SPAM_CHECK - -from forum.models.user import User -from forum.forms.general import SimpleCaptchaForm - -import settings -import logging - -def can_bypass_spam_check(user): - return user.is_authenticated and (user.is_superuser or user.is_staff or cmp(int(user.reputation), REP_FOR_NO_SPAM_CHECK) > 0) - - -def check_spam(param, comment_type): - def wrapper(origin, request, *args, **kwargs): - if request.POST and request.POST.get(param, None) and WORDPRESS_API_KEY and (not can_bypass_spam_check(request.user)): - - comment = smart_str(request.POST[param]) - - data = { - "user_ip":request.META["REMOTE_ADDR"], - "user_agent":request.environ['HTTP_USER_AGENT'], - "comment_type": comment_type, - "comment":comment - } - - if request.user.is_authenticated(): - data.update({ - "comment_author":smart_str(request.user.username), - "comment_author_email":request.user.email, - "comment_author_url":request.user.website, - }) - - api = Akismet(settings.WORDPRESS_API_KEY, APP_URL, "OSQA/%s" % OSQA_VERSION) - if api.comment_check(comment, data): - post_data = request.POST - captcha_form = SimpleCaptchaForm(request.POST) - - if request.is_ajax(): - response = { - 'success': False, - 'error_message': _("Sorry, but akismet thinks your %s is spam.") % comment_type - } - return HttpResponse(simplejson.dumps(response), mimetype="application/json") - else: - captcha_checked = False - try: - if captcha_form.is_valid() and 'recaptcha' in captcha_form.fields.keys(): - captcha_checked = True - except: - pass - - if not captcha_checked: - return render_to_response('modules/akismet/foundspam.html', { - 'action_name': comment_type, - 'post_data' : post_data, - 'captcha_form' : captcha_form, - }, RequestContext(request)) - - return origin(request, *args, **kwargs) - - return wrapper - - -decorate(views.writers.ask)(check_spam('text', _('question'))) -decorate(views.writers.answer)(check_spam('text', _('answer'))) -decorate(views.commands.comment)(check_spam('comment', _('comment'))) diff --git a/forum_modules/akismet/lib/.svn/all-wcprops b/forum_modules/akismet/lib/.svn/all-wcprops deleted file mode 100644 index 615266605ede427531efe178128f1331adc5f5bc..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/lib/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/akismet/lib -END -akismet.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/akismet/lib/akismet.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/akismet/lib/__init__.py -END diff --git a/forum_modules/akismet/lib/.svn/entries b/forum_modules/akismet/lib/.svn/entries deleted file mode 100644 index 04ae3ba01859e902287b2e8d6c789c326f6d9593..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/lib/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/akismet/lib -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -akismet.py -file - - - - -2012-06-22T20:34:37.399069Z -b12fd8a2061add45ca230a82a975f35f -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -13468 - -__init__.py -file - - - - -2012-06-22T20:34:37.399069Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - diff --git a/forum_modules/akismet/lib/.svn/prop-base/__init__.py.svn-base b/forum_modules/akismet/lib/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/lib/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/akismet/lib/.svn/prop-base/akismet.py.svn-base b/forum_modules/akismet/lib/.svn/prop-base/akismet.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/lib/.svn/prop-base/akismet.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/akismet/lib/.svn/text-base/__init__.py.svn-base b/forum_modules/akismet/lib/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/akismet/lib/.svn/text-base/akismet.py.svn-base b/forum_modules/akismet/lib/.svn/text-base/akismet.py.svn-base deleted file mode 100644 index fd15794c77bce5aa5a0f46e39776ac11b8e396c2..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/lib/.svn/text-base/akismet.py.svn-base +++ /dev/null @@ -1,373 +0,0 @@ -# Version 0.2.0 -# 2009/06/18 - -# Copyright Michael Foord 2005-2009 -# akismet.py -# Python interface to the akismet API -# E-mail fuzzyman@voidspace.org.uk - -# http://www.voidspace.org.uk/python/modules.shtml -# http://akismet.com - -# Released subject to the BSD License -# See http://www.voidspace.org.uk/python/license.shtml - - -""" -A python interface to the `Akismet <http://akismet.com>`_ API. -This is a web service for blocking SPAM comments to blogs - or other online -services. - -You will need a Wordpress API key, from `wordpress.com <http://wordpress.com>`_. - -You should pass in the keyword argument 'agent' to the name of your program, -when you create an Akismet instance. This sets the ``user-agent`` to a useful -value. - -The default is : :: - - Python Interface by Fuzzyman | akismet.py/0.2.0 - -Whatever you pass in, will replace the *Python Interface by Fuzzyman* part. -**0.2.0** will change with the version of this interface. - -Usage example:: - - from akismet import Akismet - - api = Akismet(agent='Test Script') - # if apikey.txt is in place, - # the key will automatically be set - # or you can call api.setAPIKey() - # - if api.key is None: - print "No 'apikey.txt' file." - elif not api.verify_key(): - print "The API key is invalid." - else: - # data should be a dictionary of values - # They can all be filled in with defaults - # from a CGI environment - if api.comment_check(comment, data): - print 'This comment is spam.' - else: - print 'This comment is ham.' -""" - - -import os, sys -from urllib import urlencode -from forum import settings - -import socket -if hasattr(socket, 'setdefaulttimeout'): - # Set the default timeout on sockets to 5 seconds - socket.setdefaulttimeout(5) - -__version__ = '0.2.0' - -__all__ = ( - '__version__', - 'Akismet', - 'AkismetError', - 'APIKeyError', - ) - -__author__ = 'Michael Foord <fuzzyman AT voidspace DOT org DOT uk>' - -__docformat__ = "restructuredtext en" - -user_agent = "%s | akismet.py/%s" -DEFAULTAGENT = 'Python Interface by Fuzzyman/%s' - -isfile = os.path.isfile - -urllib2 = None -try: - from google.appengine.api import urlfetch -except ImportError: - import urllib2 - -if urllib2 is None: - def _fetch_url(url, data, headers): - req = urlfetch.fetch(url=url, payload=data, method=urlfetch.POST, headers=headers) - if req.status_code == 200: - return req.content - raise Exception('Could not fetch Akismet URL: %s Response code: %s' % - (url, req.status_code)) -else: - def _fetch_url(url, data, headers): - req = urllib2.Request(url, data, headers) - h = urllib2.urlopen(req) - resp = h.read() - return resp - - -class AkismetError(Exception): - """Base class for all akismet exceptions.""" - -class APIKeyError(AkismetError): - """Invalid API key.""" - -class Akismet(object): - """A class for working with the akismet API""" - - baseurl = 'rest.akismet.com/1.1/' - - def __init__(self, key=None, blog_url=None, agent=None): - """Automatically calls ``setAPIKey``.""" - if agent is None: - agent = DEFAULTAGENT % __version__ - self.user_agent = user_agent % (agent, __version__) - self.setAPIKey(key, blog_url) - - - def _getURL(self): - """ - Fetch the url to make requests to. - - This comprises of api key plus the baseurl. - """ - return 'http://%s.%s' % (self.key, self.baseurl) - - - def _safeRequest(self, url, data, headers): - try: - resp = _fetch_url(url, data, headers) - except Exception, e: - raise AkismetError(str(e)) - return resp - - - def setAPIKey(self, key=None, blog_url=None): - """ - Set the wordpress API key for all transactions. - - If you don't specify an explicit API ``key`` and ``blog_url`` it will - attempt to load them from a file called ``apikey.txt`` in the current - directory. - - This method is *usually* called automatically when you create a new - ``Akismet`` instance. - """ - if key is None and isfile('apikey.txt'): - the_file = [l.strip() for l in open('apikey.txt').readlines() - if l.strip() and not l.strip().startswith('#')] - try: - self.key = the_file[0] - self.blog_url = the_file[1] - except IndexError: - raise APIKeyError("Your 'apikey.txt' is invalid.") - else: - self.key = key - self.blog_url = blog_url - - - def verify_key(self): - """ - This equates to the ``verify-key`` call against the akismet API. - - It returns ``True`` if the key is valid. - - The docs state that you *ought* to call this at the start of the - transaction. - - It raises ``APIKeyError`` if you have not yet set an API key. - - If the connection to akismet fails, it allows the normal ``HTTPError`` - or ``URLError`` to be raised. - (*akismet.py* uses `urllib2 <http://docs.python.org/lib/module-urllib2.html>`_) - """ - if self.key is None: - raise APIKeyError("Your have not set an API key.") - data = { 'key': self.key, 'blog': self.blog_url } - # this function *doesn't* use the key as part of the URL - url = 'http://%sverify-key' % self.baseurl - # we *don't* trap the error here - # so if akismet is down it will raise an HTTPError or URLError - headers = {'User-Agent' : self.user_agent} - resp = self._safeRequest(url, urlencode(data), headers) - if resp.lower() == 'valid': - return True - else: - return False - - def _build_data(self, comment, data): - """ - This function builds the data structure required by ``comment_check``, - ``submit_spam``, and ``submit_ham``. - - It modifies the ``data`` dictionary you give it in place. (and so - doesn't return anything) - - It raises an ``AkismetError`` if the user IP or user-agent can't be - worked out. - """ - data['comment_content'] = comment - if not 'user_ip' in data: - try: - val = os.environ['REMOTE_ADDR'] - except KeyError: - raise AkismetError("No 'user_ip' supplied") - data['user_ip'] = val - if not 'user_agent' in data: - try: - val = os.environ['HTTP_USER_AGENT'] - except KeyError: - raise AkismetError("No 'user_agent' supplied") - data['user_agent'] = val - # - data.setdefault('referrer', os.environ.get('HTTP_REFERER', 'unknown')) - data.setdefault('permalink', '') - data.setdefault('comment_type', 'comment') - data.setdefault('comment_author', '') - data.setdefault('comment_author_email', '') - data.setdefault('comment_author_url', '') - data.setdefault('SERVER_ADDR', os.environ.get('SERVER_ADDR', '')) - data.setdefault('SERVER_ADMIN', os.environ.get('SERVER_ADMIN', '')) - data.setdefault('SERVER_NAME', os.environ.get('SERVER_NAME', '')) - data.setdefault('SERVER_PORT', os.environ.get('SERVER_PORT', '')) - data.setdefault('SERVER_SIGNATURE', os.environ.get('SERVER_SIGNATURE', - '')) - data.setdefault('SERVER_SOFTWARE', os.environ.get('SERVER_SOFTWARE', - '')) - data.setdefault('HTTP_ACCEPT', os.environ.get('HTTP_ACCEPT', '')) - data.setdefault('blog', self.blog_url) - - - def comment_check(self, comment, data=None, build_data=True, DEBUG=False): - """ - This is the function that checks comments. - - It returns ``True`` for spam and ``False`` for ham. - - If you set ``DEBUG=True`` then it will return the text of the response, - instead of the ``True`` or ``False`` object. - - It raises ``APIKeyError`` if you have not yet set an API key. - - If the connection to Akismet fails then the ``HTTPError`` or - ``URLError`` will be propogated. - - As a minimum it requires the body of the comment. This is the - ``comment`` argument. - - Akismet requires some other arguments, and allows some optional ones. - The more information you give it, the more likely it is to be able to - make an accurate diagnosise. - - You supply these values using a mapping object (dictionary) as the - ``data`` argument. - - If ``build_data`` is ``True`` (the default), then *akismet.py* will - attempt to fill in as much information as possible, using default - values where necessary. This is particularly useful for programs - running in a {acro;CGI} environment. A lot of useful information - can be supplied from evironment variables (``os.environ``). See below. - - You *only* need supply values for which you don't want defaults filled - in for. All values must be strings. - - There are a few required values. If they are not supplied, and - defaults can't be worked out, then an ``AkismetError`` is raised. - - If you set ``build_data=False`` and a required value is missing an - ``AkismetError`` will also be raised. - - The normal values (and defaults) are as follows : :: - - 'user_ip': os.environ['REMOTE_ADDR'] (*) - 'user_agent': os.environ['HTTP_USER_AGENT'] (*) - 'referrer': os.environ.get('HTTP_REFERER', 'unknown') [#]_ - 'permalink': '' - 'comment_type': 'comment' [#]_ - 'comment_author': '' - 'comment_author_email': '' - 'comment_author_url': '' - 'SERVER_ADDR': os.environ.get('SERVER_ADDR', '') - 'SERVER_ADMIN': os.environ.get('SERVER_ADMIN', '') - 'SERVER_NAME': os.environ.get('SERVER_NAME', '') - 'SERVER_PORT': os.environ.get('SERVER_PORT', '') - 'SERVER_SIGNATURE': os.environ.get('SERVER_SIGNATURE', '') - 'SERVER_SOFTWARE': os.environ.get('SERVER_SOFTWARE', '') - 'HTTP_ACCEPT': os.environ.get('HTTP_ACCEPT', '') - - (*) Required values - - You may supply as many additional 'HTTP_*' type values as you wish. - These should correspond to the http headers sent with the request. - - .. [#] Note the spelling "referrer". This is a required value by the - akismet api - however, referrer information is not always - supplied by the browser or server. In fact the HTTP protocol - forbids relying on referrer information for functionality in - programs. - .. [#] The `API docs <http://akismet.com/development/api/>`_ state that this value - can be " *blank, comment, trackback, pingback, or a made up value* - *like 'registration'* ". - """ - if self.key is None: - raise APIKeyError("Your have not set an API key.") - if data is None: - data = {} - if build_data: - self._build_data(comment, data) - if 'blog' not in data: - data['blog'] = self.blog_url - url = '%scomment-check' % self._getURL() - # we *don't* trap the error here - # so if akismet is down it will raise an HTTPError or URLError - headers = {'User-Agent' : self.user_agent} - resp = self._safeRequest(url, urlencode(data), headers) - if DEBUG: - return resp - resp = resp.lower() - if resp == 'true': - return True - elif resp == 'false': - return False - else: - # NOTE: Happens when you get a 'howdy wilbur' response ! - raise AkismetError('missing required argument.') - - - def submit_spam(self, comment, data=None, build_data=True): - """ - This function is used to tell akismet that a comment it marked as ham, - is really spam. - - It takes all the same arguments as ``comment_check``, except for - *DEBUG*. - """ - if self.key is None: - raise APIKeyError("Your have not set an API key.") - if data is None: - data = {} - if build_data: - self._build_data(comment, data) - url = '%ssubmit-spam' % self._getURL() - # we *don't* trap the error here - # so if akismet is down it will raise an HTTPError or URLError - headers = {'User-Agent' : self.user_agent} - self._safeRequest(url, urlencode(data), headers) - - - def submit_ham(self, comment, data=None, build_data=True): - """ - This function is used to tell akismet that a comment it marked as spam, - is really ham. - - It takes all the same arguments as ``comment_check``, except for - *DEBUG*. - """ - if self.key is None: - raise APIKeyError("Your have not set an API key.") - if data is None: - data = {} - if build_data: - self._build_data(comment, data) - url = '%ssubmit-ham' % self._getURL() - # we *don't* trap the error here - # so if akismet is down it will raise an HTTPError or URLError - headers = {'User-Agent' : self.user_agent} - self._safeRequest(url, urlencode(data), headers) diff --git a/forum_modules/akismet/templates/.svn/all-wcprops b/forum_modules/akismet/templates/.svn/all-wcprops deleted file mode 100644 index cecba18c8cd4558f3b130b2bd590c22b35d167b0..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1169/osqa/trunk/forum_modules/akismet/templates -END -foundspam.html -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1169/osqa/trunk/forum_modules/akismet/templates/foundspam.html -END diff --git a/forum_modules/akismet/templates/.svn/entries b/forum_modules/akismet/templates/.svn/entries deleted file mode 100644 index 133bbc4af38c5fec0db1501ee61e66e7f3bfc591..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/akismet/templates -http://svn.osqa.net/svnroot - - - -2011-09-06T13:39:19.526744Z -1169 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -foundspam.html -file - - - - -2012-06-22T20:34:37.411063Z -71cfc63ff11d1704afc5e62ac2a5f036 -2011-09-06T13:39:19.526744Z -1169 -jordan - - - - - - - - - - - - - - - - - - - - - -867 - diff --git a/forum_modules/akismet/templates/.svn/text-base/foundspam.html.svn-base b/forum_modules/akismet/templates/.svn/text-base/foundspam.html.svn-base deleted file mode 100644 index 82f647bf8e549c9a3be64bf6bbd23bd408cf5d4a..0000000000000000000000000000000000000000 --- a/forum_modules/akismet/templates/.svn/text-base/foundspam.html.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -{% extends "base_content.html" %} -{% load i18n %} -{% block title %}{% trans "Akismet message" %}{% endblock %} - -{% block content %} -<div class="headNormal"> -{% blocktrans %}Akismet believes your {{ action_name }} is spam.{% endblocktrans %} -</div> -<div class="content"> -{% blocktrans %} -We're sorry, but Akismet believes your {{ action_name }} is spam.<br /> -If you believe this is an error, please contact the forum administrator. -{% endblocktrans %} - -{% if captcha_form.recaptcha %} -<form action="." method="post"> -{% csrf_token %} -<table> - <tr> - <td> - {% for post_item in post_data.items %} - <input type="hidden" name="{{ post_item.0 }}" value="{{ post_item.1 }}" /> - {% endfor %} - - {{ captcha_form.recaptcha }} - - </td> - </tr> - <tr> - <td><input type="submit" value="{% trans "Submit" %}" /></td> - </tr> -</table> -</form> -{% endif %} - -</div> -{% endblock %} diff --git a/forum_modules/default_badges/.svn/all-wcprops b/forum_modules/default_badges/.svn/all-wcprops deleted file mode 100644 index 741ee06dd428b0933c81aabaae93dc58fe8c907c..0000000000000000000000000000000000000000 --- a/forum_modules/default_badges/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1170/osqa/trunk/forum_modules/default_badges -END -badges.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1170/osqa/trunk/forum_modules/default_badges/badges.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/default_badges/__init__.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/default_badges/settings.py -END diff --git a/forum_modules/default_badges/.svn/entries b/forum_modules/default_badges/.svn/entries deleted file mode 100644 index 3bfceb95596744ee5c4839fa8c71505aa7dab389..0000000000000000000000000000000000000000 --- a/forum_modules/default_badges/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/default_badges -http://svn.osqa.net/svnroot - - - -2011-09-07T12:37:15.935312Z -1170 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -badges.py -file - - - - -2012-06-22T20:34:37.231153Z -2979b8ab3c7d381bb233c6abd15041d4 -2011-09-07T12:37:15.935312Z -1170 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -10347 - -__init__.py -file - - - - -2012-06-22T20:34:37.227155Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -settings.py -file - - - - -2012-06-22T20:34:37.227155Z -726874d34d465be82056083783576104 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -5371 - diff --git a/forum_modules/default_badges/.svn/prop-base/__init__.py.svn-base b/forum_modules/default_badges/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/default_badges/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/default_badges/.svn/prop-base/badges.py.svn-base b/forum_modules/default_badges/.svn/prop-base/badges.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/default_badges/.svn/prop-base/badges.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/default_badges/.svn/prop-base/settings.py.svn-base b/forum_modules/default_badges/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/default_badges/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/default_badges/.svn/text-base/__init__.py.svn-base b/forum_modules/default_badges/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/default_badges/.svn/text-base/badges.py.svn-base b/forum_modules/default_badges/.svn/text-base/badges.py.svn-base deleted file mode 100644 index f9da788d6c5ad434a22f7d7475b90f4ac9e2d014..0000000000000000000000000000000000000000 --- a/forum_modules/default_badges/.svn/text-base/badges.py.svn-base +++ /dev/null @@ -1,330 +0,0 @@ -from datetime import datetime, timedelta -from django.utils.translation import ugettext as _ -from forum.badges.base import AbstractBadge -from forum.models import Badge -from forum.actions import * -from forum.models import Vote, Flag - -import settings - -class QuestionViewBadge(AbstractBadge): - abstract = True - listen_to = (QuestionViewAction,) - - @property - def description(self): - return _('Asked a question with %s views') % str(self.nviews) - - def award_to(self, action): - if action.node.extra_count == int(self.nviews): - return action.node.author - - -class PopularQuestion(QuestionViewBadge): - name = _('Popular Question') - nviews = settings.POPULAR_QUESTION_VIEWS - - -class NotableQuestion(QuestionViewBadge): - type = Badge.SILVER - name = _('Notable Question') - nviews = settings.NOTABLE_QUESTION_VIEWS - -class FamousQuestion(QuestionViewBadge): - type = Badge.GOLD - name = _('Famous Question') - nviews = settings.FAMOUS_QUESTION_VIEWS - - -class NodeScoreBadge(AbstractBadge): - abstract = True - listen_to = (VoteAction,) - - def award_to(self, action): - if (action.node.node_type == self.node_type) and (action.node.score == int(self.expected_score)): - return action.node.author - - -class QuestionScoreBadge(NodeScoreBadge): - abstract = True - node_type = "question" - - @property - def description(self): - return _('Question voted up %s times') % str(self.expected_score) - -class NiceQuestion(QuestionScoreBadge): - expected_score = settings.NICE_QUESTION_VOTES_UP - name = _("Nice Question") - -class GoodQuestion(QuestionScoreBadge): - type = Badge.SILVER - expected_score = settings.GOOD_QUESTION_VOTES_UP - name = _("Good Question") - -class GreatQuestion(QuestionScoreBadge): - type = Badge.GOLD - expected_score = settings.GREAT_QUESTION_VOTES_UP - name = _("Great Question") - - -class AnswerScoreBadge(NodeScoreBadge): - abstract = True - node_type = "answer" - - @property - def description(self): - return _('Answer voted up %s times') % str(self.expected_score) - -class NiceAnswer(AnswerScoreBadge): - expected_score = settings.NICE_ANSWER_VOTES_UP - name = _("Nice Answer") - -class GoodAnswer(AnswerScoreBadge): - type = Badge.SILVER - expected_score = settings.GOOD_ANSWER_VOTES_UP - name = _("Good Answer") - -class GreatAnswer(AnswerScoreBadge): - type = Badge.GOLD - expected_score = settings.GREAT_ANSWER_VOTES_UP - name = _("Great Answer") - - -class FavoriteQuestionBadge(AbstractBadge): - abstract = True - listen_to = (FavoriteAction,) - - @property - def description(self): - return _('Question favorited by %s users') % str(self.expected_count) - - def award_to(self, action): - if (action.node.node_type == "question") and (action.node.favorite_count == int(self.expected_count)): - return action.node.author - -class FavoriteQuestion(FavoriteQuestionBadge): - type = Badge.SILVER - name = _("Favorite Question") - expected_count = settings.FAVORITE_QUESTION_FAVS - -class StellarQuestion(FavoriteQuestionBadge): - type = Badge.GOLD - name = _("Stellar Question") - expected_count = settings.STELLAR_QUESTION_FAVS - - -class Disciplined(AbstractBadge): - listen_to = (DeleteAction,) - name = _("Disciplined") - description = _('Deleted own post with score of %s or higher') % settings.DISCIPLINED_MIN_SCORE - - def award_to(self, action): - if (action.node.author == action.user) and (action.node.score >= int(settings.DISCIPLINED_MIN_SCORE)): - return action.user - -class PeerPressure(AbstractBadge): - listen_to = (DeleteAction,) - name = _("Peer Pressure") - description = _('Deleted own post with score of %s or lower') % settings.PEER_PRESSURE_MAX_SCORE - - def award_to(self, action): - if (action.node.author == action.user) and (action.node.score <= int(settings.PEER_PRESSURE_MAX_SCORE)): - return action.user - - -class Critic(AbstractBadge): - award_once = True - listen_to = (VoteDownAction,) - name = _("Critic") - description = _('First down vote') - - def award_to(self, action): - if (action.user.vote_down_count == 1): - return action.user - - -class Supporter(AbstractBadge): - award_once = True - listen_to = (VoteUpAction,) - name = _("Supporter") - description = _('First up vote') - - def award_to(self, action): - if (action.user.vote_up_count == 1): - return action.user - - -class FirstActionBadge(AbstractBadge): - award_once = True - abstract = True - - def award_to(self, action): - if (self.listen_to[0].objects.filter(user=action.user).count() == 1): - return action.user - -class CitizenPatrol(FirstActionBadge): - listen_to = (FlagAction,) - name = _("Citizen Patrol") - description = _('First flagged post') - -class Organizer(FirstActionBadge): - listen_to = (RetagAction,) - name = _("Organizer") - description = _('First retag') - -class Editor(FirstActionBadge): - listen_to = (ReviseAction,) - name = _("Editor") - description = _('First edit') - -class Scholar(FirstActionBadge): - listen_to = (AcceptAnswerAction,) - name = _("Scholar") - description = _('First accepted answer on your own question') - -class Cleanup(FirstActionBadge): - listen_to = (RollbackAction,) - name = _("Cleanup") - description = _('First rollback') - - -class Autobiographer(AbstractBadge): - award_once = True - listen_to = (EditProfileAction,) - name = _("Autobiographer") - description = _('Completed all user profile fields') - - def award_to(self, action): - user = action.user - if user.email and user.real_name and user.website and user.location and \ - user.date_of_birth and user.about: - return user - - -class CivicDuty(AbstractBadge): - type = Badge.SILVER - award_once = True - listen_to = (VoteUpAction, VoteDownAction) - name = _("Civic Duty") - description = _('Voted %s times') % settings.CIVIC_DUTY_VOTES - - def award_to(self, action): - if (action.user.vote_up_count + action.user.vote_down_count) == int(settings.CIVIC_DUTY_VOTES): - return action.user - - -class Pundit(AbstractBadge): - award_once = True - listen_to = (CommentAction,) - name = _("Pundit") - description = _('Left %s comments') % settings.PUNDIT_COMMENT_COUNT - - def award_to(self, action): - if action.user.nodes.filter_state(deleted=False).filter(node_type="comment").count() == int( - settings.PUNDIT_COMMENT_COUNT): - return action.user - - -class SelfLearner(AbstractBadge): - listen_to = (VoteUpAction, ) - name = _("Self Learner") - description = _('Answered your own question with at least %s up votes') % settings.SELF_LEARNER_UP_VOTES - - def award_to(self, action): - if (action.node.node_type == "answer") and (action.node.author == action.node.parent.author) and ( - action.node.score == int(settings.SELF_LEARNER_UP_VOTES)): - return action.node.author - - -class StrunkAndWhite(AbstractBadge): - type = Badge.SILVER - award_once = True - listen_to = (ReviseAction,) - name = _("Strunk & White") - description = _('Edited %s entries') % settings.STRUNK_AND_WHITE_EDITS - - def award_to(self, action): - if (ReviseAction.objects.filter(user=action.user).count() == int(settings.STRUNK_AND_WHITE_EDITS)): - return action.user - - -class Student(AbstractBadge): - award_once = True - listen_to = (VoteUpAction,) - name = _("Student") - description = _('Asked first question with at least one up vote') - - def award_to(self, action): - if (action.node.node_type == "question") and (action.node.author.nodes.filter_state(deleted=False).filter( - node_type="question", score=1).count() == 1): - return action.node.author - - -class Teacher(AbstractBadge): - award_once = True - listen_to = (VoteUpAction,) - name = _("Teacher") - description = _('Answered first question with at least one up vote') - - def award_to(self, action): - if (action.node.node_type == "answer") and (action.node.author.nodes.filter_state(deleted=False).filter( - node_type="answer", score=1).count() == 1): - return action.node.author - - -class Enlightened(AbstractBadge): - type = Badge.SILVER - award_once = True - listen_to = (VoteUpAction, AcceptAnswerAction) - name = _("Enlightened") - description = _('First answer was accepted with at least %s up votes') % settings.ENLIGHTENED_UP_VOTES - - def award_to(self, action): - if (action.node.node_type == "answer") and (action.node.accepted) and ( - action.node.score >= int(settings.ENLIGHTENED_UP_VOTES)): - return action.node.author - - -class Guru(AbstractBadge): - type = Badge.SILVER - listen_to = (VoteUpAction, AcceptAnswerAction) - name = _("Guru") - description = _('Accepted answer and voted up %s times') % settings.GURU_UP_VOTES - - def award_to(self, action): - if (action.node.node_type == "answer") and (action.node.accepted) and ( - action.node.score >= int(settings.GURU_UP_VOTES)): - return action.node.author - - -class Necromancer(AbstractBadge): - type = Badge.SILVER - listen_to = (VoteUpAction,) - name = _("Necromancer") - description = _('Answered a question more than %(dif_days)s days later with at least %(up_votes)s votes') % \ - {'dif_days': settings.NECROMANCER_DIF_DAYS, 'up_votes': settings.NECROMANCER_UP_VOTES} - - def award_to(self, action): - if (action.node.node_type == "answer") and ( - action.node.added_at >= (action.node.question.added_at + timedelta(days=int(settings.NECROMANCER_DIF_DAYS))) - ) and (int(action.node.score) == int(settings.NECROMANCER_UP_VOTES)): - return action.node.author - -class Taxonomist(AbstractBadge): - type = Badge.SILVER - listen_to = tuple() - name = _("Taxonomist") - description = _('Created a tag used by %s questions') % settings.TAXONOMIST_USE_COUNT - - def award_to(self, action): - return None - -class ValidatedEmail(AbstractBadge): - type = Badge.BRONZE - listen_to = (EmailValidationAction,) - name = _("Validated Email") - description = _("User who has validated email associated to the account") - - def award_to(self, action): - return action.user \ No newline at end of file diff --git a/forum_modules/default_badges/.svn/text-base/settings.py.svn-base b/forum_modules/default_badges/.svn/text-base/settings.py.svn-base deleted file mode 100644 index a0f118e13b819c16c700564faf41ab81a13ecb1c..0000000000000000000000000000000000000000 --- a/forum_modules/default_badges/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,136 +0,0 @@ -from forum.settings import BADGES_SET -from forum.settings.base import Setting -from django.utils.translation import ugettext_lazy as _ - -POPULAR_QUESTION_VIEWS = Setting('POPULAR_QUESTION_VIEWS', 1000, BADGES_SET, dict( -label = _("Popular Question views"), -help_text = _(""" -Number of question views required to award a Popular Question badge to the question author -"""))) - -NOTABLE_QUESTION_VIEWS = Setting('NOTABLE_QUESTION_VIEWS', 2500, BADGES_SET, dict( -label = _("Notable Question views"), -help_text = _(""" -Number of question views required to award a Notable Question badge to the question author -"""))) - -FAMOUS_QUESTION_VIEWS = Setting('FAMOUS_QUESTION_VIEWS', 10000, BADGES_SET, dict( -label = _("Famous Question views"), -help_text = _(""" -Number of question views required to award a Famous Question badge to the question author -"""))) - -NICE_ANSWER_VOTES_UP = Setting('NICE_ANSWER_VOTES_UP', 10, BADGES_SET, dict( -label = _("Nice Answer up votes"), -help_text = _(""" -Number of up votes required to award a Nice Answer badge to the answer author -"""))) - -NICE_QUESTION_VOTES_UP = Setting('NICE_QUESTION_VOTES_UP', 10, BADGES_SET, dict( -label = _("Nice Question up votes"), -help_text = _(""" -Number of up votes required to award a Nice Question badge to the question author -"""))) - -GOOD_ANSWER_VOTES_UP = Setting('GOOD_ANSWER_VOTES_UP', 25, BADGES_SET, dict( -label = _("Good Answer up votes"), -help_text = _(""" -Number of up votes required to award a Good Answer badge to the answer author -"""))) - -GOOD_QUESTION_VOTES_UP = Setting('GOOD_QUESTION_VOTES_UP', 25, BADGES_SET, dict( -label = _("Good Question up votes"), -help_text = _(""" -Number of up votes required to award a Good Question badge to the question author -"""))) - -GREAT_ANSWER_VOTES_UP = Setting('GREAT_ANSWER_VOTES_UP', 100, BADGES_SET, dict( -label = _("Great Answer up votes"), -help_text = _(""" -Number of up votes required to award a Great Answer badge to the answer author -"""))) - -GREAT_QUESTION_VOTES_UP = Setting('GREAT_QUESTION_VOTES_UP', 100, BADGES_SET, dict( -label = _("Great Question up votes"), -help_text = _(""" -Number of up votes required to award a Great Question badge to the question author -"""))) - -FAVORITE_QUESTION_FAVS = Setting('FAVORITE_QUESTION_FAVS', 25, BADGES_SET, dict( -label = _("Favorite Question favorite count"), -help_text = _(""" -How many times a question needs to be favorited by other users to award a Favorite Question badge to the question author -"""))) - -STELLAR_QUESTION_FAVS = Setting('STELLAR_QUESTION_FAVS', 100, BADGES_SET, dict( -label = _("Stellar Question favorite count"), -help_text = _(""" -How many times a question needs to be favorited by other users to award a Stellar Question badge to the question author -"""))) - -DISCIPLINED_MIN_SCORE = Setting('DISCIPLINED_MIN_SCORE', 3, BADGES_SET, dict( -label = _("Disciplined minimum score"), -help_text = _(""" -Minimum score a question needs to have to award the Disciplined badge to an author of a question who deletes it. -"""))) - -PEER_PRESSURE_MAX_SCORE = Setting('PEER_PRESSURE_MAX_SCORE', -3, BADGES_SET, dict( -label = _("Peer Pressure maximum score"), -help_text = _(""" -Maximum score a question needs to have to award the Peer Pressure badge to an author of a question who deletes it. -"""))) - -CIVIC_DUTY_VOTES = Setting('CIVIC_DUTY_VOTES', 300, BADGES_SET, dict( -label = _("Civic Duty votes"), -help_text = _(""" -Number of votes an user needs to cast to be awarded the Civic Duty badge. -"""))) - -PUNDIT_COMMENT_COUNT = Setting('PUNDIT_COMMENT_COUNT', 10, BADGES_SET, dict( -label = _("Pundit number of comments"), -help_text = _(""" -Number of comments an user needs to post to be awarded the Pundit badge. -"""))) - -SELF_LEARNER_UP_VOTES = Setting('SELF_LEARNER_UP_VOTES', 3, BADGES_SET, dict( -label = _("Self Learner up votes"), -help_text = _(""" -Number of up votes an answer from the question author needs to have for the author to be awarded the Self Learner badge. -"""))) - -STRUNK_AND_WHITE_EDITS = Setting('STRUNK_AND_WHITE_EDITS', 100, BADGES_SET, dict( -label = _("Strunk and White updates"), -help_text = _(""" -Number of question or answer updates an user needs to make to be awarded the Strunk & White badge. -"""))) - -ENLIGHTENED_UP_VOTES = Setting('ENLIGHTENED_UP_VOTES', 10, BADGES_SET, dict( -label = _("Enlightened up votes"), -help_text = _(""" -Number of up votes an accepted answer needs to have for the author to be awarded the Enlightened badge. -"""))) - -GURU_UP_VOTES = Setting('GURU_UP_VOTES', 40, BADGES_SET, dict( -label = _("Guru up votes"), -help_text = _(""" -Number of up votes an accepted answer needs to have for the author to be awarded the Guru badge. -"""))) - -NECROMANCER_UP_VOTES = Setting('NECROMANCER_UP_VOTES', 5, BADGES_SET, dict( -label = _("Necromancer up votes"), -help_text = _(""" -Number of up votes an answer needs to have for the author to be awarded the Necromancer badge. -"""))) - -NECROMANCER_DIF_DAYS = Setting('NECROMANCER_DIF_DAYS', 60, BADGES_SET, dict( -label = _("Necromancer difference in days"), -help_text = _(""" -Difference in days betwen the posted date of a question and an answer for the answer author to be awarded the Necromancer badge. -"""))) - -TAXONOMIST_USE_COUNT = Setting('TAXONOMIST_USE_COUNT', 50, BADGES_SET, dict( -label = _("Taxonomist usage count"), -help_text = _(""" -How many usages a tag needs to have for the tag creator to be awarded the Taxonomist badge. -"""))) - diff --git a/forum_modules/exporter/.svn/all-wcprops b/forum_modules/exporter/.svn/all-wcprops deleted file mode 100644 index 04976c0cd71ad23429c8739c23b853d7426cedc5..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/all-wcprops +++ /dev/null @@ -1,71 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1252/osqa/trunk/forum_modules/exporter -END -orm.py -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/orm.py -END -views.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/views.py -END -mappings.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/mappings.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/__init__.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/settings.py -END -commands.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/commands.py -END -importer.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/importer.py -END -startup.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/startup.py -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 64 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/urls.py -END -forms.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/exporter/forms.py -END -exporter.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1252/osqa/trunk/forum_modules/exporter/exporter.py -END diff --git a/forum_modules/exporter/.svn/entries b/forum_modules/exporter/.svn/entries deleted file mode 100644 index 837cc975d799daffb14d67acddc3ca45a29ec691..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/entries +++ /dev/null @@ -1,411 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/exporter -http://svn.osqa.net/svnroot - - - -2012-04-18T13:49:12.520070Z -1252 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -orm.py -file - - - - -2012-06-22T20:34:38.238650Z -bbc01d1051633f6edb3316027431dfdd -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -22142 - -views.py -file - - - - -2012-06-22T20:34:38.238650Z -aae030a6e74ec592202ec421bf1da1cd -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3490 - -mappings.py -file - - - - -2012-06-22T20:34:38.238650Z -626bf0e4c1281c1b7e65cff87b5dbc03 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -853 - -__init__.py -file - - - - -2012-06-22T20:34:38.238650Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -settings.py -file - - - - -2012-06-22T20:34:38.242648Z -819322574f8def4967df63482ef8e75a -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -532 - -backups -dir - -commands.py -file - - - - -2012-06-22T20:34:38.246646Z -949440d8c8f3e1bb1d05035df4006e7f -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -5127 - -importer.py -file - - - - -2012-06-22T20:34:38.246646Z -1f80dde9d50e4b14baa423090fd49835 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -21191 - -startup.py -file - - - - -2012-06-22T20:34:38.246646Z -c1e773520046c8d012e4f67405c61580 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -28 - -urls.py -file - - - - -2012-06-22T20:34:38.270634Z -fa29df4cbbcac9db4fe93b6fef491873 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -529 - -forms.py -file - - - - -2012-06-22T20:34:38.270634Z -cd756330a3a7a468e7fe72089779519e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -855 - -templates -dir - -exporter.py -file - - - - -2012-06-22T20:34:38.230654Z -1f7da6da0cc5597e53214815ba74fd0c -2012-04-18T13:49:12.520070Z -1252 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -18462 - -tmp -dir - diff --git a/forum_modules/exporter/.svn/prop-base/__init__.py.svn-base b/forum_modules/exporter/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/commands.py.svn-base b/forum_modules/exporter/.svn/prop-base/commands.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/commands.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/exporter.py.svn-base b/forum_modules/exporter/.svn/prop-base/exporter.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/exporter.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/forms.py.svn-base b/forum_modules/exporter/.svn/prop-base/forms.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/forms.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/importer.py.svn-base b/forum_modules/exporter/.svn/prop-base/importer.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/importer.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/mappings.py.svn-base b/forum_modules/exporter/.svn/prop-base/mappings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/mappings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/orm.py.svn-base b/forum_modules/exporter/.svn/prop-base/orm.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/orm.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/settings.py.svn-base b/forum_modules/exporter/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/startup.py.svn-base b/forum_modules/exporter/.svn/prop-base/startup.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/startup.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/urls.py.svn-base b/forum_modules/exporter/.svn/prop-base/urls.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/urls.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/prop-base/views.py.svn-base b/forum_modules/exporter/.svn/prop-base/views.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/prop-base/views.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/exporter/.svn/text-base/__init__.py.svn-base b/forum_modules/exporter/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/exporter/.svn/text-base/commands.py.svn-base b/forum_modules/exporter/.svn/text-base/commands.py.svn-base deleted file mode 100644 index b7950fe0612cfcfea5ffd8299d4945f018b634b2..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/commands.py.svn-base +++ /dev/null @@ -1,77 +0,0 @@ -PG_SEQUENCE_RESETS = """ -SELECT setval('"auth_user_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "auth_user"; -SELECT setval('"auth_user_groups_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "auth_user_groups"; -SELECT setval('"auth_user_user_permissions_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "auth_user_user_permissions"; -SELECT setval('"forum_keyvalue_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_keyvalue"; -SELECT setval('"forum_action_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_action"; -SELECT setval('"forum_actionrepute_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_actionrepute"; -SELECT setval('"forum_subscriptionsettings_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_subscriptionsettings"; -SELECT setval('"forum_validationhash_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_validationhash"; -SELECT setval('"forum_authkeyuserassociation_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_authkeyuserassociation"; -SELECT setval('"forum_tag_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_tag"; -SELECT setval('"forum_markedtag_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_markedtag"; -SELECT setval('"forum_node_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_node"; -SELECT setval('"forum_nodestate_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_nodestate"; -SELECT setval('"forum_node_tags_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_node_tags"; -SELECT setval('"forum_noderevision_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_noderevision"; -SELECT setval('"forum_node_tags_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_node_tags"; -SELECT setval('"forum_questionsubscription_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_questionsubscription"; -SELECT setval('"forum_vote_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_vote"; -SELECT setval('"forum_flag_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_flag"; -SELECT setval('"forum_badge_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_badge"; -SELECT setval('"forum_award_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_award"; -SELECT setval('"forum_openidnonce_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_openidnonce"; -SELECT setval('"forum_openidassociation_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_openidassociation"; -""" - -PG_DISABLE_TRIGGERS = """ -ALTER table auth_user DISABLE TRIGGER ALL; -ALTER table auth_user_groups DISABLE TRIGGER ALL; -ALTER table auth_user_user_permissions DISABLE TRIGGER ALL; -ALTER table forum_keyvalue DISABLE TRIGGER ALL; -ALTER table forum_action DISABLE TRIGGER ALL; -ALTER table forum_actionrepute DISABLE TRIGGER ALL; -ALTER table forum_subscriptionsettings DISABLE TRIGGER ALL; -ALTER table forum_validationhash DISABLE TRIGGER ALL; -ALTER table forum_authkeyuserassociation DISABLE TRIGGER ALL; -ALTER table forum_tag DISABLE TRIGGER ALL; -ALTER table forum_markedtag DISABLE TRIGGER ALL; -ALTER table forum_node DISABLE TRIGGER ALL; -ALTER table forum_nodestate DISABLE TRIGGER ALL; -ALTER table forum_node_tags DISABLE TRIGGER ALL; -ALTER table forum_noderevision DISABLE TRIGGER ALL; -ALTER table forum_node_tags DISABLE TRIGGER ALL; -ALTER table forum_questionsubscription DISABLE TRIGGER ALL; -ALTER table forum_vote DISABLE TRIGGER ALL; -ALTER table forum_flag DISABLE TRIGGER ALL; -ALTER table forum_badge DISABLE TRIGGER ALL; -ALTER table forum_award DISABLE TRIGGER ALL; -ALTER table forum_openidnonce DISABLE TRIGGER ALL; -ALTER table forum_openidassociation DISABLE TRIGGER ALL; -""" - -PG_ENABLE_TRIGGERS = """ -ALTER table auth_user ENABLE TRIGGER ALL; -ALTER table auth_user_groups ENABLE TRIGGER ALL; -ALTER table auth_user_user_permissions ENABLE TRIGGER ALL; -ALTER table forum_keyvalue ENABLE TRIGGER ALL; -ALTER table forum_action ENABLE TRIGGER ALL; -ALTER table forum_actionrepute ENABLE TRIGGER ALL; -ALTER table forum_subscriptionsettings ENABLE TRIGGER ALL; -ALTER table forum_validationhash ENABLE TRIGGER ALL; -ALTER table forum_authkeyuserassociation ENABLE TRIGGER ALL; -ALTER table forum_tag ENABLE TRIGGER ALL; -ALTER table forum_markedtag ENABLE TRIGGER ALL; -ALTER table forum_node ENABLE TRIGGER ALL; -ALTER table forum_nodestate ENABLE TRIGGER ALL; -ALTER table forum_node_tags ENABLE TRIGGER ALL; -ALTER table forum_noderevision ENABLE TRIGGER ALL; -ALTER table forum_node_tags ENABLE TRIGGER ALL; -ALTER table forum_questionsubscription ENABLE TRIGGER ALL; -ALTER table forum_vote ENABLE TRIGGER ALL; -ALTER table forum_flag ENABLE TRIGGER ALL; -ALTER table forum_badge ENABLE TRIGGER ALL; -ALTER table forum_award ENABLE TRIGGER ALL; -ALTER table forum_openidnonce ENABLE TRIGGER ALL; -ALTER table forum_openidassociation ENABLE TRIGGER ALL; -""" \ No newline at end of file diff --git a/forum_modules/exporter/.svn/text-base/exporter.py.svn-base b/forum_modules/exporter/.svn/text-base/exporter.py.svn-base deleted file mode 100644 index d652211111f645e9e1c30ef647970650016a1db3..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/exporter.py.svn-base +++ /dev/null @@ -1,552 +0,0 @@ -from __future__ import with_statement - -import os, tarfile, datetime, logging, re, ConfigParser, shutil, zipfile - -from django.core.cache import cache -from django.utils.translation import ugettext as _ -from forum.models import * -from forum.settings import APP_URL -from forum.templatetags.extra_tags import diff_date -import xml.etree.ElementTree -from xml.etree import ElementTree as ET -from xml.etree.ElementTree import Comment, _encode, ProcessingInstruction, QName, _escape_attrib, _escape_cdata, _namespace_map -from forum import settings -from django.conf import settings as djsettings -import settings as selfsettings -import string - -try: - from xml.etree.ElementTree import fixtag -except ImportError: - def fixtag(tag, namespaces): - # given a decorated tag (of the form {uri}tag), return prefixed - # tag and namespace declaration, if any - if isinstance(tag, QName): - tag = tag.text - namespace_uri, tag = string.split(tag[1:], "}", 1) - prefix = namespaces.get(namespace_uri) - if prefix is None: - prefix = _namespace_map.get(namespace_uri) - if prefix is None: - prefix = "ns%d" % len(namespaces) - namespaces[namespace_uri] = prefix - if prefix == "xml": - xmlns = None - else: - xmlns = ("xmlns:%s" % prefix, namespace_uri) - else: - xmlns = None - return "%s:%s" % (prefix, tag), xmlns - -CACHE_KEY = "%s_exporter_state" % APP_URL -EXPORT_STEPS = [] - -TMP_FOLDER = os.path.join(os.path.dirname(__file__), 'tmp') - -DATE_AND_AUTHOR_INF_SECTION = 'DateAndAuthor' -OPTIONS_INF_SECTION = 'Options' -META_INF_SECTION = 'Meta' - -DATETIME_FORMAT = "%Y-%m-%d %H:%M:%S" -DATE_FORMAT = "%Y-%m-%d" - -def Etree_pretty__write(self, file, node, encoding, namespaces, - level=0, identator=" "): - tag = node.tag - if tag is Comment: - file.write(level * identator + "<!-- %s -->" % _escape_cdata(node.text, encoding)) - elif tag is ProcessingInstruction: - file.write("<?%s?>" % _escape_cdata(node.text, encoding)) - else: - items = node.items() - xmlns_items = [] # new namespaces in this scope - try: - if isinstance(tag, QName) or tag[:1] == "{": - tag, xmlns = fixtag(tag, namespaces) - if xmlns: xmlns_items.append(xmlns) - except TypeError: - raise #_raise_serialization_error(tag) - file.write("\n" + level * identator + "<" + _encode(tag, encoding)) - if items or xmlns_items: - items.sort() # lexical order - for k, v in items: - try: - if isinstance(k, QName) or k[:1] == "{": - k, xmlns = fixtag(k, namespaces) - if xmlns: xmlns_items.append(xmlns) - except TypeError: - raise #_raise_serialization_error(k) - try: - if isinstance(v, QName): - v, xmlns = fixtag(v, namespaces) - if xmlns: xmlns_items.append(xmlns) - except TypeError: - raise #_raise_serialization_error(v) - file.write(u" %s=\"%s\"" % (_encode(k, encoding), - _escape_attrib(v, encoding))) - for k, v in xmlns_items: - file.write(u" %s=\"%s\"" % (_encode(k, encoding), - _escape_attrib(v, encoding))) - if node.text or len(node): - file.write(">") - if node.text: - file.write(_escape_cdata(node.text, encoding)) - for n in node: - self._write(file, n, encoding, namespaces, level + 1, identator) - if node.text and len(node.text) < 125: - file.write("</" + _encode(tag, encoding) + ">") - else: - file.write("\n" + level * identator + "</" + _encode(tag, encoding) + ">") - else: - file.write(" />") - for k, v in xmlns_items: - del namespaces[v] - if node.tail: - file.write(_escape_cdata(node.tail.replace("\n", (level * identator )+ "\n"), encoding)) - -def make_date(date, with_time=True): - try: - return date.strftime(with_time and DATETIME_FORMAT or DATE_FORMAT) - except ValueError, e: - return date.replace(year=1900).strftime(with_time and DATETIME_FORMAT or DATE_FORMAT) - - -def ET_Element_add_tag(el, tag_name, content = None, **attrs): - tag = ET.SubElement(el, tag_name) - - if content: - try: - tag.text = unicode(content) - except Exception, e: - #logging.error('error converting unicode characters') - #import traceback - #logging.error(traceback.print_exc()) - - import string - tag.text = unicode("".join([c for c in content if c in string.printable])) - - for k, v in attrs.items(): - tag.set(k, unicode(v)) - - return tag - -GOOD_TAG_NAME = re.compile("^\w+$") - -def make_extra(el, v): - if v is None: - return - - - if isinstance(v, (int, long, str, unicode, float, bool, dict, list, tuple)): - if isinstance(v, tuple): - t = 'list' - else: - t = v.__class__.__name__ - else: - t = 'unknown' - - value = el.add('value', type=t) - - if isinstance(v, (list, tuple)): - for i in v: - item = value.add('item') - make_extra(item, i) - - elif isinstance(v, dict): - for k, i in v.items(): - item = value.add('item', key=k) - make_extra(item, i) - else: - value.text = unicode(v) - -def write_to_file(root, tmp, filename): - tree = ET.ElementTree(root) - tree.write(os.path.join(tmp, filename), encoding='UTF-8') - -def create_targz(tmp, files, start_time, options, user, state, set_state, file_format): - now = datetime.datetime.now() - domain = re.match('[\w-]+\.[\w-]+(\.[\w-]+)*', djsettings.APP_URL) - if domain: - domain = '_'.join(domain.get(0).split('.')) - else: - domain = 'localhost' - - fname = "%s-%s" % (domain, now.strftime('%Y%m%d%H%M')) - if file_format == 'zip': - full_fname = "%s.zip" % fname - else: - full_fname = "%s.tar.gz" % fname - - if file_format == 'zip': - t = zipfile.ZipFile(os.path.join(selfsettings.EXPORTER_BACKUP_STORAGE, full_fname), 'w') - - def add_to_file(f, a): - t.write(f, a) - else: - t = tarfile.open(os.path.join(selfsettings.EXPORTER_BACKUP_STORAGE, full_fname), mode = 'w:gz') - - def add_to_file(f, a): - t.add(f, a) - - state['overall']['status'] = _('Compressing xml files') - set_state() - - for f in files: - add_to_file(os.path.join(tmp, f), "/%s" % f) - - if options.get('uplodaded_files', False): - state['overall']['status'] = _('Importing uploaded files') - set_state() - export_upfiles(t) - - if options.get('import_skins_folder', False): - state['overall']['status'] = _('Importing skins folder') - set_state() - export_skinsfolder(t) - - state['overall']['status'] = _('Writing inf file.') - set_state() - - inf = ConfigParser.SafeConfigParser() - - inf.add_section(DATE_AND_AUTHOR_INF_SECTION) - - inf.set(DATE_AND_AUTHOR_INF_SECTION, 'file-name', full_fname) - inf.set(DATE_AND_AUTHOR_INF_SECTION, 'author', unicode(user.id)) - inf.set(DATE_AND_AUTHOR_INF_SECTION, 'site', djsettings.APP_URL) - inf.set(DATE_AND_AUTHOR_INF_SECTION, 'started', start_time.strftime(DATETIME_FORMAT)) - inf.set(DATE_AND_AUTHOR_INF_SECTION, 'finished', now.strftime(DATETIME_FORMAT)) - - inf.add_section(OPTIONS_INF_SECTION) - inf.set(OPTIONS_INF_SECTION, 'anon-data', str(options.get('anon_data', False))) - inf.set(OPTIONS_INF_SECTION, 'with-upfiles', str(options.get('uplodaded_files', False))) - inf.set(OPTIONS_INF_SECTION, 'with-skins', str(options.get('import_skins_folder', False))) - - inf.add_section(META_INF_SECTION) - - for id, s in state.items(): - inf.set(META_INF_SECTION, id, str(s['count'])) - - with open(os.path.join(tmp, '%s.backup.inf' % fname), 'wb') as inffile: - inf.write(inffile) - - add_to_file(os.path.join(tmp, '%s.backup.inf' % fname), '/backup.inf') - state['overall']['status'] = _('Saving backup file') - set_state() - t.close() - return full_fname - - -def export_upfiles(tf): - folder = str(settings.UPFILES_FOLDER) - - if os.path.exists(folder): - if isinstance(tf, zipfile.ZipFile): - tf.write(folder, arcname='/upfiles') - else: - tf.add(folder, arcname='/upfiles') - - -def export_skinsfolder(tf): - folder = djsettings.TEMPLATE_DIRS[0] - - if os.path.exists(folder): - if isinstance(tf, zipfile.ZipFile): - tf.write(folder, arcname='/skins') - else: - tf.add(folder, arcname='/skins') - - -def export(options, user): - original__write = xml.etree.ElementTree.ElementTree.write - xml.etree.ElementTree.ElementTree._write = Etree_pretty__write - xml.etree.ElementTree._ElementInterface.add = ET_Element_add_tag - - start_time = datetime.datetime.now() - tmp = TMP_FOLDER - anon_data = options.get('anon_data', False) - - steps = [s for s in EXPORT_STEPS if not (anon_data and s['fn'].is_user_data())] - - state = dict([(s['id'], { - 'status': _('Queued'), 'count': s['fn'].count(start_time), 'parsed': 0 - }) for s in steps] + [ - ('overall', { - 'status': _('Starting'), 'count': sum([s['fn'].count(start_time) for s in steps]), 'parsed': 0 - }) - ]) - - full_state = dict(running=True, state=state, time_started="") - - def set_state(): - full_state['time_started'] = diff_date(start_time) - cache.set(CACHE_KEY, full_state) - - set_state() - - def ping_state(name): - state[name]['parsed'] += 1 - state['overall']['parsed'] += 1 - set_state() - - def run(fn, name): - def ping(): - ping_state(name) - - state['overall']['status'] = _('Exporting %s') % s['name'] - state[name]['status'] = _('Exporting') - - root, fname = fn(ping, start_time, anon_data) - - state[name]['status'] = _('Writing temp file') - state['overall']['status'] = _('Writing %s temp file') % s['name'] - - set_state() - - write_to_file(root, tmp, fname) - state[name]['status'] = _('Done') - - set_state() - - return fname - - try: - dump_files = [] - - for s in steps: - dump_files.append(run(s['fn'], s['id'])) - - state['overall']['status'] = _('Compressing files') - set_state() - - fname = create_targz(tmp, dump_files, start_time, options, user, state, set_state, options['file_format']) - full_state['running'] = False - full_state['errors'] = False - state['overall']['status'] = _('Done') - state['overall']['fname'] = fname - - set_state() - except Exception, e: - full_state['running'] = False - full_state['errors'] = "%s: %s" % (e.__class__.__name__, unicode(e)) - set_state() - - import traceback - logging.error("Error executing xml backup: \n %s" % (traceback.format_exc())) - finally: - xml.etree.ElementTree.ElementTree._write = original__write - del xml.etree.ElementTree._ElementInterface.add - - -def exporter_step(queryset, root_tag_name, el_tag_name, name, date_lock=None, user_data=False): - - def decorator(fn): - def qs(lock): - if date_lock: - return queryset.filter(**{"%s__lte" % date_lock: lock}) - return queryset - - def decorated(ping, lock, anon_data): - root = ET.Element(root_tag_name) - - for item in qs(lock).order_by('id').select_related(): - el = root.add(el_tag_name) - fn(item, el, anon_data) - ping() - - return root, "%s.xml" % root_tag_name - - def count(lock): - return qs(lock).count() - - def is_user_data(): - return user_data - - decorated.count = count - decorated.is_user_data = is_user_data - - EXPORT_STEPS.append(dict(id=root_tag_name, name=name, fn=decorated)) - - return decorated - - return decorator - -@exporter_step(Tag.objects.all(), 'tags', 'tag', _('Tags')) -def export_tags(t, el, anon_data): - el.add('name', t.name) - if not anon_data: - el.add('author', t.created_by.id) - el.add('used', t.used_count) - - -@exporter_step(User.objects.all(), 'users', 'user', _('Users'), 'date_joined', True) -def export_users(u, el, anon_data): - el.add('id', u.id) - el.add('username', u.username) - el.add('password', u.password) - el.add('email', u.email, validated=u.email_isvalid and 'true' or 'false') - el.add('reputation', u.reputation) - el.add('badges', bronze=u.bronze, silver=u.silver, gold=u.gold) - el.add('joindate', make_date(u.date_joined)) - el.add('active', u.is_active and 'true' or 'false') - - el.add('realname', u.real_name) - el.add('bio', u.about) - el.add('location', u.location) - el.add('website', u.website) - el.add('birthdate', u.date_of_birth and make_date(u.date_of_birth, with_time=False) or "") - - roles = el.add('roles') - - if u.is_superuser: - roles.add('role', 'superuser') - - if u.is_staff: - roles.add('role', 'moderator') - - auth = el.add('authKeys') - for a in u.auth_keys.all(): - key = auth.add('key') - key.add('provider', a.provider) - key.add('key', a.key) - - try: - ss = u.subscription_settings - - notify = el.add('notifications', enabled=ss.enable_notifications and 'true' or 'false') - - notify.add('notify', **dict([(t, ss.__dict__.get(t, 'n') == 'i' and 'true' or 'false') for t in ['member_joins', 'new_question', 'new_question_watched_tags', 'subscribed_questions']])) - - notify.add('autoSubscribe', **dict([(t, ss.__dict__.get(t, False) and 'true' or 'false') for t in [ - 'all_questions', 'all_questions_watched_tags', 'questions_asked', 'questions_answered', 'questions_commented', 'questions_viewed']])) - - notify.add('notifyOnSubscribed', **dict([(t, ss.__dict__.get("notify_%s" % t, False) and 'true' or 'false') for t in [ - 'answers', 'reply_to_comments', 'comments_own_post', 'comments', 'accepted']])) - - notify.add('digest', ss.send_digest and 'on' or 'off') - except SubscriptionSettings.DoesNotExist: - pass - - watched = el.add('watchedTags') - rejected = el.add('rejectedTags') - - for m in u.tag_selections.all(): - try: - if m.reason == 'good': - watched.add('tag', m.tag.name) - else: - rejected.add('tag', m.tag.name) - except Tag.DoesNotExist: - pass - - - -@exporter_step(Node.objects.all(), 'nodes', 'node', _('Nodes'), 'added_at') -def export_nodes(n, el, anon_data): - el.add('id', n.id) - el.add('type', n.node_type) - - if not anon_data: - el.add('author', n.author.id) - el.add('date', make_date(n.added_at)) - el.add('parent', n.parent and n.parent.id or "") - el.add('absparent', n.abs_parent and n.abs_parent.id or "") - - act = el.add('lastactivity') - act.add('by', n.last_activity_by and n.last_activity_by.id or "") - act.add('at', n.last_activity_at and make_date(n.last_activity_at) or "") - - el.add('title', n.title) - el.add('body', n.body) - - el.add('score', n.score) - - tags = el.add('tags') - - for t in n.tagname_list(): - tags.add('tag', t) - - try: - active = n.active_revision and n.active_revision.revision or n.revisions.order_by('revision')[0].revision - except IndexError: - active = 0 - - revs = el.add('revisions', active=active) - - for r in n.revisions.order_by('revision'): - rev = revs.add('revision') - rev.add('number', r.revision) - rev.add('summary', r.summary) - if not anon_data: - rev.add('author', r.author.id) - rev.add('date', make_date(r.revised_at)) - - rev.add('title', r.title) - rev.add('body', r.body) - rev.add('tags', ", ".join(r.tagname_list())) - - el.add('marked', n.marked and 'true' or 'false') - el.add('wiki', n.nis.wiki and 'true' or 'false') - el.add('extraRef', n.extra_ref and n.extra_ref.id or "") - make_extra(el.add('extraData'), n.extra) - el.add('extraCount', n.extra_count and n.extra_count or "") - - -@exporter_step(Action.objects.all(), 'actions', 'action', _('Actions'), 'action_date') -def export_actions(a, el, anon_data): - el.add('id', a.id) - el.add('type', a.action_type) - el.add('date', make_date(a.action_date)) - - if not anon_data: - el.add('user', a.user.id) - el.add('realUser', a.real_user and a.real_user.id or "") - el.add('ip', a.ip) - el.add('node', a.node and a.node.id or "") - - make_extra(el.add('extraData'), a.extra) - - canceled = el.add('canceled', state=a.canceled and 'true' or 'false') - - if a.canceled: - if not anon_data: - canceled.add('user', a.canceled_by.id) - canceled.add('ip', a.canceled_ip) - - canceled.add('date', make_date(a.canceled_at)) - - if not anon_data: - reputes = el.add('reputes') - - for r in a.reputes.all(): - repute = reputes.add('repute', byCanceled=r.by_canceled and 'true' or 'false') - repute.add('user', r.user.id) - repute.add('value', r.value) - - -#@exporter_step(NodeState.objects.all(), 'states', 'state', _('Node states'), 'action__action_date') -#def export_states(s, el, anon_data): -# el.add('type', s.state_type) -# el.add('node', s.node.id) -# el.add('trigger', s.action.id) - - -#@exporter_step(Badge.objects.all(), 'badges', 'badge', _('Badges'), user_data=True) -#def export_badges(b, el, anon_data): -# el.add('type', ["", 'gold', 'silver', 'bronze'][b.type]) -# el.add('name', b.cls) -# el.add('count', b.awarded_count) - - -@exporter_step(Award.objects.all(), 'awards', 'award', _('Awards'), 'awarded_at', True) -def export_awards(a, el, anon_data): - el.add('badge', a.badge.cls) - el.add('user', a.user.id) - el.add('node', a.node and a.node.id or "") - el.add('trigger', a.trigger and a.trigger.id or "") - el.add('action', a.action.id) - -@exporter_step(KeyValue.objects.all(), 'settings', 'setting', _('Settings')) -def export_settings(s, el, anon_data): - el.add('key', s.key) - make_extra(el.add('value'), s.value) diff --git a/forum_modules/exporter/.svn/text-base/forms.py.svn-base b/forum_modules/exporter/.svn/text-base/forms.py.svn-base deleted file mode 100644 index 275580fd3665af85cacbeb3906964f8c38c626ce..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/forms.py.svn-base +++ /dev/null @@ -1,15 +0,0 @@ -from django import forms -from django.utils.translation import ugettext as _ - -FORMAT_CHOICES = ( -('tgz', _('tar.gz')), -('zip', _('zip')) -) - -class ExporterForm(forms.Form): - file_format = forms.ChoiceField(widget=forms.Select, choices=FORMAT_CHOICES, initial='zip', - label=_('File format'), help_text=_("File format of the compressed backup"), required=True) - anon_data = forms.BooleanField(label=_('Anonymized data'), help_text=_('Don\'t export user data and make all content anonymous'), required=False) - uplodaded_files = forms.BooleanField(label=_('Uploaded files'), help_text=_('Include uploaded files in the backup'), required=False, initial=True) - import_skins_folder = forms.BooleanField(label=_('Skins folder'), help_text=_('Include skins folder in the backup'), required=False, initial=False) - \ No newline at end of file diff --git a/forum_modules/exporter/.svn/text-base/importer.py.svn-base b/forum_modules/exporter/.svn/text-base/importer.py.svn-base deleted file mode 100644 index c6b60ab0e78a7e1e9042eaa6ce7f38c746baf8c1..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/importer.py.svn-base +++ /dev/null @@ -1,667 +0,0 @@ -from __future__ import with_statement - -import os, tarfile, datetime, ConfigParser, logging - -from django.utils.translation import ugettext as _ -from django.core.cache import cache - -from south.db import db - -from xml.sax import make_parser -from xml.sax.handler import ContentHandler, ErrorHandler - -from forum.templatetags.extra_tags import diff_date - -from exporter import TMP_FOLDER, DATETIME_FORMAT, DATE_FORMAT, META_INF_SECTION, CACHE_KEY -from orm import orm -import commands, settings - -NO_DEFAULT = object() - -import string - -class SafeReader(): - def __init__(self, loc): - self.base = open(loc) - - def read(self, *args): - return "".join(c for c in self.base.read(*args) if c in string.printable) - - def readLine(self, *args): - return "".join(c for c in self.base.readLine(*args) if c in string.printable) - - def close(self): - self.base.close() - - -class ContentElement(): - def __init__(self, content): - self._content = content - - def content(self): - return self._content.strip() - - def as_bool(self): - return self.content() == "true" - - def as_date(self, default=NO_DEFAULT): - try: - return datetime.datetime.strptime(self.content(), DATE_FORMAT) - except: - if default == NO_DEFAULT: - return datetime.date.fromtimestamp(0) - else: - return default - - - def as_datetime(self, default=NO_DEFAULT): - try: - return datetime.datetime.strptime(self.content(), DATETIME_FORMAT) - except: - if default == NO_DEFAULT: - return datetime.datetime.fromtimestamp(0) - else: - return default - - def as_int(self, default=0): - try: - return int(self.content()) - except: - return default - - def __str__(self): - return self.content() - - -class RowElement(ContentElement): - def __init__(self, name, attrs, parent=None): - self.name = name.lower() - self.parent = parent - self.attrs = dict([(k.lower(), ContentElement(v)) for k, v in attrs.items()]) - self._content = u'' - self.sub_elements = {} - - if parent: - parent.add(self) - - def add_to_content(self, ch): - self._content += unicode(ch) - - def add(self, sub): - curr = self.sub_elements.get(sub.name, None) - - if not curr: - curr = [] - self.sub_elements[sub.name] = curr - - curr.append(sub) - - def get(self, name, default=None): - return self.sub_elements.get(name.lower(), [default])[-1] - - def get_list(self, name): - return self.sub_elements.get(name.lower(), []) - - def get_listc(self, name): - return [r.content() for r in self.get_list(name)] - - def getc(self, name, default=""): - el = self.get(name, None) - - if el: - return el.content() - else: - return default - - def get_attr(self, name, default=""): - return self.attrs.get(name.lower(), default) - - def as_pickled(self, default=None): - value_el = self.get('value') - - if value_el: - return value_el._as_pickled(default) - else: - return default - - TYPES_MAP = dict([(c.__name__, c) for c in (int, long, str, unicode, float)]) - - def _as_pickled(self, default=None): - type = self.get_attr('type').content() - - try: - if type == 'dict': - return dict([ (item.get_attr('key'), item.as_pickled()) for item in self.get_list('item') ]) - elif type == 'list': - return [item.as_pickled() for item in self.get_list('item')] - elif type == 'bool': - return self.content().lower() == 'true' - elif type in RowElement.TYPES_MAP: - return RowElement.TYPES_MAP[type](self.content()) - else: - return self.content() - except: - return default - - - - -class TableHandler(ContentHandler): - def __init__(self, root_name, row_name, callback, callback_args = [], ping = None): - self.root_name = root_name.lower() - self.row_name = row_name.lower() - self.callback = callback - self.callback_args = callback_args - self.ping = ping - - self._reset() - - def _reset(self): - self.curr_element = None - self.in_tag = None - - def startElement(self, name, attrs): - name = name.lower() - - if name == self.root_name.lower(): - pass - elif name == self.row_name: - self.curr_element = RowElement(name, attrs) - else: - self.curr_element = RowElement(name, attrs, self.curr_element) - - def characters(self, ch): - if self.curr_element: - self.curr_element.add_to_content(ch) - - def endElement(self, name): - name = name.lower() - - if name == self.root_name: - pass - elif name == self.row_name: - self.callback(self.curr_element, *self.callback_args) - if self.ping: - self.ping() - - self._reset() - else: - self.curr_element = self.curr_element.parent - - -class SaxErrorHandler(ErrorHandler): - def error(self, e): - raise e - - def fatalError(self, e): - raise e - - def warning(self, e): - raise e - -def disable_triggers(): - if db.backend_name == "postgres": - db.start_transaction() - db.execute_many(commands.PG_DISABLE_TRIGGERS) - db.commit_transaction() - -def enable_triggers(): - if db.backend_name == "postgres": - db.start_transaction() - db.execute_many(commands.PG_ENABLE_TRIGGERS) - db.commit_transaction() - -def reset_sequences(): - if db.backend_name == "postgres": - db.start_transaction() - db.execute_many(commands.PG_SEQUENCE_RESETS) - db.commit_transaction() - -def reset_fts_indexes(): - pass - -FILE_HANDLERS = [] - -def start_import(fname, tag_merge, user): - - start_time = datetime.datetime.now() - steps = [s for s in FILE_HANDLERS] - - with open(os.path.join(TMP_FOLDER, 'backup.inf'), 'r') as inffile: - inf = ConfigParser.SafeConfigParser() - inf.readfp(inffile) - - state = dict([(s['id'], { - 'status': _('Queued'), 'count': int(inf.get(META_INF_SECTION, s['id'])), 'parsed': 0 - }) for s in steps] + [ - ('overall', { - 'status': _('Starting'), 'count': int(inf.get(META_INF_SECTION, 'overall')), 'parsed': 0 - }) - ]) - - full_state = dict(running=True, state=state, time_started="") - - def set_state(): - full_state['time_started'] = diff_date(start_time) - cache.set(CACHE_KEY, full_state) - - set_state() - - def ping_state(name): - state[name]['parsed'] += 1 - state['overall']['parsed'] += 1 - set_state() - - data = { - 'is_merge': True, - 'tag_merge': tag_merge - } - - def run(fn, name): - def ping(): - ping_state(name) - - state['overall']['status'] = _('Importing %s') % s['name'] - state[name]['status'] = _('Importing') - - - fn(TMP_FOLDER, user, ping, data) - - state[name]['status'] = _('Done') - - set_state() - - return fname - - #dump = tarfile.open(fname, 'r') - #dump.extractall(TMP_FOLDER) - - try: - - disable_triggers() - db.start_transaction() - - for h in FILE_HANDLERS: - run(h['fn'], h['id']) - - db.commit_transaction() - enable_triggers() - - settings.MERGE_MAPPINGS.set_value(dict(merged_nodes=data['nodes_map'], merged_users=data['users_map'])) - - reset_sequences() - except Exception, e: - full_state['running'] = False - full_state['errors'] = "%s: %s" % (e.__class__.__name__, unicode(e)) - set_state() - - import traceback - logging.error("Error executing xml import: \n %s" % (traceback.format_exc())) - -def file_handler(file_name, root_tag, el_tag, name, args_handler=None, pre_callback=None, post_callback=None): - def decorator(fn): - def decorated(location, current_user, ping, data): - if pre_callback: - pre_callback(current_user, data) - - if (args_handler): - args = args_handler(current_user, data) - else: - args = [] - - parser = make_parser() - handler = TableHandler(root_tag, el_tag, fn, args, ping) - parser.setContentHandler(handler) - #parser.setErrorHandler(SaxErrorHandler()) - - parser.parse(SafeReader(os.path.join(location, file_name))) - - if post_callback: - post_callback() - - FILE_HANDLERS.append(dict(id=root_tag, name=name, fn=decorated)) - return decorated - return decorator - -def verify_existence(row): - try: - return orm.User.objects.get(email=row.getc('email')) - except: - for key in row.get('authKeys').get_list('key'): - key = key=key.getc('key') - - if not ("google.com" in key or "yahoo.com" in key): - try: - return orm.AuthKeyUserAssociation.objects.get(key=key).user - except: - pass - - return None - -def user_import_pre_callback(user, data): - data['users_map'] = {} - -@file_handler('users.xml', 'users', 'user', _('Users'), pre_callback=user_import_pre_callback, args_handler=lambda u, d: [u, d['is_merge'], d['users_map']]) -def user_import(row, current_user, is_merge, users_map): - existent = is_merge and verify_existence(row) or None - - roles = row.get('roles').get_listc('role') - valid_email = row.get('email').get_attr('validated').as_bool() - badges = row.get('badges') - - if existent: - user = existent - - user.reputation += row.get('reputation').as_int() - user.gold += badges.get_attr('gold').as_int() - user.silver += badges.get_attr('gold').as_int() - user.bronze += badges.get_attr('gold').as_int() - - else: - username = row.getc('username') - - if is_merge: - username_count = 0 - - while orm.User.objects.filter(username=username).count(): - username_count += 1 - username = "%s %s" % (row.getc('username'), username_count) - - user = orm.User( - id = (not is_merge) and row.getc('id') or None, - username = username, - password = row.getc('password'), - email = row.getc('email'), - email_isvalid= valid_email, - is_superuser = (not is_merge) and 'superuser' in roles, - is_staff = ('moderator' in roles) or (is_merge and 'superuser' in roles), - is_active = row.get('active').as_bool(), - date_joined = row.get('joindate').as_datetime(), - about = row.getc('bio'), - date_of_birth = row.get('birthdate').as_date(None), - website = row.getc('website'), - reputation = row.get('reputation').as_int(), - gold = badges.get_attr('gold').as_int(), - silver = badges.get_attr('silver').as_int(), - bronze = badges.get_attr('bronze').as_int(), - real_name = row.getc('realname'), - location = row.getc('location'), - ) - - user.save() - - users_map[row.get('id').as_int()] = user.id - - authKeys = row.get('authKeys') - - for key in authKeys.get_list('key'): - if (not is_merge) or orm.AuthKeyUserAssociation.objects.filter(key=key.getc('key')).count() == 0: - orm.AuthKeyUserAssociation(user=user, key=key.getc('key'), provider=key.getc('provider')).save() - - if not existent: - notifications = row.get('notifications') - - attributes = dict([(str(k), v.as_bool() and 'i' or 'n') for k, v in notifications.get('notify').attrs.items()]) - attributes.update(dict([(str(k), v.as_bool()) for k, v in notifications.get('autoSubscribe').attrs.items()])) - attributes.update(dict([(str("notify_%s" % k), v.as_bool()) for k, v in notifications.get('notifyOnSubscribed').attrs.items()])) - - ss = orm.SubscriptionSettings(user=user, enable_notifications=notifications.get_attr('enabled').as_bool(), **attributes) - - if current_user.id == row.get('id').as_int(): - ss.id = current_user.subscription_settings.id - - ss.save() - - -def pre_tag_import(user, data): - data['tag_mappings'] = dict([ (t.name, t) for t in orm.Tag.objects.all() ]) - - -@file_handler('tags.xml', 'tags', 'tag', _('Tags'), pre_callback=pre_tag_import, args_handler=lambda u, d: [d['is_merge'], d['tag_merge'], d['users_map'], d['tag_mappings']]) -def tag_import(row, is_merge, tag_merge, users_map, tag_mappings): - created_by = row.get('used').as_int() - created_by = users_map.get(created_by, created_by) - - tag_name = row.getc('name') - tag_name = tag_merge and tag_merge.get(tag_name, tag_name) or tag_name - - if is_merge and tag_name in tag_mappings: - tag = tag_mappings[tag_name] - tag.used_count += row.get('used').as_int() - else: - tag = orm.Tag(name=tag_name, used_count=row.get('used').as_int(), created_by_id=created_by) - tag_mappings[tag.name] = tag - - tag.save() - -def pre_node_import(user, data): - data['nodes_map'] = {} - -@file_handler('nodes.xml', 'nodes', 'node', _('Nodes'), pre_callback=pre_node_import, - args_handler=lambda u, d: [d['is_merge'], d['tag_merge'], d['tag_mappings'], d['nodes_map'], d['users_map']]) -def node_import(row, is_merge, tag_merge, tags, nodes_map, users_map): - - ntags = [] - - for t in row.get('tags').get_list('tag'): - t = t.content() - ntags.append(tags[tag_merge and tag_merge.get(t, t) or t]) - - author = row.get('author').as_int() - - last_act = row.get('lastactivity') - last_act_user = last_act.get('by').as_int(None) - - parent = row.get('parent').as_int(None) - abs_parent = row.get('absparent').as_int(None) - - node = orm.Node( - id = (not is_merge) and row.getc('id') or None, - node_type = row.getc('type'), - author_id = users_map.get(author, author), - added_at = row.get('date').as_datetime(), - parent_id = nodes_map.get(parent, parent), - abs_parent_id = nodes_map.get(abs_parent, abs_parent), - score = row.get('score').as_int(0), - - last_activity_by_id = last_act_user and users_map.get(last_act_user, last_act_user) or last_act_user, - last_activity_at = last_act.get('at').as_datetime(None), - - title = row.getc('title'), - body = row.getc('body'), - tagnames = " ".join([t.name for t in ntags]), - - marked = row.get('marked').as_bool(), - extra_ref_id = row.get('extraRef').as_int(None), - extra_count = row.get('extraCount').as_int(0), - extra = row.get('extraData').as_pickled() - ) - - node.save() - - nodes_map[row.get('id').as_int()] = node.id - - node.tags = ntags - - revisions = row.get('revisions') - active = revisions.get_attr('active').as_int() - - if active == 0: - active = orm.NodeRevision( - author_id = node.author_id, - body = row.getc('body'), - node = node, - revised_at = row.get('date').as_datetime(), - revision = 1, - summary = _('Initial revision'), - tagnames = " ".join([t.name for t in ntags]), - title = row.getc('title'), - ) - - active.save() - else: - for r in revisions.get_list('revision'): - author = row.get('author').as_int() - - rev = orm.NodeRevision( - author_id = users_map.get(author, author), - body = r.getc('body'), - node = node, - revised_at = r.get('date').as_datetime(), - revision = r.get('number').as_int(), - summary = r.getc('summary'), - tagnames = " ".join(r.getc('tags').split(',')), - title = r.getc('title'), - ) - - rev.save() - if rev.revision == active: - active = rev - - node.active_revision = active - node.save() - -POST_ACTION = {} - -def post_action(*types): - def decorator(fn): - for t in types: - POST_ACTION[t] = fn - return fn - return decorator - -def pre_action_import_callback(user, data): - data['actions_map'] = {} - -def post_action_import_callback(): - with_state = orm.Node.objects.filter(id__in=orm.NodeState.objects.values_list('node_id', flat=True).distinct()) - - for n in with_state: - n.state_string = "".join(["(%s)" % s for s in n.states.values_list('state_type')]) - n.save() - -@file_handler('actions.xml', 'actions', 'action', _('Actions'), post_callback=post_action_import_callback, - pre_callback=pre_action_import_callback, args_handler=lambda u, d: [d['nodes_map'], d['users_map'], d['actions_map']]) -def actions_import(row, nodes, users, actions_map): - node = row.get('node').as_int(None) - user = row.get('user').as_int() - real_user = row.get('realUser').as_int(None) - - action = orm.Action( - #id = row.get('id').as_int(), - action_type = row.getc('type'), - action_date = row.get('date').as_datetime(), - node_id = nodes.get(node, node), - user_id = users.get(user, user), - real_user_id = users.get(real_user, real_user), - ip = row.getc('ip'), - extra = row.get('extraData').as_pickled(), - ) - - canceled = row.get('canceled') - if canceled.get_attr('state').as_bool(): - by = canceled.get('user').as_int() - action.canceled = True - action.canceled_by_id = users.get(by, by) - action.canceled_at = canceled.getc('date') #.as_datetime(), - action.canceled_ip = canceled.getc('ip') - - action.save() - - actions_map[row.get('id').as_int()] = action.id - - for r in row.get('reputes').get_list('repute'): - by_canceled = r.get_attr('byCanceled').as_bool() - - orm.ActionRepute( - action = action, - user_id = users[r.get('user').as_int()], - value = r.get('value').as_int(), - - date = by_canceled and action.canceled_at or action.action_date, - by_canceled = by_canceled - ).save() - - if (not action.canceled) and (action.action_type in POST_ACTION): - POST_ACTION[action.action_type](row, action, users, nodes, actions_map) - - - - -# Record of all persisted votes. -persisted_votes = [] -@post_action('voteup', 'votedown', 'voteupcomment') -def vote_action(row, action, users, nodes, actions): - # Check to see if the vote has already been registered. - if not (action.user_id, action.node_id) in persisted_votes: - # Persist the vote action. - orm.Vote(user_id=action.user_id, node_id=action.node_id, action=action, - voted_at=action.action_date, value=(action.action_type != 'votedown') and 1 or -1).save() - - # Record the vote action. This will help us avoid duplicates. - persisted_votes.append((action.user_id, action.node_id)) - - -def state_action(state): - def fn(row, action, users, nodes, actions): - if orm.NodeState.objects.filter(state_type = state, node = action.node_id).count(): - return - - orm.NodeState( - state_type = state, - node_id = action.node_id, - action = action - ).save() - return fn - -post_action('wikify')(state_action('wiki')) -post_action('delete')(state_action('deleted')) -post_action('acceptanswer')(state_action('accepted')) -post_action('publish')(state_action('published')) - - -@post_action('flag') -def flag_action(row, action, users, nodes, actions): - orm.Flag(user_id=action.user_id, node_id=action.node_id, action=action, reason=action.extra or "").save() - - -def award_import_args(user, data): - return [ dict([ (b.cls, b) for b in orm.Badge.objects.all() ]) , data['nodes_map'], data['users_map'], data['actions_map']] - - -@file_handler('awards.xml', 'awards', 'award', _('Awards'), args_handler=award_import_args) -def awards_import(row, badges, nodes, users, actions): - badge_type = badges.get(row.getc('badge'), None) - - if not badge_type: - return - - action = row.get('action').as_int(None) - trigger = row.get('trigger').as_int(None) - node = row.get('node').as_int(None) - user = row.get('user').as_int() - - if orm.Award.objects.filter(badge=badges[row.getc('badge')], user=users.get(user, user), node=nodes.get(node, node)).count(): - return - - award = orm.Award( - user_id = users.get(user, user), - badge = badge_type, - node_id = nodes.get(node, node), - action_id = actions.get(action, action), - trigger_id = actions.get(trigger, trigger) - ).save() - - -#@file_handler('settings.xml', 'settings', 'setting', _('Settings')) -def settings_import(row): - orm.KeyValue(key=row.getc('key'), value=row.get('value').as_pickled()) - - - - - - - - - diff --git a/forum_modules/exporter/.svn/text-base/mappings.py.svn-base b/forum_modules/exporter/.svn/text-base/mappings.py.svn-base deleted file mode 100644 index a356dde9d1fa64c47689104ec86081e2d4acd127..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/mappings.py.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -from django.http import HttpResponseRedirect, HttpResponse, Http404, HttpResponsePermanentRedirect -from django.template.defaultfilters import slugify - -from forum.views import readers -from forum.modules import decorate -from forum.models import Question - -import settings, logging - -@decorate(readers.question, needs_origin=True) -def match_question_slug(origin, request, id, slug='', answer=None): - try: - id = int(id) - except: - raise Http404() - - if settings.MERGE_MAPPINGS and (int(id) in settings.MERGE_MAPPINGS.get('merged_nodes', {})): - try: - question = Question.objects.get(id=id) - - if slug != slugify(question.title): - return origin(request, settings.MERGE_MAPPINGS['merged_nodes'][int(id)], slug, answer) - - except: - pass - - return origin(request, id, slug, answer) \ No newline at end of file diff --git a/forum_modules/exporter/.svn/text-base/orm.py.svn-base b/forum_modules/exporter/.svn/text-base/orm.py.svn-base deleted file mode 100644 index 8dbd5b93e274f891438787dacba0c73f83186c35..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/orm.py.svn-base +++ /dev/null @@ -1,265 +0,0 @@ -from south.v2 import DataMigration -from south.orm import FakeORM - -class Migration(DataMigration): - def forwards(self, orm): - pass - - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'forum.action': { - 'Meta': {'object_name': 'Action'}, - 'action_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'action_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'canceled_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'canceled_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'canceled_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'canceled_ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'ip': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'real_user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'proxied_actions'", 'null': 'True', 'to': "orm['forum.User']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'actions'", 'to': "orm['forum.User']"}) - }, - 'forum.actionrepute': { - 'Meta': {'object_name': 'ActionRepute'}, - 'action': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.Action']"}), - 'by_canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reputes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.IntegerField', [], {'default': '0'}) - }, - 'forum.authkeyuserassociation': { - 'Meta': {'object_name': 'AuthKeyUserAssociation'}, - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'provider': ('django.db.models.fields.CharField', [], {'max_length': '64'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'auth_keys'", 'to': "orm['forum.User']"}) - }, - 'forum.award': { - 'Meta': {'unique_together': "(('user', 'badge', 'node'),)", 'object_name': 'Award'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'award'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'to': "orm['forum.Badge']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'trigger': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'awards'", 'null': 'True', 'to': "orm['forum.Action']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.badge': { - 'Meta': {'object_name': 'Badge'}, - 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['forum.Award']", 'to': "orm['forum.User']"}), - 'cls': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'type': ('django.db.models.fields.SmallIntegerField', [], {}) - }, - 'forum.flag': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Flag'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'flag'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'flagged_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.Node']"}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'flags'", 'to': "orm['forum.User']"}) - }, - 'forum.keyvalue': { - 'Meta': {'object_name': 'KeyValue'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.markedtag': { - 'Meta': {'object_name': 'MarkedTag'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['forum.Tag']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['forum.User']"}) - }, - 'forum.node': { - 'Meta': {'object_name': 'Node'}, - 'abs_parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'all_children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'active_revision': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'active'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.NodeRevision']"}), - 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nodes'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'extra': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}), - 'extra_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'extra_ref': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']", 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']", 'null': 'True'}), - 'last_edited': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edited_node'", 'unique': 'True', 'null': 'True', 'to': "orm['forum.Action']"}), - 'marked': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'node_type': ('django.db.models.fields.CharField', [], {'default': "'node'", 'max_length': '16'}), - 'parent': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'children'", 'null': 'True', 'to': "orm['forum.Node']"}), - 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}), - 'state_string': ('django.db.models.fields.TextField', [], {'default': "''"}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'nodes'", 'symmetrical': 'False', 'to': "orm['forum.Tag']"}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.noderevision': { - 'Meta': {'unique_together': "(('node', 'revision'),)", 'object_name': 'NodeRevision'}, - 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'noderevisions'", 'to': "orm['forum.User']"}), - 'body': ('django.db.models.fields.TextField', [], {}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'revisions'", 'to': "orm['forum.Node']"}), - 'revised_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), - 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300'}), - 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}) - }, - 'forum.nodestate': { - 'Meta': {'unique_together': "(('node', 'state_type'),)", 'object_name': 'NodeState'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'node_state'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'states'", 'to': "orm['forum.Node']"}), - 'state_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}) - }, - 'forum.openidassociation': { - 'Meta': {'object_name': 'OpenIdAssociation'}, - 'assoc_type': ('django.db.models.fields.TextField', [], {'max_length': '64'}), - 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'issued': ('django.db.models.fields.IntegerField', [], {}), - 'lifetime': ('django.db.models.fields.IntegerField', [], {}), - 'secret': ('django.db.models.fields.TextField', [], {'max_length': '255'}), - 'server_url': ('django.db.models.fields.TextField', [], {'max_length': '2047'}) - }, - 'forum.openidnonce': { - 'Meta': {'object_name': 'OpenIdNonce'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'salt': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'server_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}), - 'timestamp': ('django.db.models.fields.IntegerField', [], {}) - }, - 'forum.questionsubscription': { - 'Meta': {'object_name': 'QuestionSubscription'}, - 'auto_subscription': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'last_view': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 7, 1, 13, 6, 46, 789996)'}), - 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.subscriptionsettings': { - 'Meta': {'object_name': 'SubscriptionSettings'}, - 'all_questions': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'all_questions_watched_tags': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'enable_notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'member_joins': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), - 'new_question': ('django.db.models.fields.CharField', [], {'default': "'d'", 'max_length': '1'}), - 'new_question_watched_tags': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'notify_accepted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_answers': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'notify_comments_own_post': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'notify_reply_to_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_answered': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_asked': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'questions_commented': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'questions_viewed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'send_digest': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), - 'subscribed_questions': ('django.db.models.fields.CharField', [], {'default': "'i'", 'max_length': '1'}), - 'user': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'subscription_settings'", 'unique': 'True', 'to': "orm['forum.User']"}) - }, - 'forum.tag': { - 'Meta': {'object_name': 'Tag'}, - 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['forum.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'marked_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'marked_tags'", 'symmetrical': 'False', 'through': "orm['forum.MarkedTag']", 'to': "orm['forum.User']"}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) - }, - 'forum.user': { - 'Meta': {'object_name': 'User', '_ormbases': ['auth.User']}, - 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'bronze': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'gold': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), - 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), - 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'silver': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), - 'subscriptions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'subscribers'", 'symmetrical': 'False', 'through': "orm['forum.QuestionSubscription']", 'to': "orm['forum.Node']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}), - 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) - }, - 'forum.userproperty': { - 'Meta': {'unique_together': "(('user', 'key'),)", 'object_name': 'UserProperty'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '16'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['forum.User']"}), - 'value': ('forum.models.utils.PickledObjectField', [], {'null': 'True'}) - }, - 'forum.validationhash': { - 'Meta': {'unique_together': "(('user', 'type'),)", 'object_name': 'ValidationHash'}, - 'expiration': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(2010, 7, 2, 13, 6, 46, 883626)'}), - 'hash_code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'seed': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forum.User']"}) - }, - 'forum.vote': { - 'Meta': {'unique_together': "(('user', 'node'),)", 'object_name': 'Vote'}, - 'action': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'vote'", 'unique': 'True', 'to': "orm['forum.Action']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'node': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.Node']"}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['forum.User']"}), - 'value': ('django.db.models.fields.SmallIntegerField', [], {}), - 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}) - } - } - - complete_apps = ['forum'] - -orm = FakeORM(Migration, "forum") - diff --git a/forum_modules/exporter/.svn/text-base/settings.py.svn-base b/forum_modules/exporter/.svn/text-base/settings.py.svn-base deleted file mode 100644 index a37cd1b84f754712b9f6730aa84b57bc0902975f..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,13 +0,0 @@ -import os - -from django.conf import settings as djsettings -from forum.settings.base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -EXPORTER_SET = SettingSet('exporter', _('Exporter settings'), _("Data export settings"), 800) - -EXPORTER_BACKUP_STORAGE = Setting('EXPORTER_BACKUP_STORAGE', os.path.join(os.path.dirname(__file__), 'backups'), EXPORTER_SET, dict( -label = _("Backups storage"), -help_text = _("A folder to keep your backups organized."))) - -MERGE_MAPPINGS = Setting('MERGE_MAPPINGS', {}) \ No newline at end of file diff --git a/forum_modules/exporter/.svn/text-base/startup.py.svn-base b/forum_modules/exporter/.svn/text-base/startup.py.svn-base deleted file mode 100644 index e1800976bb9f89237e20000bbd3bb535a24308f8..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/startup.py.svn-base +++ /dev/null @@ -1,2 +0,0 @@ -import views -import mappings \ No newline at end of file diff --git a/forum_modules/exporter/.svn/text-base/urls.py.svn-base b/forum_modules/exporter/.svn/text-base/urls.py.svn-base deleted file mode 100644 index e9b35aae691b5776f451a7082e73f327ad903410..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -from django.conf.urls.defaults import * -from django.views.generic.simple import direct_to_template -from django.utils.translation import ugettext as _ - -from views import state, running, download - -urlpatterns = patterns('', - url(r'^%s%s%s$' % (_('admin/'), _('exporter/'), _('state/')), state, name='exporter_state'), - url(r'^%s(?P<mode>\w+)/%s$' % (_('admin/'), _('running/')), running, name='exporter_running'), - url(r'^%s%s%s$' % (_('admin/'), _('exporter/'), _('download/')), download, name='exporter_download'), -) diff --git a/forum_modules/exporter/.svn/text-base/views.py.svn-base b/forum_modules/exporter/.svn/text-base/views.py.svn-base deleted file mode 100644 index edbeedc083ae80e6977e027099dd0cfb17d61f91..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/.svn/text-base/views.py.svn-base +++ /dev/null @@ -1,102 +0,0 @@ -from __future__ import with_statement - -import os, tarfile, ConfigParser, datetime - -from StringIO import StringIO -from django.http import HttpResponse, HttpResponseRedirect, Http404 -from django.utils.translation import ugettext as _ -from django.utils import simplejson -from django.core.cache import cache -from django.core.urlresolvers import reverse -from forum.views.admin import admin_tools_page, admin_page -from forum.models import User -from forms import ExporterForm -from threading import Thread -import settings as selsettings -from forum import settings - -from exporter import export, CACHE_KEY, EXPORT_STEPS, DATE_AND_AUTHOR_INF_SECTION, DATETIME_FORMAT -from importer import start_import - -@admin_tools_page(_('exporter'), _('XML data export')) -def exporter(request): - state = cache.get(CACHE_KEY) - - if state and state['running']: - return HttpResponseRedirect(reverse('exporter_running', kwargs=dict(mode='exporter'))) - - if request.method == 'POST': - form = ExporterForm(request.POST) - - if form.is_valid(): - thread = Thread(target=export, args=[form.cleaned_data, request.user]) - thread.setDaemon(True) - thread.start() - - return HttpResponseRedirect(reverse('exporter_running', kwargs=dict(mode='exporter'))) - else: - form = ExporterForm() - - available = [] - - folder = unicode(selsettings.EXPORTER_BACKUP_STORAGE) - - for f in os.listdir(folder): - if (not os.path.isdir(os.path.join(folder, f))) and f.endswith('.backup.inf'): - try: - with open(os.path.join(folder, f), 'r') as inffile: - inf = ConfigParser.SafeConfigParser() - inf.readfp(inffile) - - if inf.get(DATE_AND_AUTHOR_INF_SECTION, 'site') == settings.APP_URL and os.path.exists( - os.path.join(folder, inf.get(DATE_AND_AUTHOR_INF_SECTION, 'file-name'))): - available.append({ - 'author': User.objects.get(id=inf.get(DATE_AND_AUTHOR_INF_SECTION, 'author')), - 'date': datetime.datetime.strptime(inf.get(DATE_AND_AUTHOR_INF_SECTION, 'finished'), DATETIME_FORMAT) - }) - except Exception, e: - pass - - return ('modules/exporter/exporter.html', { - 'form': form, - 'available': available, - }) - -@admin_page -def running(request, mode): - state = cache.get(CACHE_KEY) - if state is None: - return HttpResponseRedirect(reverse('admin_tools', args=[_('exporter')])) - - return ('modules/exporter/running.html', { - 'mode': mode, - 'steps': EXPORT_STEPS - }) - -def state(request): - return HttpResponse(simplejson.dumps(cache.get(CACHE_KEY)), mimetype="application/json") - -@admin_page -def download(request): - if request.GET and request.GET.get('file', None): - fname = os.path.join(selsettings.EXPORTER_BACKUP_STORAGE, request.GET.get('file')) - else: - raise Http404 - - if not os.path.exists(fname): - raise Http404 - - if fname.endswith('.gz'): - content_type='application/x-gzip' - filename = 'backup.tar.gz' - else: - content_type='application/zip' - filename = 'backup.zip' - - response = HttpResponse(open(fname, 'rb').read(), content_type=content_type) - response['Content-Length'] = os.path.getsize(fname) - response['Content-Disposition'] = 'attachment; filename=%s' % filename - return response - - - diff --git a/forum_modules/exporter/backups/.svn/all-wcprops b/forum_modules/exporter/backups/.svn/all-wcprops deleted file mode 100644 index f1b0b32d240906a2ab38f8132ea91a4c4dd064ae..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/backups/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/605/osqa/trunk/forum_modules/exporter/backups -END -README -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/605/osqa/trunk/forum_modules/exporter/backups/README -END diff --git a/forum_modules/exporter/backups/.svn/entries b/forum_modules/exporter/backups/.svn/entries deleted file mode 100644 index 76d3eb04dcb14fda607dd42d7e1447a0b314a706..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/backups/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/exporter/backups -http://svn.osqa.net/svnroot - - - -2010-10-12T11:10:51.675786Z -605 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -README -file - - - - -2012-06-22T20:34:38.178680Z -ee16e2d4fe7db49f7e3218eb0f594a13 -2010-10-12T11:10:51.675786Z -605 -hernani - - - - - - - - - - - - - - - - - - - - - -64 - diff --git a/forum_modules/exporter/backups/.svn/text-base/README.svn-base b/forum_modules/exporter/backups/.svn/text-base/README.svn-base deleted file mode 100644 index 14baff40cf3c885d28d0cd593fd000e7c9e6123e..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/backups/.svn/text-base/README.svn-base +++ /dev/null @@ -1 +0,0 @@ -you can change the location of this folder using the admin panel \ No newline at end of file diff --git a/forum_modules/exporter/templates/.svn/all-wcprops b/forum_modules/exporter/templates/.svn/all-wcprops deleted file mode 100644 index 74aa1792b9eb9383aaff33275111a5196cecbdaa..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/templates/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1136/osqa/trunk/forum_modules/exporter/templates -END -running.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/1136/osqa/trunk/forum_modules/exporter/templates/running.html -END -importer.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/607/osqa/trunk/forum_modules/exporter/templates/importer.html -END -exporter.html -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/!svn/ver/988/osqa/trunk/forum_modules/exporter/templates/exporter.html -END diff --git a/forum_modules/exporter/templates/.svn/entries b/forum_modules/exporter/templates/.svn/entries deleted file mode 100644 index 8e8461703acd2886ba16e98ab3cad35c39140e6e..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/templates/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/exporter/templates -http://svn.osqa.net/svnroot - - - -2011-07-31T09:47:18.488234Z -1136 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -exporter.html -file - - - - -2012-06-22T20:34:38.222658Z -b0dfa0c9227ddd431859e5ad4f5332b5 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -661 - -running.html -file - - - - -2012-06-22T20:34:38.222658Z -73ac581f52bed2fad9159540f67dc58f -2011-07-31T09:47:18.488234Z -1136 -jordan - - - - - - - - - - - - - - - - - - - - - -5668 - -importer.html -file - - - - -2012-06-22T20:34:38.222658Z -315476124372acc0975c30184053c611 -2010-10-18T12:32:59.386012Z -607 -hernani - - - - - - - - - - - - - - - - - - - - - -242 - diff --git a/forum_modules/exporter/templates/.svn/text-base/exporter.html.svn-base b/forum_modules/exporter/templates/.svn/text-base/exporter.html.svn-base deleted file mode 100644 index d3064805da89c0d0c77d493967dff2beffd741b7..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/templates/.svn/text-base/exporter.html.svn-base +++ /dev/null @@ -1,34 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} - -{% block subtitle %} - {% trans "XML data exporter" %} -{% endblock %} -{% block description %} - {% trans "Export database to XML format" %} -{% endblock %} - -{% block admincontent %} -<p> - <strong>{% trans "Available backups" %}</strong> -</p> -<ul> - {% for b in available %} - <li> - {{ b.date }} by {{ b.author }} - </li> - {% endfor %} -</ul> - -<p> - <strong>{% trans "Start new backup" %}</strong> -</p> -<form method="POST" action=""> - {% csrf_token %} - <table> - {{ form.as_table }} - </table> - <input type="submit" name="start" value="{% trans "Start" %}" /> -</form> -{% endblock %} \ No newline at end of file diff --git a/forum_modules/exporter/templates/.svn/text-base/importer.html.svn-base b/forum_modules/exporter/templates/.svn/text-base/importer.html.svn-base deleted file mode 100644 index d3fd94246c36e7df9060b9732f2eb6e104736150..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/templates/.svn/text-base/importer.html.svn-base +++ /dev/null @@ -1,14 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} - -{% block subtitle %} - {% trans "XML data importer" %} -{% endblock %} -{% block description %} - {% trans "Import data from dump file" %} -{% endblock %} - -{% block admincontent %} - -{% endblock %} \ No newline at end of file diff --git a/forum_modules/exporter/templates/.svn/text-base/running.html.svn-base b/forum_modules/exporter/templates/.svn/text-base/running.html.svn-base deleted file mode 100644 index 4dc90cadee661a15db07c97fac30bed822f31d64..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/templates/.svn/text-base/running.html.svn-base +++ /dev/null @@ -1,165 +0,0 @@ -{% extends basetemplate %} - -{% load i18n %} - -{% block subtitle %} - {% ifequal mode "exporter" %}{% trans "XML data exporter" %}{% else %}{% trans "XML data importer" %}{% endifequal %} -{% endblock %} -{% block description %} - {% ifequal mode "exporter" %}{% trans "Export database to XML format" %}{% else %}{% trans "Restore data from a previous export" %}{% endifequal %} -{% endblock %} - -{% block adminjs %} - <style type="text/css"> - .state_bar { - width:100%; - height: 20px; - border: 1px solid black; - margin-bottom: 15px; - position: relative; - background: #FDF; - } - - .state_label { - margin-left: auto; - margin-right: auto; - z-index: 1000; - position: absolute; - left: 0px; - top: 0px; - width: 100%; - height: 100%; - text-align: center; - } - - .progress { - position: absolute; - left: 0px; - top: 0px; - width: 0%; - height: 100%; - background: #DFF; - z-index: 0; - } - - #download_link { - display: none; - } - </style> - - <script type="text/javascript"> - $(function() { - var exporting = {% ifequal mode "exporter" %}true{% else %}false{% endifequal %}; - - var state = null; - - function set_state(name, data) { - var $bar = $('#state_' + name); - - if (data[name] === undefined) { - $bar.find('.state_label').html('{% trans "Skipped" %}') - } else if (state == null || data[name] != state[name]) { - var width = $bar.width(); - - $bar.find('.state_parsed').html(data[name].parsed); - $bar.find('.state_count').html(data[name].count); - $bar.find('.state_status').html(data[name].status); - - var rel_parse = data[name].parsed / data[name].count; - - $bar.find('.state_percentage').html(parseInt(rel_parse * 100) + '%'); - $bar.find('.progress').css('width', parseInt(rel_parse * width) + 'px') - } - } - - function check_state() { - var done = false; - - function callback(data) { - if (done) { - return; - } - set_state('overall', data.state); - {% for s in steps %} - set_state('{{ s.id }}', data.state); - {% endfor %} - - $('#time_started').html(data.time_started); - - state = data; - - if (data.running) { - check_state(); - } else { - if (data.errors == false) { - if (exporting) { - $('#wait_message').html('{% trans "Your backup is ready to be downloaded."%}'); - $('#download_link_a').attr('href', '{% url exporter_download %}?file=' + data.state.overall.fname) - $('#download_link').slideDown(); - } else { - $('#wait_message').html('{% trans "All data sucessfully imported."%}') - } - } else { - var msg; - if (exporting) { - msg = '{% trans "An error has occurred during the export proccess"%}'; - } else { - msg = '{% trans "An error has occurred during the import proccess"%}'; - } - $('#wait_message').html(msg + ': ' + data.errors + '<br />' + - '{% trans "Please check the log file for a full stack trace." %}') - } - } - - done = true; - } - - window.setTimeout(function() { - if (!done) { - done = true; - check_state(); - } - }, 1000); - - $.getJSON('{% url exporter_state %}', callback); - } - - check_state(); - }); - </script> -{% endblock %} - -{% block admincontent %} - <p id="wait_message"> - {% ifequal mode "exporter" %} - {% trans "Please wait while we prepare your backup file to download." %} - {% else %} - {% trans "Please wait while we import your data." %} - {% endifequal %} - - {% blocktrans %} - Started <span id="time_started"></span> - {% endblocktrans %} - </p> - <p id="download_link"><a id="download_link_a" href="#">{% trans "Download file" %}</a></p> - <table style="width: 100%"> - <tr> - <td colspan="2"> - <div class="state_bar" id="state_overall"> - <div class="state_label"><span class="state_status"></span> ({% trans "Total progress" %}: <span class="state_percentage">0%</span>)</div> - <div class="progress"></div> - </div> - </td> - </tr> - {% for s in steps %} - <tr> - <td>{{ s.name }}:</td> - <td width="100%"> - <div class="state_bar" id="state_{{ s.id }}"> - <div class="state_label"><span class="state_status"></span> - </span><span class="state_parsed">0</span> {% trans " of " %} <span class="state_count">{% trans "unknown" %}</span> (<span class="state_percentage">0%</span>)</div> - <div class="progress"></div> - </div> - </td> - </tr> - {% endfor %} - </table> -{% endblock %} \ No newline at end of file diff --git a/forum_modules/exporter/tmp/.svn/all-wcprops b/forum_modules/exporter/tmp/.svn/all-wcprops deleted file mode 100644 index e6b9c3fb2a16d9817214f435b7018685c43a1909..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/tmp/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 59 -/svnroot/!svn/ver/722/osqa/trunk/forum_modules/exporter/tmp -END -README -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/600/osqa/trunk/forum_modules/exporter/tmp/README -END diff --git a/forum_modules/exporter/tmp/.svn/dir-prop-base b/forum_modules/exporter/tmp/.svn/dir-prop-base deleted file mode 100644 index e824f8cd6ef80e4afff6631ff45f6f9afd1ba5a1..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/tmp/.svn/dir-prop-base +++ /dev/null @@ -1,7 +0,0 @@ -K 10 -svn:ignore -V 12 -*.xml -*.inf - -END diff --git a/forum_modules/exporter/tmp/.svn/entries b/forum_modules/exporter/tmp/.svn/entries deleted file mode 100644 index 9f33a606d594e8f847c8f3b97f35f1f2d6344f07..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/tmp/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/exporter/tmp -http://svn.osqa.net/svnroot - - - -2011-01-31T23:22:59.215540Z -722 -claycarpenter -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -README -file - - - - -2012-06-22T20:34:38.134702Z -f3749b0ee0f3d193e6ffdd656ad9b9b8 -2010-10-07T11:23:54.177957Z -600 -hernani - - - - - - - - - - - - - - - - - - - - - -25 - diff --git a/forum_modules/exporter/tmp/.svn/text-base/README.svn-base b/forum_modules/exporter/tmp/.svn/text-base/README.svn-base deleted file mode 100644 index 98be257ffe044199bdc5aa68529c57bf2b0514d7..0000000000000000000000000000000000000000 --- a/forum_modules/exporter/tmp/.svn/text-base/README.svn-base +++ /dev/null @@ -1 +0,0 @@ -keep this folder writable \ No newline at end of file diff --git a/forum_modules/facebookauth/.svn/all-wcprops b/forum_modules/facebookauth/.svn/all-wcprops deleted file mode 100644 index 8f25b6edd6b077855260a60662663783020805f3..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 60 -/svnroot/!svn/ver/1213/osqa/trunk/forum_modules/facebookauth -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/facebookauth/__init__.py -END -authentication.py -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1213/osqa/trunk/forum_modules/facebookauth/authentication.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1211/osqa/trunk/forum_modules/facebookauth/settings.py -END diff --git a/forum_modules/facebookauth/.svn/entries b/forum_modules/facebookauth/.svn/entries deleted file mode 100644 index 7e47543c8a28f1c15b848e47d423fed456ef08ad..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/.svn/entries +++ /dev/null @@ -1,133 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/facebookauth -http://svn.osqa.net/svnroot - - - -2011-12-16T12:05:31.971301Z -1213 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:37.383077Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -authentication.py -file - - - - -2012-06-22T20:34:37.387075Z -9ffa5a1411cd244680da5a844c399103 -2011-12-16T12:05:31.971301Z -1213 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3127 - -settings.py -file - - - - -2012-06-22T20:34:37.387075Z -c0f0c159fdd2a42ad8670a7b0328194b -2011-12-10T11:21:03.077507Z -1211 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -600 - -templates -dir - diff --git a/forum_modules/facebookauth/.svn/prop-base/__init__.py.svn-base b/forum_modules/facebookauth/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/facebookauth/.svn/prop-base/authentication.py.svn-base b/forum_modules/facebookauth/.svn/prop-base/authentication.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/.svn/prop-base/authentication.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/facebookauth/.svn/prop-base/settings.py.svn-base b/forum_modules/facebookauth/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/facebookauth/.svn/text-base/__init__.py.svn-base b/forum_modules/facebookauth/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/facebookauth/.svn/text-base/authentication.py.svn-base b/forum_modules/facebookauth/.svn/text-base/authentication.py.svn-base deleted file mode 100644 index 8562bad60a2853649239daeb7a5b00a15cd4f40a..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/.svn/text-base/authentication.py.svn-base +++ /dev/null @@ -1,91 +0,0 @@ -# -*- coding: utf-8 -*- - -import cgi -import logging - -from urllib import urlopen, urlencode -from forum.authentication.base import AuthenticationConsumer, ConsumerTemplateContext, InvalidAuthentication - -from django.conf import settings as django_settings -from django.utils.encoding import smart_unicode -from django.utils.translation import ugettext as _ - -import settings - -try: - from json import load as load_json -except Exception: - from django.utils.simplejson import JSONDecoder - - def load_json(json): - decoder = JSONDecoder() - return decoder.decode(json.read()) - -class FacebookAuthConsumer(AuthenticationConsumer): - - def prepare_authentication_request(self, request, redirect_to): - args = dict( - client_id=settings.FB_API_KEY, - redirect_uri="%s%s" % (django_settings.APP_URL, redirect_to), - scope="email" - ) - - facebook_api_authentication_url = "https://graph.facebook.com/oauth/authorize?" + urlencode(args) - - return facebook_api_authentication_url - - def process_authentication_request(self, request): - try: - args = dict(client_id=settings.FB_API_KEY, redirect_uri="%s%s" % (django_settings.APP_URL, request.path)) - - args["client_secret"] = settings.FB_APP_SECRET #facebook APP Secret - - args["code"] = request.GET.get("code", None) - response = cgi.parse_qs(urlopen("https://graph.facebook.com/oauth/access_token?" + urlencode(args)).read()) - access_token = response["access_token"][-1] - - - user_data = self.get_user_data(access_token) - assoc_key = user_data["id"] - - # Store the access token in cookie - request.session["access_token"] = access_token - request.session["assoc_key"] = assoc_key - - # Return the association key - return assoc_key - except Exception, e: - logging.error("Problem during facebook authentication: %s" % e) - raise InvalidAuthentication(_("Something wrond happened during Facebook authentication, administrators will be notified")) - - def get_user_data(self, access_token): - profile = load_json(urlopen("https://graph.facebook.com/me?" + urlencode(dict(access_token=access_token)))) - - name = profile["name"] - - # Check whether the length if the email is greater than 75, if it is -- just replace the email - # with a blank string variable, otherwise we're going to have trouble with the Django model. - email = smart_unicode(profile['email']) - if len(email) > 75: - email = '' - - # If the name is longer than 30 characters - leave it blank - if len(name) > 30: - name = '' - - # Return the user data. - return { - 'id' : profile['id'], - 'username': name, - 'email': email, - } - -class FacebookAuthContext(ConsumerTemplateContext): - mode = 'BIGICON' - type = 'CUSTOM' - weight = 100 - human_name = 'Facebook' - code_template = 'modules/facebookauth/button.html' - extra_css = [] - - API_KEY = settings.FB_API_KEY diff --git a/forum_modules/facebookauth/.svn/text-base/settings.py.svn-base b/forum_modules/facebookauth/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 4127e61c2c4f53dc7a30cb7d7cde12b503d1b066..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,19 +0,0 @@ -# -*- coding: utf-8 -*- - -from forum.settings import EXT_KEYS_SET -from forum.settings.base import Setting - -FB_API_KEY = Setting('FB_API_KEY', '', EXT_KEYS_SET, dict( -label = "Facebook API key", -help_text = """ -Get this key at the <a href="http://www.facebook.com/developers/">Facebook developers network</a> to enable -authentication in your site through facebook. -""", -required=False)) - -FB_APP_SECRET = Setting('FB_APP_SECRET', '', EXT_KEYS_SET, dict( -label = "Facebook APP secret", -help_text = """ -This your facebook app secret that you'll get in the same place as the API key. -""", -required=False)) diff --git a/forum_modules/facebookauth/templates/.svn/all-wcprops b/forum_modules/facebookauth/templates/.svn/all-wcprops deleted file mode 100644 index b039647545b01e87cde23f6c2c57b5c8c029d1ff..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1211/osqa/trunk/forum_modules/facebookauth/templates -END -button.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1211/osqa/trunk/forum_modules/facebookauth/templates/button.html -END diff --git a/forum_modules/facebookauth/templates/.svn/entries b/forum_modules/facebookauth/templates/.svn/entries deleted file mode 100644 index 7a25f452cf81823d2841d5bede531a3d7b9e602f..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/facebookauth/templates -http://svn.osqa.net/svnroot - - - -2011-12-10T11:21:03.077507Z -1211 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -button.html -file - - - - -2012-06-22T20:34:37.383077Z -8afb9ca26f40cbd4685119eeea47cbad -2011-12-10T11:21:03.077507Z -1211 -jordan - - - - - - - - - - - - - - - - - - - - - -192 - diff --git a/forum_modules/facebookauth/templates/.svn/text-base/button.html.svn-base b/forum_modules/facebookauth/templates/.svn/text-base/button.html.svn-base deleted file mode 100644 index 497533d056dfc894c2c42566aef5f05cc873a731..0000000000000000000000000000000000000000 --- a/forum_modules/facebookauth/templates/.svn/text-base/button.html.svn-base +++ /dev/null @@ -1,3 +0,0 @@ -{% load extra_tags %} - -<a style="position: relative; top: -8px;" href="{% url auth_provider_signin provider="facebook" %}"><img src="{% media '/media/images/openid/facebook.gif' %}" /></a> diff --git a/forum_modules/ldapauth/.svn/all-wcprops b/forum_modules/ldapauth/.svn/all-wcprops deleted file mode 100644 index 6223523b7c31907388c522598ad35f54e3554ba2..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 56 -/svnroot/!svn/ver/1241/osqa/trunk/forum_modules/ldapauth -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1241/osqa/trunk/forum_modules/ldapauth/__init__.py -END -authentication.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1241/osqa/trunk/forum_modules/ldapauth/authentication.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1241/osqa/trunk/forum_modules/ldapauth/settings.py -END diff --git a/forum_modules/ldapauth/.svn/entries b/forum_modules/ldapauth/.svn/entries deleted file mode 100644 index f4b2f2c8dd3b585e338582cf268def294bd53f2f..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/.svn/entries +++ /dev/null @@ -1,133 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/ldapauth -http://svn.osqa.net/svnroot - - - -2012-04-02T23:11:47.453459Z -1241 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:37.582977Z -8a4e0fb69266891eabb855b8cfc06403 -2012-04-02T23:11:47.453459Z -1241 -jordan - - - - - - - - - - - - - - - - - - - - - -68 - -authentication.py -file - - - - -2012-06-22T20:34:37.582977Z -159b618462b85cd6d87ed8017065d435 -2012-04-02T23:11:47.453459Z -1241 -jordan - - - - - - - - - - - - - - - - - - - - - -2962 - -settings.py -file - - - - -2012-06-22T20:34:37.582977Z -78160f38d3781d8b60c1c69f5c79050a -2012-04-02T23:11:47.453459Z -1241 -jordan - - - - - - - - - - - - - - - - - - - - - -1875 - -templates -dir - diff --git a/forum_modules/ldapauth/.svn/text-base/__init__.py.svn-base b/forum_modules/ldapauth/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e6591f07c5d414a6939691d0154fdbbf7b93f2af..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -try: - import ldap - CAN_USE = True -except: - CAN_USE = False diff --git a/forum_modules/ldapauth/.svn/text-base/authentication.py.svn-base b/forum_modules/ldapauth/.svn/text-base/authentication.py.svn-base deleted file mode 100644 index 68f366b29bb13066821c4ea4d27721b37d7a2d10..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/.svn/text-base/authentication.py.svn-base +++ /dev/null @@ -1,65 +0,0 @@ -from forum.authentication.base import AuthenticationConsumer, ConsumerTemplateContext, InvalidAuthentication -from forum.models import User -from forum.actions import UserJoinsAction -from django.utils.translation import ugettext as _ -from forum import settings - -class LDAPAuthConsumer(AuthenticationConsumer): - - def process_authentication_request(self, request): - username = request.POST['username'].strip() - password = request.POST['password'] - uid = str(settings.LDAP_USER_MASK) % username - - #an empty password will cause ldap to try an anonymous bind. This is picked up here - if not password: - raise InvalidAuthentication(_('Login failed. Please enter valid username and password (both are case-sensitive)')) - - ldapo = ldap.initialize(str(settings.LDAP_SERVER)) - if(settings.LDAP_USE_TLS): - ldapo.start_tls_s() - ldapo.set_option(ldap.OPT_PROTOCOL_VERSION, 3) - try: - ldapo.simple_bind_s(str(settings.LDAP_BIND_DN), str(settings.LDAP_BIND_SECRET)) - search = ldapo.search_s(str(settings.LDAP_BASE_DN), ldap.SCOPE_SUBTREE, uid) - except ldap.LDAPError: - #could not bind using credentials specified in ldap config - raise InvalidAuthentication(_('Login failed - LDAP bind error. Please contact your system administrator')) - - ldapo.unbind_s() - - if not search: - #could not find user - raise InvalidAuthentication(_('Login failed. Please enter valid username and password (both are case-sensitive)')) - - #now try to bind as selected user; should raise exception if bind fails - ldapo = ldap.initialize(str(settings.LDAP_SERVER)) - if(settings.LDAP_USE_TLS): - ldapo.start_tls_s() - ldapo.set_option(ldap.OPT_PROTOCOL_VERSION, 3) - try: - ldapo.simple_bind_s(search[0][1][str(settings.LDAP_DN)][0],password) - except ldap.LDAPError: - #could not bind as user - password is incorrect - raise InvalidAuthentication(_('Login failed. Please enter valid username and password (both are case-sensitive)')) - ldapo.unbind_s() - - try: - return User.objects.get(username=username) - except User.DoesNotExist: - userinfo = search[0][1] - _user = User( username = userinfo[str(settings.LDAP_UID)][0], - email = userinfo[str(settings.LDAP_MAIL)][0], - real_name = userinfo[str(settings.LDAP_NAME)][0] ) - _user.email_isvalid = True - _user.set_unusable_password() - _user.save() - UserJoinsAction(user=_user, ip=request.META['REMOTE_ADDR']).save() - return _user - -class LDAPAuthContext(ConsumerTemplateContext): - mode = 'STACK_ITEM' - weight = 1000 - human_name = 'LDAP authentication' - stack_item_template = 'modules/ldapauth/loginform.html' - show_to_logged_in_user = False diff --git a/forum_modules/ldapauth/.svn/text-base/settings.py.svn-base b/forum_modules/ldapauth/.svn/text-base/settings.py.svn-base deleted file mode 100644 index f3ce67000d363730f2f0c2e4d47faabdb9e5c160..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,54 +0,0 @@ -from forum.settings.base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -LDAP_SET = SettingSet('ldap', _('LDAP settings'), _("LDAP configuration for OSQA"), 4) - -LDAP_SERVER = Setting('LDAP_SERVER', '', LDAP_SET, dict( -label = _("LDAP Server"), -help_text = _("The hostname of your organization's LDAP server"), -required = False)) - -LDAP_USE_TLS = Setting('LDAP_USE_TLS', False, LDAP_SET, dict( -label = _("Use TLS"), -help_text = _("Check to use TLS"), -required = False)) - -LDAP_BIND_DN = Setting('LDAP_BIND_DN', '', LDAP_SET, dict( -label = _("DN for binding"), -help_text = _("Enter the DN to use to bind to the LDAP server (leave blank for anonymous bind)"), -required = False)) - -LDAP_BIND_SECRET = Setting('LDAP_BIND_SECRET', '', LDAP_SET, dict( -label = _("Password for binding"), -help_text = _("Password for binding DN above"), -required = False)) - -LDAP_BASE_DN = Setting('LDAP_BASE_DN', '', LDAP_SET, dict( -label = _("Base DN"), -help_text = _("The Base DN used to search for users"), -required = False)) - -LDAP_USER_MASK = Setting('LDAP_USER_MASK', 'UID=%s', LDAP_SET, dict( -label = _("User Mask"), -help_text = _("The mask to query for a User"), -required = False)) - -LDAP_UID = Setting('LDAP_UID', 'uid', LDAP_SET, dict( -label = _("uid field"), -help_text = _("ldap field that holds the uid (sAMAccountName in AD)"), -required = False)) - -LDAP_NAME = Setting('LDAP_NAME', 'cn', LDAP_SET, dict( -label = _("Name field"), -help_text = _("ldap field that holds the full name (displayName in AD)"), -required = False)) - -LDAP_DN = Setting('LDAP_DN', 'dn', LDAP_SET, dict( -label = _("DN field"), -help_text = _("ldap field that holds the distinguished name (distinguishedName in AD)"), -required = False)) - -LDAP_MAIL = Setting('LDAP_MAIL', 'mail', LDAP_SET, dict( -label = _("email field"), -help_text = _("ldap field that holds the email"), -required = False)) diff --git a/forum_modules/ldapauth/templates/.svn/all-wcprops b/forum_modules/ldapauth/templates/.svn/all-wcprops deleted file mode 100644 index d35caa131475291a8759e4ee392bccac0701bd9e..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1241/osqa/trunk/forum_modules/ldapauth/templates -END -loginform.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/1241/osqa/trunk/forum_modules/ldapauth/templates/loginform.html -END diff --git a/forum_modules/ldapauth/templates/.svn/entries b/forum_modules/ldapauth/templates/.svn/entries deleted file mode 100644 index d7eba3ca62579957cc17cf4b01c4a440f2bacf51..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/ldapauth/templates -http://svn.osqa.net/svnroot - - - -2012-04-02T23:11:47.453459Z -1241 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -loginform.html -file - - - - -2012-06-22T20:34:37.578979Z -2feb49eedd9dc41c9fa2b3fe122bea71 -2012-04-02T23:11:47.453459Z -1241 -jordan - - - - - - - - - - - - - - - - - - - - - -819 - diff --git a/forum_modules/ldapauth/templates/.svn/text-base/loginform.html.svn-base b/forum_modules/ldapauth/templates/.svn/text-base/loginform.html.svn-base deleted file mode 100644 index a702e63795e7104cc6796b027b53e0165959411e..0000000000000000000000000000000000000000 --- a/forum_modules/ldapauth/templates/.svn/text-base/loginform.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% load i18n %} - -<fieldset id='ldap_login_fs'> - <p><span class='big strong'>{% trans 'Enter your LDAP user name and password' %}</span><br/></p> - <table> - <tr> - <td> - <label for="id_username">{% trans 'Login name' %}</label> - </td> - <td> - <input id="id_username" type="text" class="required login" name="username" maxlength="30" /> - </td> - </tr> - <tr> - <td> - <label for="id_password">{% trans 'Password' %}</label> - </td> - <td> - <input id="id_password" type="password" class="required login" name="password" maxlength="128" /> - </td> - </tr> - <tr> - <td> - <input id="blogin" name="blogin" type="submit" value="{% trans 'Login' %}" /> - </td> - </tr> - </table> -</fieldset> diff --git a/forum_modules/localauth/.svn/all-wcprops b/forum_modules/localauth/.svn/all-wcprops deleted file mode 100644 index 5ba0c272251f3fec3185fdd990d7cae417e5dd5f..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1155/osqa/trunk/forum_modules/localauth -END -views.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/localauth/views.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/localauth/__init__.py -END -authentication.py -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/localauth/authentication.py -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/localauth/urls.py -END -forms.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1155/osqa/trunk/forum_modules/localauth/forms.py -END diff --git a/forum_modules/localauth/.svn/dir-prop-base b/forum_modules/localauth/.svn/dir-prop-base deleted file mode 100644 index 5c6deff4240b13260325dfd4d441700b74e76d69..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/dir-prop-base +++ /dev/null @@ -1,6 +0,0 @@ -K 13 -svn:mergeinfo -V 122 -/osqa/branches/cacheimp/forum_modules/localauth:874-939 -/osqa/branches/notification-config/forum_modules/localauth:693-848 -END diff --git a/forum_modules/localauth/.svn/entries b/forum_modules/localauth/.svn/entries deleted file mode 100644 index 86bd6832d57ec9209d6485fd6882a0761df2374e..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/entries +++ /dev/null @@ -1,201 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/localauth -http://svn.osqa.net/svnroot - - - -2011-08-03T09:16:38.030225Z -1155 -jordan -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -urls.py -file - - - - -2012-06-22T20:34:38.498521Z -114a14b4614f5cb2d0c8f0bc31fb8152 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -311 - -forms.py -file - - - - -2012-06-22T20:34:38.522509Z -dc5a8e3a10d7a9e6d7cdd157b6d14176 -2011-08-03T09:16:38.030225Z -1155 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -3933 - -templates -dir - -views.py -file - - - - -2012-06-22T20:34:38.498521Z -d4f274d4c3c6e73bbeb8ce2c215d9c71 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1239 - -__init__.py -file - - - - -2012-06-22T20:34:38.498521Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -authentication.py -file - - - - -2012-06-22T20:34:38.498521Z -677ee00a2db207138bc1491520a67a9c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -719 - diff --git a/forum_modules/localauth/.svn/prop-base/__init__.py.svn-base b/forum_modules/localauth/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/localauth/.svn/prop-base/authentication.py.svn-base b/forum_modules/localauth/.svn/prop-base/authentication.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/prop-base/authentication.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/localauth/.svn/prop-base/forms.py.svn-base b/forum_modules/localauth/.svn/prop-base/forms.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/prop-base/forms.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/localauth/.svn/prop-base/urls.py.svn-base b/forum_modules/localauth/.svn/prop-base/urls.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/prop-base/urls.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/localauth/.svn/prop-base/views.py.svn-base b/forum_modules/localauth/.svn/prop-base/views.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/prop-base/views.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/localauth/.svn/text-base/__init__.py.svn-base b/forum_modules/localauth/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/localauth/.svn/text-base/authentication.py.svn-base b/forum_modules/localauth/.svn/text-base/authentication.py.svn-base deleted file mode 100644 index 837b7560ff389d7dfa5a20f52631db3f2aadf617..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/text-base/authentication.py.svn-base +++ /dev/null @@ -1,19 +0,0 @@ -from forum.authentication.base import AuthenticationConsumer, ConsumerTemplateContext, InvalidAuthentication -from forms import ClassicLoginForm - -class LocalAuthConsumer(AuthenticationConsumer): - def process_authentication_request(self, request): - form_auth = ClassicLoginForm(request.POST) - - if form_auth.is_valid(): - return form_auth.get_user() - else: - raise InvalidAuthentication(" ".join(form_auth.errors.values()[0])) - -class LocalAuthContext(ConsumerTemplateContext): - mode = 'STACK_ITEM' - weight = 1000 - human_name = 'Local authentication' - stack_item_template = 'modules/localauth/loginform.html' - show_to_logged_in_user = False - diff --git a/forum_modules/localauth/.svn/text-base/forms.py.svn-base b/forum_modules/localauth/.svn/text-base/forms.py.svn-base deleted file mode 100644 index ee6157775ae867d52e3d6889b7aa8f31fa1f7c24..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/text-base/forms.py.svn-base +++ /dev/null @@ -1,106 +0,0 @@ -from forum.forms import NextUrlField, UserNameField, UserEmailField, SetPasswordForm -from forum.models import Question -from forum.modules import call_all_handlers -from django.contrib.contenttypes.models import ContentType -from django.utils.translation import ugettext as _ -from django.contrib.auth import authenticate -from django import forms -import logging - -class ClassicRegisterForm(SetPasswordForm): - """ legacy registration form """ - - next = NextUrlField() - username = UserNameField() - email = UserEmailField() - - def __init__(self, *args, **kwargs): - super(ClassicRegisterForm, self).__init__(*args, **kwargs) - - # Try importing the ReCapthca public and private keys, Import Error will be raised in case it has been disabled - try: - from forum.settings import RECAPTCHA_PUB_KEY, RECAPTCHA_PRIV_KEY - recaptcha_enabled = len(str(RECAPTCHA_PUB_KEY.value)) > 0 and len(str(RECAPTCHA_PRIV_KEY.value)) > 0 - except ImportError: - recaptcha_enabled = False - - if recaptcha_enabled: - spam_fields = call_all_handlers('create_anti_spam_field') - if spam_fields: - spam_fields = dict(spam_fields) - for name, field in spam_fields.items(): - self.fields[name] = field - - self._anti_spam_fields = spam_fields.keys() - else: - self._anti_spam_fields = [] - - def anti_spam_fields(self): - return [self[name] for name in self._anti_spam_fields] - -class ClassicLoginForm(forms.Form): - """ legacy account signin form """ - next = NextUrlField() - username = UserNameField(required=False, skip_clean=True) - password = forms.CharField(max_length=128, - widget=forms.widgets.PasswordInput(attrs={'class':'required login'}), - required=False) - - def __init__(self, data=None, files=None, auto_id='id_%s', - prefix=None, initial=None): - super(ClassicLoginForm, self).__init__(data, files, auto_id, - prefix, initial) - self.user_cache = None - - def _clean_nonempty_field(self, field): - value = None - if field in self.cleaned_data: - value = self.cleaned_data[field].strip() - if value == '': - value = None - self.cleaned_data[field] = value - return value - - def clean_username(self): - return self._clean_nonempty_field('username') - - def clean_password(self): - return self._clean_nonempty_field('password') - - def clean(self): - error_list = [] - username = self.cleaned_data['username'] - password = self.cleaned_data['password'] - - self.user_cache = None - if username and password: - user_ = authenticate(username=username, password=password) - - if user_ is None: - del self.cleaned_data['username'] - del self.cleaned_data['password'] - - error_list.insert(0, (_("Please enter valid username and password " - "(both are case-sensitive)."))) - - if len(error_list) > 0: - error_list.insert(0, _('Login failed.')) - try: - self.user_cache = user_.user - except: - error_list.append(_('This user is not a valid user')) - - elif password == None and username == None: - error_list.append(_('Please enter username and password')) - elif password == None: - error_list.append(_('Please enter your password')) - elif username == None: - error_list.append(_('Please enter user name')) - if len(error_list) > 0: - self._errors['__all__'] = forms.util.ErrorList(error_list) - - return self.cleaned_data - - def get_user(self): - """ get authenticated user """ - return self.user_cache \ No newline at end of file diff --git a/forum_modules/localauth/.svn/text-base/urls.py.svn-base b/forum_modules/localauth/.svn/text-base/urls.py.svn-base deleted file mode 100644 index aeebc40ac537bc066d1a90fd000a06a85b91d97e..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -from django.conf.urls.defaults import * -from django.views.generic.simple import direct_to_template -from django.utils.translation import ugettext as _ -import views as app - -urlpatterns = patterns('', - url(r'^%s%s%s$' % (_('account/'), _('local/'), _('register/')), app.register, name='auth_local_register'), -) \ No newline at end of file diff --git a/forum_modules/localauth/.svn/text-base/views.py.svn-base b/forum_modules/localauth/.svn/text-base/views.py.svn-base deleted file mode 100644 index 2fcee22198794ccaa1a7e14b3e29dd1c75ed2936..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/.svn/text-base/views.py.svn-base +++ /dev/null @@ -1,35 +0,0 @@ -from forum.models import User -from django.shortcuts import render_to_response -from django.template import RequestContext -from django.utils.translation import ugettext as _ - -from forms import ClassicRegisterForm -from forum.views.auth import login_and_forward -from forum.actions import UserJoinsAction - -def register(request): - if request.method == 'POST': - form = ClassicRegisterForm(request.POST) - - if form.is_valid(): - username = form.cleaned_data['username'] - password = form.cleaned_data['password1'] - email = form.cleaned_data['email'] - - user_ = User(username=username, email=email) - user_.set_password(password) - - if User.objects.all().count() == 0: - user_.is_superuser = True - user_.is_staff = True - - user_.save() - UserJoinsAction(user=user_, ip=request.META['REMOTE_ADDR']).save() - - return login_and_forward(request, user_, None, _("A welcome email has been sent to your email address. ")) - else: - form = ClassicRegisterForm(initial={'next':'/'}) - - return render_to_response('auth/complete.html', { - 'form1': form - }, context_instance=RequestContext(request)) diff --git a/forum_modules/localauth/templates/.svn/all-wcprops b/forum_modules/localauth/templates/.svn/all-wcprops deleted file mode 100644 index c36309da745c0de81a00b58189b2bb379fb59acd..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/180/osqa/trunk/forum_modules/localauth/templates -END -loginform.html -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/!svn/ver/180/osqa/trunk/forum_modules/localauth/templates/loginform.html -END diff --git a/forum_modules/localauth/templates/.svn/entries b/forum_modules/localauth/templates/.svn/entries deleted file mode 100644 index 249d880584964626dfa71789b7f4986f521ae7b8..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/localauth/templates -http://svn.osqa.net/svnroot - - - -2010-05-08T19:10:17.892313Z -180 -matt - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -loginform.html -file - - - - -2012-06-22T20:34:38.494523Z -5a375650c6e666e93490c56e079c702a -2010-05-08T19:10:17.892313Z -180 -matt - - - - - - - - - - - - - - - - - - - - - -1155 - diff --git a/forum_modules/localauth/templates/.svn/text-base/loginform.html.svn-base b/forum_modules/localauth/templates/.svn/text-base/loginform.html.svn-base deleted file mode 100644 index e66f3402f13778dbd05e42571ad43a81f96117b3..0000000000000000000000000000000000000000 --- a/forum_modules/localauth/templates/.svn/text-base/loginform.html.svn-base +++ /dev/null @@ -1,31 +0,0 @@ -{% load i18n %} - -<fieldset id='local_login_fs'> - <p><span class='big strong'>{% trans 'Enter your local user name and password' %}</span><br/><span class='grey'>({% trans 'or select your external provider above' %})</span></p> - <table> - <tr> - <td> - <label for="id_username">{% trans 'Login name' %}</label> - </td> - <td> - <input id="id_username" type="text" class="required login" name="username" maxlength="30" /> - </td> - </tr> - <tr> - <td> - <label for="id_password">{% trans 'Password' %}</label> - </td> - <td> - <input id="id_password" type="password" class="required login" name="password" maxlength="128" /> - </td> - </tr> - <tr> - <td> - <input id="blogin" name="blogin" type="submit" value="{% trans 'Login' %}" /> - </td> - <td> - <a href="{% url auth_local_register %}">{% trans 'Create account' %}</a><span> | </span><a href="{% url auth_request_tempsignin %}">{% trans 'Forgot your password?' %}</a> - </td> - </tr> - </table> -</fieldset> diff --git a/forum_modules/mysqlfulltext/.svn/all-wcprops b/forum_modules/mysqlfulltext/.svn/all-wcprops deleted file mode 100644 index 6b3dfcb49a33fec91887c91bdf7a260edfad667c..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/all-wcprops +++ /dev/null @@ -1,41 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 61 -/svnroot/!svn/ver/1079/osqa/trunk/forum_modules/mysqlfulltext -END -models.py -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/mysqlfulltext/models.py -END -fts_update.sql -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/1055/osqa/trunk/forum_modules/mysqlfulltext/fts_update.sql -END -fts_install.sql -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1060/osqa/trunk/forum_modules/mysqlfulltext/fts_install.sql -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1079/osqa/trunk/forum_modules/mysqlfulltext/__init__.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/mysqlfulltext/settings.py -END -startup.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/mysqlfulltext/startup.py -END diff --git a/forum_modules/mysqlfulltext/.svn/entries b/forum_modules/mysqlfulltext/.svn/entries deleted file mode 100644 index 9a42c1d58221ed5301cb4a7a87b6c9449e0ada76..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/entries +++ /dev/null @@ -1,232 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/mysqlfulltext -http://svn.osqa.net/svnroot - - - -2011-06-25T15:13:15.337221Z -1079 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -fts_install.sql -file - - - - -2012-06-22T20:34:37.431053Z -fea086be89f38ccaad3b3a75459460d5 -2011-06-09T19:05:30.762710Z -1060 -hernani - - - - - - - - - - - - - - - - - - - - - -1098 - -__init__.py -file - - - - -2012-06-22T20:34:37.435051Z -8ac87fe70c01b9ac363cc405bae5a218 -2011-06-25T15:13:15.337221Z -1079 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -354 - -settings.py -file - - - - -2012-06-22T20:34:37.435051Z -db9e447987383110a9d7cea62d6c96b4 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -152 - -startup.py -file - - - - -2012-06-22T20:34:37.435051Z -2863dec97005400823359108543d60fb -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1736 - -models.py -file - - - - -2012-06-22T20:34:37.435051Z -9483d770300f957a5429f74068f7646a -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -340 - -fts_update.sql -file - - - - -2012-06-22T20:34:37.439049Z -7b2b0e276c0142955a6b6989434e9129 -2011-06-01T11:24:01.218618Z -1055 -jordan - - - - - - - - - - - - - - - - - - - - - -1163 - diff --git a/forum_modules/mysqlfulltext/.svn/prop-base/__init__.py.svn-base b/forum_modules/mysqlfulltext/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/mysqlfulltext/.svn/prop-base/models.py.svn-base b/forum_modules/mysqlfulltext/.svn/prop-base/models.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/prop-base/models.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/mysqlfulltext/.svn/prop-base/settings.py.svn-base b/forum_modules/mysqlfulltext/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/mysqlfulltext/.svn/prop-base/startup.py.svn-base b/forum_modules/mysqlfulltext/.svn/prop-base/startup.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/prop-base/startup.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/mysqlfulltext/.svn/text-base/__init__.py.svn-base b/forum_modules/mysqlfulltext/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 5591015f8e7a7b4f6662da9e633a92ad65608ae0..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,14 +0,0 @@ -from forum.base import get_database_engine -database_type = get_database_engine() - -NAME = 'Mysql Full Text Search' -DESCRIPTION = "Enables Mysql full text search functionality." - -try: - import MySQLdb - import settings_local - CAN_USE = 'mysql' in database_type -except Exception, e: - import traceback - traceback.print_exc() - CAN_USE = False diff --git a/forum_modules/mysqlfulltext/.svn/text-base/fts_install.sql.svn-base b/forum_modules/mysqlfulltext/.svn/text-base/fts_install.sql.svn-base deleted file mode 100644 index eae65e6528e67b4027eb23ac539c81b64feebe46..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/text-base/fts_install.sql.svn-base +++ /dev/null @@ -1,37 +0,0 @@ -CREATE TABLE forum_mysqlftsindex ( - id int NOT NULL AUTO_INCREMENT, - node_id int NOT NULL UNIQUE, - body longtext NOT NULL, - title varchar(300), - tagnames varchar(255), - PRIMARY KEY (id), - FOREIGN KEY (node_id) REFERENCES forum_node (id) ON UPDATE CASCADE ON DELETE CASCADE, - FULLTEXT (body, title, tagnames), - FULLTEXT(body), - FULLTEXT(title), - FULLTEXT(tagnames) -) ENGINE=`MyISAM`; - -ALTER TABLE forum_mysqlftsindex CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; - -delimiter | - -CREATE TRIGGER fts_on_insert AFTER INSERT ON forum_node - FOR EACH ROW - BEGIN - INSERT INTO forum_mysqlftsindex (node_id, title, body, tagnames) VALUES (NEW.id, UPPER(NEW.title), UPPER(NEW.body), UPPER(NEW.tagnames)); - END; -| - -delimiter | - -CREATE TRIGGER fts_on_update AFTER UPDATE ON forum_node - FOR EACH ROW - BEGIN - UPDATE forum_mysqlftsindex SET title = UPPER(NEW.title), body = UPPER(NEW.body), tagnames = UPPER(NEW.tagnames) WHERE node_id = NEW.id; - END; - -| - -INSERT INTO forum_mysqlftsindex (node_id, title, body, tagnames) SELECT id, UPPER(title), UPPER(body), UPPER(tagnames) FROM forum_node; - diff --git a/forum_modules/mysqlfulltext/.svn/text-base/fts_update.sql.svn-base b/forum_modules/mysqlfulltext/.svn/text-base/fts_update.sql.svn-base deleted file mode 100644 index 2582554e68166028ef7243513889d410cb461999..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/text-base/fts_update.sql.svn-base +++ /dev/null @@ -1,34 +0,0 @@ -DROP TRIGGER `fts_on_insert`; -DROP TRIGGER `fts_on_update`; - -ALTER TABLE forum_mysqlftsindex ADD COLUMN title varchar(300) NOT NULL, ADD COLUMN tagnames varchar(255) NOT NULL; -ALTER TABLE forum_mysqlftsindex ENGINE = MYISAM; -ALTER TABLE forum_mysqlftsindex ADD FULLTEXT `title`(title), ADD FULLTEXT `tagnames`(tagnames); -UPDATE forum_mysqlftsindex ind JOIN forum_node node ON ind.node_id = node.id SET ind.body = UPPER(node.body), ind.title = UPPER(node.title), ind.tagnames = UPPER(node.tagnames); - -delimiter | - -CREATE TRIGGER fts_on_insert AFTER INSERT ON forum_node - FOR EACH ROW - BEGIN - INSERT INTO forum_mysqlftsindex (node_id, title, body, tagnames) VALUES (NEW.id, UPPER(NEW.title), UPPER(NEW.body), UPPER(NEW.tagnames)); - END; -| - -delimiter | - -CREATE TRIGGER fts_on_update AFTER UPDATE ON forum_node - FOR EACH ROW - BEGIN - UPDATE forum_mysqlftsindex SET title = UPPER(NEW.title), body = UPPER(NEW.body), tagnames = UPPER(NEW.tagnames) WHERE node_id = NEW.id; - END; - -| - -delimiter | - -ALTER TABLE forum_mysqlftsindex ADD FULLTEXT(body); -ALTER TABLE forum_mysqlftsindex ADD FULLTEXT(title); -ALTER TABLE forum_mysqlftsindex ADD FULLTEXT(tagnames); - -| \ No newline at end of file diff --git a/forum_modules/mysqlfulltext/.svn/text-base/models.py.svn-base b/forum_modules/mysqlfulltext/.svn/text-base/models.py.svn-base deleted file mode 100644 index 1de3dea49797e27f4b1e80d4df02dd410df7e10a..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/text-base/models.py.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -from django.db import models - -class MysqlFtsIndex(models.Model): - node = models.OneToOneField('Node', related_name='ftsindex') - body = models.TextField() - title = models.CharField(max_length=300) - tagnames = models.CharField(max_length=255) - - class Meta: - managed = False - app_label = 'forum' \ No newline at end of file diff --git a/forum_modules/mysqlfulltext/.svn/text-base/settings.py.svn-base b/forum_modules/mysqlfulltext/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 8f64e3fe6f2a8bdf740f96c1777af4ce446a58b6..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -from forum.settings.base import Setting - -MYSQL_FTS_INSTALLED = Setting('MYSQL_FTS_INSTALLED', False) -MYSQL_FTS_VERSION = Setting('MYSQL_FTS_VERSION', 1) \ No newline at end of file diff --git a/forum_modules/mysqlfulltext/.svn/text-base/startup.py.svn-base b/forum_modules/mysqlfulltext/.svn/text-base/startup.py.svn-base deleted file mode 100644 index 8c2af5fadb488a6e10e70cecce6142fa42e4d532..0000000000000000000000000000000000000000 --- a/forum_modules/mysqlfulltext/.svn/text-base/startup.py.svn-base +++ /dev/null @@ -1,58 +0,0 @@ -from django.db import connection, transaction -import os, settings - -import re -from django.db import connection, transaction, models -from django.db.models import Q -from forum.models.question import Question, QuestionManager -from forum.models.node import Node -from forum.modules import decorate - -VERSION = 4 - -f_name = None - -if not bool(settings.MYSQL_FTS_INSTALLED): - f_name = os.path.join(os.path.dirname(__file__), 'fts_install.sql') -elif int(settings.MYSQL_FTS_VERSION < VERSION): - f_name = os.path.join(os.path.dirname(__file__), 'fts_update.sql') - -if f_name: - f = open(f_name, 'r') - - try: - cursor = connection.cursor() - cursor.execute(f.read()) - transaction.commit_unless_managed() - - settings.MYSQL_FTS_INSTALLED.set_value(True) - settings.MYSQL_FTS_VERSION.set_value(VERSION) - - except Exception, e: - #import sys, traceback - #traceback.print_exc(file=sys.stdout) - pass - finally: - cursor.close() - - f.close() - -word_re = re.compile(r'\w+', re.UNICODE) - -@decorate(QuestionManager.search, needs_origin=False) -def question_search(self, keywords): - keywords = keywords.upper() - - qs = self.filter( - models.Q(ftsindex__body__isnull=False) - ).extra( - select={ - 'ranking': """ - match(forum_mysqlftsindex.tagnames) against (%s) * 2 + - match(forum_mysqlftsindex.title) against (%s) * 4 + - match(forum_mysqlftsindex.body) against (%s) * 1 - """, - }, - select_params=[keywords, keywords, keywords] - ).filter(Q(ftsindex__title__search=keywords) | Q(ftsindex__tagnames__search=keywords) | Q(ftsindex__body__search=keywords)) - return '-ranking', qs diff --git a/forum_modules/oauthauth/.svn/all-wcprops b/forum_modules/oauthauth/.svn/all-wcprops deleted file mode 100644 index b0b648d57a23ac9b325aa05a98c53ec71ff4863e..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth -END -consumer.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/consumer.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/__init__.py -END -authentication.py -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/!svn/ver/1114/osqa/trunk/forum_modules/oauthauth/authentication.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/settings.py -END diff --git a/forum_modules/oauthauth/.svn/entries b/forum_modules/oauthauth/.svn/entries deleted file mode 100644 index ad1714b155caca088207b2b5a549fe7afca201cb..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/entries +++ /dev/null @@ -1,167 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth -http://svn.osqa.net/svnroot - - - -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -consumer.py -file - - - - -2012-06-22T20:34:38.014762Z -bd9507376c38608a88c9ae2f35f24bd7 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -4197 - -lib -dir - -__init__.py -file - - - - -2012-06-22T20:34:38.014762Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -authentication.py -file - - - - -2012-06-22T20:34:38.018760Z -35fc76df29567b6786b921e20a0717e2 -2011-07-12T22:09:28.598497Z -1114 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1220 - -settings.py -file - - - - -2012-06-22T20:34:38.018760Z -75c5a6ce708ae5d9be917d860aaafd55 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -960 - diff --git a/forum_modules/oauthauth/.svn/prop-base/__init__.py.svn-base b/forum_modules/oauthauth/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/.svn/prop-base/authentication.py.svn-base b/forum_modules/oauthauth/.svn/prop-base/authentication.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/prop-base/authentication.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/.svn/prop-base/consumer.py.svn-base b/forum_modules/oauthauth/.svn/prop-base/consumer.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/prop-base/consumer.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/.svn/prop-base/settings.py.svn-base b/forum_modules/oauthauth/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/.svn/text-base/__init__.py.svn-base b/forum_modules/oauthauth/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/oauthauth/.svn/text-base/authentication.py.svn-base b/forum_modules/oauthauth/.svn/text-base/authentication.py.svn-base deleted file mode 100644 index 54a6b4f5adfbb7006fd644b1b5310ae72f6b4710..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/text-base/authentication.py.svn-base +++ /dev/null @@ -1,41 +0,0 @@ -from consumer import OAuthAbstractAuthConsumer -from forum.authentication.base import ConsumerTemplateContext - -try: - import json as simplejson -except ImportError: - from django.utils import simplejson - -from lib import oauth2 -import settings - -class TwitterAuthConsumer(OAuthAbstractAuthConsumer): - def __init__(self): - OAuthAbstractAuthConsumer.__init__(self, - str(settings.TWITTER_CONSUMER_KEY), - str(settings.TWITTER_CONSUMER_SECRET), - "twitter.com", - "https://api.twitter.com/oauth/request_token", - "https://api.twitter.com/oauth/access_token", - "https://api.twitter.com/oauth/authorize", - ) - - def get_user_data(self, key): - json = self.fetch_data(key, "https://twitter.com/account/verify_credentials.json") - - if 'screen_name' in json: - creds = simplejson.loads(json) - - return { - 'username': creds['screen_name'] - } - - - return {} - -class TwitterAuthContext(ConsumerTemplateContext): - mode = 'BIGICON' - type = 'DIRECT' - weight = 150 - human_name = 'Twitter' - icon = '/media/images/openid/twitter.png' \ No newline at end of file diff --git a/forum_modules/oauthauth/.svn/text-base/consumer.py.svn-base b/forum_modules/oauthauth/.svn/text-base/consumer.py.svn-base deleted file mode 100644 index 1d04aa2d9af26d314aea2b536f0dfc17061b24c2..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/text-base/consumer.py.svn-base +++ /dev/null @@ -1,99 +0,0 @@ -import urllib -import urllib2 -import httplib -import time - -from forum.settings import APP_URL -from forum.authentication.base import AuthenticationConsumer, InvalidAuthentication -from django.utils.translation import ugettext as _ -from django.core.urlresolvers import reverse - -from settings import TWITTER_AUTO_CALLBACK_REDIRECT -from lib import oauth2 - -class OAuthAbstractAuthConsumer(AuthenticationConsumer): - - def __init__(self, consumer_key, consumer_secret, server_url, request_token_url, access_token_url, authorization_url): - self.consumer_secret = consumer_secret - self.consumer_key = consumer_key - - self.consumer = oauth2.Consumer(consumer_key, consumer_secret) - self.signature_method = oauth2.SignatureMethod_HMAC_SHA1() - - self.server_url = server_url - self.request_token_url = request_token_url - self.access_token_url = access_token_url - self.authorization_url = authorization_url - - def prepare_authentication_request(self, request, redirect_to): - request_token = self.fetch_request_token() - request.session['unauthed_token'] = request_token.to_string() - return self.authorize_token_url(request_token) - - def process_authentication_request(self, request): - unauthed_token = request.session.get('unauthed_token', None) - if not unauthed_token: - raise InvalidAuthentication(_('Error, the oauth token is not on the server')) - - token = oauth2.Token.from_string(unauthed_token) - - if token.key != request.GET.get('oauth_token', 'no-token'): - raise InvalidAuthentication(_("Something went wrong! Auth tokens do not match")) - - access_token = self.fetch_access_token(token) - - return access_token.to_string() - - def get_user_data(self, key): - #token = oauth.OAuthToken.from_string(access_token) - return {} - - def fetch_request_token(self): - parameters = {} - # If the installation is configured to automatically redirect to the Twitter provider done page -- do it. - if bool(TWITTER_AUTO_CALLBACK_REDIRECT): - callback_url = '%s%s' % (APP_URL, reverse('auth_provider_done', kwargs={ 'provider' : 'twitter', })) - # Pass - parameters.update({ - 'oauth_callback' : callback_url, - }) - - oauth_request = oauth2.Request.from_consumer_and_token(self.consumer, http_url=self.request_token_url, parameters=parameters) - oauth_request.sign_request(self.signature_method, self.consumer, None) - params = oauth_request - data = urllib.urlencode(params) - full_url='%s?%s'%(self.request_token_url, data) - response = urllib2.urlopen(full_url) - return oauth2.Token.from_string(response.read()) - - def authorize_token_url(self, token, callback_url=None): - oauth_request = oauth2.Request.from_token_and_callback(token=token,\ - callback=callback_url, http_url=self.authorization_url) - params = oauth_request - data = urllib.urlencode(params) - full_url='%s?%s'%(self.authorization_url, data) - return full_url - - def fetch_access_token(self, token): - oauth_request = oauth2.Request.from_consumer_and_token(self.consumer, token=token, http_url=self.access_token_url) - oauth_request.sign_request(self.signature_method, self.consumer, token) - params = oauth_request - data = urllib.urlencode(params) - full_url='%s?%s'%(self.access_token_url, data) - response = urllib2.urlopen(full_url) - return oauth2.Token.from_string(response.read()) - - def fetch_data(self, token, http_url, parameters=None): - access_token = oauth2.Token.from_string(token) - oauth_request = oauth2.Request.from_consumer_and_token( - self.consumer, token=access_token, http_method="GET", - http_url=http_url, parameters=parameters, - ) - oauth_request.sign_request(self.signature_method, self.consumer, access_token) - - url = oauth_request.to_url() - connection = httplib.HTTPSConnection(self.server_url) - connection.request("GET", url) - - return connection.getresponse().read() - diff --git a/forum_modules/oauthauth/.svn/text-base/settings.py.svn-base b/forum_modules/oauthauth/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 4977d013712e0df981eb92f6e0acf8dd386c3143..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,25 +0,0 @@ -from forum.settings import EXT_KEYS_SET -from forum.settings.base import Setting -from django.utils.translation import ugettext_lazy as _ - -TWITTER_CONSUMER_KEY = Setting('TWITTER_CONSUMER_KEY', '', EXT_KEYS_SET, dict( -label = _("Twitter consumer key"), -help_text = _(""" -Get this key at the <a href="http://twitter.com/apps/">Twitter apps</a> to enable -authentication in your site through Twitter. -"""), -required=False)) - -TWITTER_CONSUMER_SECRET = Setting('TWITTER_CONSUMER_SECRET', '', EXT_KEYS_SET, dict( -label = _("Twitter consumer secret"), -help_text = _(""" -This your Twitter consumer secret that you'll get in the same place as the consumer key. -"""), -required=False)) - -TWITTER_AUTO_CALLBACK_REDIRECT = Setting('TWITTER_AUTO_CALLBACK_REDIRECT', True, EXT_KEYS_SET, dict( -label = _("Twitter auto-callback redirect"), -help_text = _(""" -Automatically redirect to the Twitter authentication done page, pass the oauth_callback parameter. -"""), -required=False)) diff --git a/forum_modules/oauthauth/lib/.svn/all-wcprops b/forum_modules/oauthauth/lib/.svn/all-wcprops deleted file mode 100644 index 3a4800115a286b524489f2cbcb9bbc897616e6c3..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 61 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/lib/__init__.py -END diff --git a/forum_modules/oauthauth/lib/.svn/entries b/forum_modules/oauthauth/lib/.svn/entries deleted file mode 100644 index 11cca3ac7114401a83589f661f0018eed2cac835..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/.svn/entries +++ /dev/null @@ -1,65 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth/lib -http://svn.osqa.net/svnroot - - - -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -oauth2 -dir - -__init__.py -file - - - - -2012-06-22T20:34:38.006766Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - diff --git a/forum_modules/oauthauth/lib/.svn/prop-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/lib/.svn/text-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/oauthauth/lib/oauth2/.svn/all-wcprops b/forum_modules/oauthauth/lib/oauth2/.svn/all-wcprops deleted file mode 100644 index 57683abf6c2243d9bf91ede0d008d561cc18a765..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2 -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/lib/oauth2/__init__.py -END -_version.py -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/lib/oauth2/_version.py -END diff --git a/forum_modules/oauthauth/lib/oauth2/.svn/entries b/forum_modules/oauthauth/lib/oauth2/.svn/entries deleted file mode 100644 index 6eba13ba8b2407da82ec0dfa88cdff373c069bbe..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/.svn/entries +++ /dev/null @@ -1,102 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth/lib/oauth2 -http://svn.osqa.net/svnroot - - - -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -clients -dir - -__init__.py -file - - - - -2012-06-22T20:34:38.002768Z -c9be0b2e4cd271088b52efa962471b0a -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -29044 - -httplib2 -dir - -_version.py -file - - - - -2012-06-22T20:34:38.002768Z -e7f3ea89d1c26a7f176dc43c360e21df -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -438 - diff --git a/forum_modules/oauthauth/lib/oauth2/.svn/prop-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/oauth2/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/lib/oauth2/.svn/prop-base/_version.py.svn-base b/forum_modules/oauthauth/lib/oauth2/.svn/prop-base/_version.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/.svn/prop-base/_version.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/lib/oauth2/.svn/text-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/oauth2/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 835270e30603b0623e37a5bc8e7bf8d76e96bbb9..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,860 +0,0 @@ -""" -The MIT License - -Copyright (c) 2007-2010 Leah Culver, Joe Stump, Mark Paschal, Vic Fryzel - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -""" - -import base64 -import urllib -import time -import random -import urlparse -import hmac -import binascii -import httplib2 - -try: - from urlparse import parse_qs - parse_qs # placate pyflakes -except ImportError: - # fall back for Python 2.5 - from cgi import parse_qs - -try: - from hashlib import sha1 - sha = sha1 -except ImportError: - # hashlib was added in Python 2.5 - import sha - -import _version - -__version__ = _version.__version__ - -OAUTH_VERSION = '1.0' # Hi Blaine! -HTTP_METHOD = 'GET' -SIGNATURE_METHOD = 'PLAINTEXT' - - -class Error(RuntimeError): - """Generic exception class.""" - - def __init__(self, message='OAuth error occurred.'): - self._message = message - - @property - def message(self): - """A hack to get around the deprecation errors in 2.6.""" - return self._message - - def __str__(self): - return self._message - - -class MissingSignature(Error): - pass - - -def build_authenticate_header(realm=''): - """Optional WWW-Authenticate header (401 error)""" - return {'WWW-Authenticate': 'OAuth realm="%s"' % realm} - - -def build_xoauth_string(url, consumer, token=None): - """Build an XOAUTH string for use in SMTP/IMPA authentication.""" - request = Request.from_consumer_and_token(consumer, token, - "GET", url) - - signing_method = SignatureMethod_HMAC_SHA1() - request.sign_request(signing_method, consumer, token) - - params = [] - for k, v in sorted(request.iteritems()): - if v is not None: - params.append('%s="%s"' % (k, escape(v))) - - return "%s %s %s" % ("GET", url, ','.join(params)) - - -def to_unicode(s): - """ Convert to unicode, raise exception with instructive error - message if s is not unicode, ascii, or utf-8. """ - if not isinstance(s, unicode): - if not isinstance(s, str): - raise TypeError('You are required to pass either unicode or string here, not: %r (%s)' % (type(s), s)) - try: - s = s.decode('utf-8') - except UnicodeDecodeError, le: - raise TypeError('You are required to pass either a unicode object or a utf-8 string here. You passed a Python string object which contained non-utf-8: %r. The UnicodeDecodeError that resulted from attempting to interpret it as utf-8 was: %s' % (s, le,)) - return s - -def to_utf8(s): - return to_unicode(s).encode('utf-8') - -def to_unicode_if_string(s): - if isinstance(s, basestring): - return to_unicode(s) - else: - return s - -def to_utf8_if_string(s): - if isinstance(s, basestring): - return to_utf8(s) - else: - return s - -def to_unicode_optional_iterator(x): - """ - Raise TypeError if x is a str containing non-utf8 bytes or if x is - an iterable which contains such a str. - """ - if isinstance(x, basestring): - return to_unicode(x) - - try: - l = list(x) - except TypeError, e: - assert 'is not iterable' in str(e) - return x - else: - return [ to_unicode(e) for e in l ] - -def to_utf8_optional_iterator(x): - """ - Raise TypeError if x is a str or if x is an iterable which - contains a str. - """ - if isinstance(x, basestring): - return to_utf8(x) - - try: - l = list(x) - except TypeError, e: - assert 'is not iterable' in str(e) - return x - else: - return [ to_utf8_if_string(e) for e in l ] - -def escape(s): - """Escape a URL including any /.""" - return urllib.quote(s.encode('utf-8'), safe='~') - -def generate_timestamp(): - """Get seconds since epoch (UTC).""" - return int(time.time()) - - -def generate_nonce(length=8): - """Generate pseudorandom number.""" - return ''.join([str(random.randint(0, 9)) for i in range(length)]) - - -def generate_verifier(length=8): - """Generate pseudorandom number.""" - return ''.join([str(random.randint(0, 9)) for i in range(length)]) - - -class Consumer(object): - """A consumer of OAuth-protected services. - - The OAuth consumer is a "third-party" service that wants to access - protected resources from an OAuth service provider on behalf of an end - user. It's kind of the OAuth client. - - Usually a consumer must be registered with the service provider by the - developer of the consumer software. As part of that process, the service - provider gives the consumer a *key* and a *secret* with which the consumer - software can identify itself to the service. The consumer will include its - key in each request to identify itself, but will use its secret only when - signing requests, to prove that the request is from that particular - registered consumer. - - Once registered, the consumer can then use its consumer credentials to ask - the service provider for a request token, kicking off the OAuth - authorization process. - """ - - key = None - secret = None - - def __init__(self, key, secret): - self.key = key - self.secret = secret - - if self.key is None or self.secret is None: - raise ValueError("Key and secret must be set.") - - def __str__(self): - data = {'oauth_consumer_key': self.key, - 'oauth_consumer_secret': self.secret} - - return urllib.urlencode(data) - - -class Token(object): - """An OAuth credential used to request authorization or a protected - resource. - - Tokens in OAuth comprise a *key* and a *secret*. The key is included in - requests to identify the token being used, but the secret is used only in - the signature, to prove that the requester is who the server gave the - token to. - - When first negotiating the authorization, the consumer asks for a *request - token* that the live user authorizes with the service provider. The - consumer then exchanges the request token for an *access token* that can - be used to access protected resources. - """ - - key = None - secret = None - callback = None - callback_confirmed = None - verifier = None - - def __init__(self, key, secret): - self.key = key - self.secret = secret - - if self.key is None or self.secret is None: - raise ValueError("Key and secret must be set.") - - def set_callback(self, callback): - self.callback = callback - self.callback_confirmed = 'true' - - def set_verifier(self, verifier=None): - if verifier is not None: - self.verifier = verifier - else: - self.verifier = generate_verifier() - - def get_callback_url(self): - if self.callback and self.verifier: - # Append the oauth_verifier. - parts = urlparse.urlparse(self.callback) - scheme, netloc, path, params, query, fragment = parts[:6] - if query: - query = '%s&oauth_verifier=%s' % (query, self.verifier) - else: - query = 'oauth_verifier=%s' % self.verifier - return urlparse.urlunparse((scheme, netloc, path, params, - query, fragment)) - return self.callback - - def to_string(self): - """Returns this token as a plain string, suitable for storage. - - The resulting string includes the token's secret, so you should never - send or store this string where a third party can read it. - """ - - data = { - 'oauth_token': self.key, - 'oauth_token_secret': self.secret, - } - - if self.callback_confirmed is not None: - data['oauth_callback_confirmed'] = self.callback_confirmed - return urllib.urlencode(data) - - @staticmethod - def from_string(s): - """Deserializes a token from a string like one returned by - `to_string()`.""" - - if not len(s): - raise ValueError("Invalid parameter string.") - - params = parse_qs(s, keep_blank_values=False) - if not len(params): - raise ValueError("Invalid parameter string.") - - try: - key = params['oauth_token'][0] - except Exception: - raise ValueError("'oauth_token' not found in OAuth request.") - - try: - secret = params['oauth_token_secret'][0] - except Exception: - raise ValueError("'oauth_token_secret' not found in " - "OAuth request.") - - token = Token(key, secret) - try: - token.callback_confirmed = params['oauth_callback_confirmed'][0] - except KeyError: - pass # 1.0, no callback confirmed. - return token - - def __str__(self): - return self.to_string() - - -def setter(attr): - name = attr.__name__ - - def getter(self): - try: - return self.__dict__[name] - except KeyError: - raise AttributeError(name) - - def deleter(self): - del self.__dict__[name] - - return property(getter, attr, deleter) - - -class Request(dict): - - """The parameters and information for an HTTP request, suitable for - authorizing with OAuth credentials. - - When a consumer wants to access a service's protected resources, it does - so using a signed HTTP request identifying itself (the consumer) with its - key, and providing an access token authorized by the end user to access - those resources. - - """ - - version = OAUTH_VERSION - - def __init__(self, method=HTTP_METHOD, url=None, parameters=None, - body='', is_form_encoded=False): - if url is not None: - self.url = to_unicode(url) - self.method = method - if parameters is not None: - for k, v in parameters.iteritems(): - k = to_unicode(k) - v = to_unicode_optional_iterator(v) - self[k] = v - self.body = body - self.is_form_encoded = is_form_encoded - - - @setter - def url(self, value): - self.__dict__['url'] = value - if value is not None: - scheme, netloc, path, params, query, fragment = urlparse.urlparse(value) - - # Exclude default port numbers. - if scheme == 'http' and netloc[-3:] == ':80': - netloc = netloc[:-3] - elif scheme == 'https' and netloc[-4:] == ':443': - netloc = netloc[:-4] - if scheme not in ('http', 'https'): - raise ValueError("Unsupported URL %s (%s)." % (value, scheme)) - - # Normalized URL excludes params, query, and fragment. - self.normalized_url = urlparse.urlunparse((scheme, netloc, path, None, None, None)) - else: - self.normalized_url = None - self.__dict__['url'] = None - - @setter - def method(self, value): - self.__dict__['method'] = value.upper() - - def _get_timestamp_nonce(self): - return self['oauth_timestamp'], self['oauth_nonce'] - - def get_nonoauth_parameters(self): - """Get any non-OAuth parameters.""" - return dict([(k, v) for k, v in self.iteritems() - if not k.startswith('oauth_')]) - - def to_header(self, realm=''): - """Serialize as a header for an HTTPAuth request.""" - oauth_params = ((k, v) for k, v in self.items() - if k.startswith('oauth_')) - stringy_params = ((k, escape(str(v))) for k, v in oauth_params) - header_params = ('%s="%s"' % (k, v) for k, v in stringy_params) - params_header = ', '.join(header_params) - - auth_header = 'OAuth realm="%s"' % realm - if params_header: - auth_header = "%s, %s" % (auth_header, params_header) - - return {'Authorization': auth_header} - - def to_postdata(self): - """Serialize as post data for a POST request.""" - d = {} - for k, v in self.iteritems(): - d[k.encode('utf-8')] = to_utf8_optional_iterator(v) - - # tell urlencode to deal with sequence values and map them correctly - # to resulting querystring. for example self["k"] = ["v1", "v2"] will - # result in 'k=v1&k=v2' and not k=%5B%27v1%27%2C+%27v2%27%5D - return urllib.urlencode(d, True).replace('+', '%20') - - def to_url(self): - """Serialize as a URL for a GET request.""" - base_url = urlparse.urlparse(self.url) - try: - query = base_url.query - except AttributeError: - # must be python <2.5 - query = base_url[4] - query = parse_qs(query) - for k, v in self.items(): - query.setdefault(k, []).append(v) - - try: - scheme = base_url.scheme - netloc = base_url.netloc - path = base_url.path - params = base_url.params - fragment = base_url.fragment - except AttributeError: - # must be python <2.5 - scheme = base_url[0] - netloc = base_url[1] - path = base_url[2] - params = base_url[3] - fragment = base_url[5] - - url = (scheme, netloc, path, params, - urllib.urlencode(query, True), fragment) - return urlparse.urlunparse(url) - - def get_parameter(self, parameter): - ret = self.get(parameter) - if ret is None: - raise Error('Parameter not found: %s' % parameter) - - return ret - - def get_normalized_parameters(self): - """Return a string that contains the parameters that must be signed.""" - items = [] - for key, value in self.iteritems(): - if key == 'oauth_signature': - continue - # 1.0a/9.1.1 states that kvp must be sorted by key, then by value, - # so we unpack sequence values into multiple items for sorting. - if isinstance(value, basestring): - items.append((to_utf8_if_string(key), to_utf8(value))) - else: - try: - value = list(value) - except TypeError, e: - assert 'is not iterable' in str(e) - items.append((to_utf8_if_string(key), to_utf8_if_string(value))) - else: - items.extend((to_utf8_if_string(key), to_utf8_if_string(item)) for item in value) - - # Include any query string parameters from the provided URL - query = urlparse.urlparse(self.url)[4] - - url_items = self._split_url_string(query).items() - url_items = [(to_utf8(k), to_utf8(v)) for k, v in url_items if k != 'oauth_signature' ] - items.extend(url_items) - - items.sort() - encoded_str = urllib.urlencode(items) - # Encode signature parameters per Oauth Core 1.0 protocol - # spec draft 7, section 3.6 - # (http://tools.ietf.org/html/draft-hammer-oauth-07#section-3.6) - # Spaces must be encoded with "%20" instead of "+" - return encoded_str.replace('+', '%20').replace('%7E', '~') - - def sign_request(self, signature_method, consumer, token): - """Set the signature parameter to the result of sign.""" - - if not self.is_form_encoded: - # according to - # http://oauth.googlecode.com/svn/spec/ext/body_hash/1.0/oauth-bodyhash.html - # section 4.1.1 "OAuth Consumers MUST NOT include an - # oauth_body_hash parameter on requests with form-encoded - # request bodies." - self['oauth_body_hash'] = base64.b64encode(sha(self.body).digest()) - - if 'oauth_consumer_key' not in self: - self['oauth_consumer_key'] = consumer.key - - if token and 'oauth_token' not in self: - self['oauth_token'] = token.key - - self['oauth_signature_method'] = signature_method.name - self['oauth_signature'] = signature_method.sign(self, consumer, token) - - @classmethod - def make_timestamp(cls): - """Get seconds since epoch (UTC).""" - return str(int(time.time())) - - @classmethod - def make_nonce(cls): - """Generate pseudorandom number.""" - return str(random.randint(0, 100000000)) - - @classmethod - def from_request(cls, http_method, http_url, headers=None, parameters=None, - query_string=None): - """Combines multiple parameter sources.""" - if parameters is None: - parameters = {} - - # Headers - if headers and 'Authorization' in headers: - auth_header = headers['Authorization'] - # Check that the authorization header is OAuth. - if auth_header[:6] == 'OAuth ': - auth_header = auth_header[6:] - try: - # Get the parameters from the header. - header_params = cls._split_header(auth_header) - parameters.update(header_params) - except: - raise Error('Unable to parse OAuth parameters from ' - 'Authorization header.') - - # GET or POST query string. - if query_string: - query_params = cls._split_url_string(query_string) - parameters.update(query_params) - - # URL parameters. - param_str = urlparse.urlparse(http_url)[4] # query - url_params = cls._split_url_string(param_str) - parameters.update(url_params) - - if parameters: - return cls(http_method, http_url, parameters) - - return None - - @classmethod - def from_consumer_and_token(cls, consumer, token=None, - http_method=HTTP_METHOD, http_url=None, parameters=None, - body='', is_form_encoded=False): - if not parameters: - parameters = {} - - defaults = { - 'oauth_consumer_key': consumer.key, - 'oauth_timestamp': cls.make_timestamp(), - 'oauth_nonce': cls.make_nonce(), - 'oauth_version': cls.version, - } - - defaults.update(parameters) - parameters = defaults - - if token: - parameters['oauth_token'] = token.key - if token.verifier: - parameters['oauth_verifier'] = token.verifier - - return Request(http_method, http_url, parameters, body=body, - is_form_encoded=is_form_encoded) - - @classmethod - def from_token_and_callback(cls, token, callback=None, - http_method=HTTP_METHOD, http_url=None, parameters=None): - - if not parameters: - parameters = {} - - parameters['oauth_token'] = token.key - - if callback: - parameters['oauth_callback'] = callback - - return cls(http_method, http_url, parameters) - - @staticmethod - def _split_header(header): - """Turn Authorization: header into parameters.""" - params = {} - parts = header.split(',') - for param in parts: - # Ignore realm parameter. - if param.find('realm') > -1: - continue - # Remove whitespace. - param = param.strip() - # Split key-value. - param_parts = param.split('=', 1) - # Remove quotes and unescape the value. - params[param_parts[0]] = urllib.unquote(param_parts[1].strip('\"')) - return params - - @staticmethod - def _split_url_string(param_str): - """Turn URL string into parameters.""" - parameters = parse_qs(param_str.encode('utf-8'), keep_blank_values=True) - for k, v in parameters.iteritems(): - parameters[k] = urllib.unquote(v[0]) - return parameters - - -class Client(httplib2.Http): - """OAuthClient is a worker to attempt to execute a request.""" - - def __init__(self, consumer, token=None, cache=None, timeout=None, - proxy_info=None): - - if consumer is not None and not isinstance(consumer, Consumer): - raise ValueError("Invalid consumer.") - - if token is not None and not isinstance(token, Token): - raise ValueError("Invalid token.") - - self.consumer = consumer - self.token = token - self.method = SignatureMethod_HMAC_SHA1() - - httplib2.Http.__init__(self, cache=cache, timeout=timeout, proxy_info=proxy_info) - - def set_signature_method(self, method): - if not isinstance(method, SignatureMethod): - raise ValueError("Invalid signature method.") - - self.method = method - - def request(self, uri, method="GET", body='', headers=None, - redirections=httplib2.DEFAULT_MAX_REDIRECTS, connection_type=None): - DEFAULT_POST_CONTENT_TYPE = 'application/x-www-form-urlencoded' - - if not isinstance(headers, dict): - headers = {} - - if method == "POST": - headers['Content-Type'] = headers.get('Content-Type', - DEFAULT_POST_CONTENT_TYPE) - - is_form_encoded = \ - headers.get('Content-Type') == 'application/x-www-form-urlencoded' - - if is_form_encoded and body: - parameters = parse_qs(body) - else: - parameters = None - - req = Request.from_consumer_and_token(self.consumer, - token=self.token, http_method=method, http_url=uri, - parameters=parameters, body=body, is_form_encoded=is_form_encoded) - - req.sign_request(self.method, self.consumer, self.token) - - schema, rest = urllib.splittype(uri) - if rest.startswith('//'): - hierpart = '//' - else: - hierpart = '' - host, rest = urllib.splithost(rest) - - realm = schema + ':' + hierpart + host - - if is_form_encoded: - body = req.to_postdata() - elif method == "GET": - uri = req.to_url() - else: - headers.update(req.to_header(realm=realm)) - - return httplib2.Http.request(self, uri, method=method, body=body, - headers=headers, redirections=redirections, - connection_type=connection_type) - - -class Server(object): - """A skeletal implementation of a service provider, providing protected - resources to requests from authorized consumers. - - This class implements the logic to check requests for authorization. You - can use it with your web server or web framework to protect certain - resources with OAuth. - """ - - timestamp_threshold = 300 # In seconds, five minutes. - version = OAUTH_VERSION - signature_methods = None - - def __init__(self, signature_methods=None): - self.signature_methods = signature_methods or {} - - def add_signature_method(self, signature_method): - self.signature_methods[signature_method.name] = signature_method - return self.signature_methods - - def verify_request(self, request, consumer, token): - """Verifies an api call and checks all the parameters.""" - - self._check_version(request) - self._check_signature(request, consumer, token) - parameters = request.get_nonoauth_parameters() - return parameters - - def build_authenticate_header(self, realm=''): - """Optional support for the authenticate header.""" - return {'WWW-Authenticate': 'OAuth realm="%s"' % realm} - - def _check_version(self, request): - """Verify the correct version of the request for this server.""" - version = self._get_version(request) - if version and version != self.version: - raise Error('OAuth version %s not supported.' % str(version)) - - def _get_version(self, request): - """Return the version of the request for this server.""" - try: - version = request.get_parameter('oauth_version') - except: - version = OAUTH_VERSION - - return version - - def _get_signature_method(self, request): - """Figure out the signature with some defaults.""" - try: - signature_method = request.get_parameter('oauth_signature_method') - except: - signature_method = SIGNATURE_METHOD - - try: - # Get the signature method object. - signature_method = self.signature_methods[signature_method] - except: - signature_method_names = ', '.join(self.signature_methods.keys()) - raise Error('Signature method %s not supported try one of the following: %s' % (signature_method, signature_method_names)) - - return signature_method - - def _get_verifier(self, request): - return request.get_parameter('oauth_verifier') - - def _check_signature(self, request, consumer, token): - timestamp, nonce = request._get_timestamp_nonce() - self._check_timestamp(timestamp) - signature_method = self._get_signature_method(request) - - try: - signature = request.get_parameter('oauth_signature') - except: - raise MissingSignature('Missing oauth_signature.') - - # Validate the signature. - valid = signature_method.check(request, consumer, token, signature) - - if not valid: - key, base = signature_method.signing_base(request, consumer, token) - - raise Error('Invalid signature. Expected signature base ' - 'string: %s' % base) - - def _check_timestamp(self, timestamp): - """Verify that timestamp is recentish.""" - timestamp = int(timestamp) - now = int(time.time()) - lapsed = now - timestamp - if lapsed > self.timestamp_threshold: - raise Error('Expired timestamp: given %d and now %s has a ' - 'greater difference than threshold %d' % (timestamp, now, - self.timestamp_threshold)) - - -class SignatureMethod(object): - """A way of signing requests. - - The OAuth protocol lets consumers and service providers pick a way to sign - requests. This interface shows the methods expected by the other `oauth` - modules for signing requests. Subclass it and implement its methods to - provide a new way to sign requests. - """ - - def signing_base(self, request, consumer, token): - """Calculates the string that needs to be signed. - - This method returns a 2-tuple containing the starting key for the - signing and the message to be signed. The latter may be used in error - messages to help clients debug their software. - - """ - raise NotImplementedError - - def sign(self, request, consumer, token): - """Returns the signature for the given request, based on the consumer - and token also provided. - - You should use your implementation of `signing_base()` to build the - message to sign. Otherwise it may be less useful for debugging. - - """ - raise NotImplementedError - - def check(self, request, consumer, token, signature): - """Returns whether the given signature is the correct signature for - the given consumer and token signing the given request.""" - built = self.sign(request, consumer, token) - return built == signature - - -class SignatureMethod_HMAC_SHA1(SignatureMethod): - name = 'HMAC-SHA1' - - def signing_base(self, request, consumer, token): - if not hasattr(request, 'normalized_url') or request.normalized_url is None: - raise ValueError("Base URL for request is not set.") - - sig = ( - escape(request.method), - escape(request.normalized_url), - escape(request.get_normalized_parameters()), - ) - - key = '%s&' % escape(consumer.secret) - if token: - key += escape(token.secret) - raw = '&'.join(sig) - return key, raw - - def sign(self, request, consumer, token): - """Builds the base signature string.""" - key, raw = self.signing_base(request, consumer, token) - - hashed = hmac.new(key, raw, sha) - - # Calculate the digest base 64. - return binascii.b2a_base64(hashed.digest())[:-1] - - -class SignatureMethod_PLAINTEXT(SignatureMethod): - - name = 'PLAINTEXT' - - def signing_base(self, request, consumer, token): - """Concatenates the consumer key and secret with the token's - secret.""" - sig = '%s&' % escape(consumer.secret) - if token: - sig = sig + escape(token.secret) - return sig, sig - - def sign(self, request, consumer, token): - key, raw = self.signing_base(request, consumer, token) - return raw diff --git a/forum_modules/oauthauth/lib/oauth2/.svn/text-base/_version.py.svn-base b/forum_modules/oauthauth/lib/oauth2/.svn/text-base/_version.py.svn-base deleted file mode 100644 index 0d74e0563479aed96ec0320e094050ff3d176f9f..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/.svn/text-base/_version.py.svn-base +++ /dev/null @@ -1,18 +0,0 @@ -# This is the version of this source code. - -manual_verstr = "1.5" - - - -auto_build_num = "170" - - - -verstr = manual_verstr + "." + auto_build_num -try: - from pyutil.version_class import Version as pyutil_Version - __version__ = pyutil_Version(verstr) -except (ImportError, ValueError): - # Maybe there is no pyutil installed. - from distutils.version import LooseVersion as distutils_Version - __version__ = distutils_Version(verstr) diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/all-wcprops b/forum_modules/oauthauth/lib/oauth2/clients/.svn/all-wcprops deleted file mode 100644 index b24c701cba3a9223a75af2e3390da667a37246a4..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/clients/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/lib/oauth2/clients -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/lib/oauth2/clients/__init__.py -END -smtp.py -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/lib/oauth2/clients/smtp.py -END -imap.py -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/oauthauth/lib/oauth2/clients/imap.py -END diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/entries b/forum_modules/oauthauth/lib/oauth2/clients/.svn/entries deleted file mode 100644 index d6c9997b296f6f031a1f29852c1321a546b03b59..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/clients/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth/lib/oauth2/clients -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -imap.py -file - - - - -2012-06-22T20:34:37.670934Z -1036831e7b297ce3fbdaa3ecd9caabce -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1685 - -__init__.py -file - - - - -2012-06-22T20:34:37.658939Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -smtp.py -file - - - - -2012-06-22T20:34:37.666936Z -df5c64c017808283d31b9c33051468eb -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1680 - diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/imap.py.svn-base b/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/imap.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/imap.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/smtp.py.svn-base b/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/smtp.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/clients/.svn/prop-base/smtp.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/imap.py.svn-base b/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/imap.py.svn-base deleted file mode 100644 index 68b7cd8c62c29a79d433484da428f8f8cbbeb469..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/imap.py.svn-base +++ /dev/null @@ -1,40 +0,0 @@ -""" -The MIT License - -Copyright (c) 2007-2010 Leah Culver, Joe Stump, Mark Paschal, Vic Fryzel - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -""" - -import oauth2 -import imaplib - - -class IMAP4_SSL(imaplib.IMAP4_SSL): - """IMAP wrapper for imaplib.IMAP4_SSL that implements XOAUTH.""" - - def authenticate(self, url, consumer, token): - if consumer is not None and not isinstance(consumer, oauth2.Consumer): - raise ValueError("Invalid consumer.") - - if token is not None and not isinstance(token, oauth2.Token): - raise ValueError("Invalid token.") - - imaplib.IMAP4_SSL.authenticate(self, 'XOAUTH', - lambda x: oauth2.build_xoauth_string(url, consumer, token)) diff --git a/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/smtp.py.svn-base b/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/smtp.py.svn-base deleted file mode 100644 index 3e7bf0b0bc22b7570daea35ebf073fbddad47976..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/clients/.svn/text-base/smtp.py.svn-base +++ /dev/null @@ -1,41 +0,0 @@ -""" -The MIT License - -Copyright (c) 2007-2010 Leah Culver, Joe Stump, Mark Paschal, Vic Fryzel - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -""" - -import oauth2 -import smtplib -import base64 - - -class SMTP(smtplib.SMTP): - """SMTP wrapper for smtplib.SMTP that implements XOAUTH.""" - - def authenticate(self, url, consumer, token): - if consumer is not None and not isinstance(consumer, oauth2.Consumer): - raise ValueError("Invalid consumer.") - - if token is not None and not isinstance(token, oauth2.Token): - raise ValueError("Invalid token.") - - self.docmd('AUTH', 'XOAUTH %s' % \ - base64.b64encode(oauth2.build_xoauth_string(url, consumer, token))) diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/all-wcprops b/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/all-wcprops deleted file mode 100644 index ab0095ad72a6388993cb027ba66b2ca8b25bbe1c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2 -END -cacerts.txt -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/cacerts.txt -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 89 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py -END -socks.py -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/socks.py -END -iri2uri.py -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/iri2uri.py -END diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/entries b/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/entries deleted file mode 100644 index b2b9fe779f6eee8824b5712ee81fe0ada1b33ccb..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/entries +++ /dev/null @@ -1,167 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2 -http://svn.osqa.net/svnroot - - - -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -test -dir - -cacerts.txt -file - - - - -2012-06-22T20:34:37.994772Z -cec76328ca9615011dd4e050842e1450 -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -33640 - -__init__.py -file - - - - -2012-06-22T20:34:37.994772Z -fb8c2fac4fb8545b47a6dbb0ded0d8f4 -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -63682 - -socks.py -file - - - - -2012-06-22T20:34:37.994772Z -bac4919fc67bbd789747285162e9eecc -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -16293 - -iri2uri.py -file - - - - -2012-06-22T20:34:37.994772Z -c0f9c5cb229a22e21575322b4ba77741 -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -3850 - diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 158e9678a56b9e4f931d4cd1ac72f852a0cda2ca..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,1509 +0,0 @@ -from __future__ import generators -""" -httplib2 - -A caching http interface that supports ETags and gzip -to conserve bandwidth. - -Requires Python 2.3 or later - -Changelog: -2007-08-18, Rick: Modified so it's able to use a socks proxy if needed. - -""" - -__author__ = "Joe Gregorio (joe@bitworking.org)" -__copyright__ = "Copyright 2006, Joe Gregorio" -__contributors__ = ["Thomas Broyer (t.broyer@ltgt.net)", - "James Antill", - "Xavier Verges Farrero", - "Jonathan Feinberg", - "Blair Zajac", - "Sam Ruby", - "Louis Nyffenegger"] -__license__ = "MIT" -__version__ = "0.7.0" - -import re -import sys -import email -import email.Utils -import email.Message -import email.FeedParser -import StringIO -import gzip -import zlib -import httplib -import urlparse -import base64 -import os -import copy -import calendar -import time -import random -import errno -# remove depracated warning in python2.6 -try: - from hashlib import sha1 as _sha, md5 as _md5 -except ImportError: - import sha - import md5 - _sha = sha.new - _md5 = md5.new -import hmac -from gettext import gettext as _ -import socket - -try: - from httplib2 import socks -except ImportError: - socks = None - -# Build the appropriate socket wrapper for ssl -try: - import ssl # python 2.6 - ssl_SSLError = ssl.SSLError - def _ssl_wrap_socket(sock, key_file, cert_file, - disable_validation, ca_certs): - if disable_validation: - cert_reqs = ssl.CERT_NONE - else: - cert_reqs = ssl.CERT_REQUIRED - # We should be specifying SSL version 3 or TLS v1, but the ssl module - # doesn't expose the necessary knobs. So we need to go with the default - # of SSLv23. - return ssl.wrap_socket(sock, keyfile=key_file, certfile=cert_file, - cert_reqs=cert_reqs, ca_certs=ca_certs) -except (AttributeError, ImportError): - ssl_SSLError = None - def _ssl_wrap_socket(sock, key_file, cert_file, - disable_validation, ca_certs): - if not disable_validation: - raise CertificateValidationUnsupported( - "SSL certificate validation is not supported without " - "the ssl module installed. To avoid this error, install " - "the ssl module, or explicity disable validation.") - ssl_sock = socket.ssl(sock, key_file, cert_file) - return httplib.FakeSocket(sock, ssl_sock) - - -if sys.version_info >= (2,3): - from iri2uri import iri2uri -else: - def iri2uri(uri): - return uri - -def has_timeout(timeout): # python 2.6 - if hasattr(socket, '_GLOBAL_DEFAULT_TIMEOUT'): - return (timeout is not None and timeout is not socket._GLOBAL_DEFAULT_TIMEOUT) - return (timeout is not None) - -__all__ = ['Http', 'Response', 'ProxyInfo', 'HttpLib2Error', - 'RedirectMissingLocation', 'RedirectLimit', 'FailedToDecompressContent', - 'UnimplementedDigestAuthOptionError', 'UnimplementedHmacDigestAuthOptionError', - 'debuglevel', 'ProxiesUnavailableError'] - - -# The httplib debug level, set to a non-zero value to get debug output -debuglevel = 0 - - -# Python 2.3 support -if sys.version_info < (2,4): - def sorted(seq): - seq.sort() - return seq - -# Python 2.3 support -def HTTPResponse__getheaders(self): - """Return list of (header, value) tuples.""" - if self.msg is None: - raise httplib.ResponseNotReady() - return self.msg.items() - -if not hasattr(httplib.HTTPResponse, 'getheaders'): - httplib.HTTPResponse.getheaders = HTTPResponse__getheaders - -# All exceptions raised here derive from HttpLib2Error -class HttpLib2Error(Exception): pass - -# Some exceptions can be caught and optionally -# be turned back into responses. -class HttpLib2ErrorWithResponse(HttpLib2Error): - def __init__(self, desc, response, content): - self.response = response - self.content = content - HttpLib2Error.__init__(self, desc) - -class RedirectMissingLocation(HttpLib2ErrorWithResponse): pass -class RedirectLimit(HttpLib2ErrorWithResponse): pass -class FailedToDecompressContent(HttpLib2ErrorWithResponse): pass -class UnimplementedDigestAuthOptionError(HttpLib2ErrorWithResponse): pass -class UnimplementedHmacDigestAuthOptionError(HttpLib2ErrorWithResponse): pass - -class MalformedHeader(HttpLib2Error): pass -class RelativeURIError(HttpLib2Error): pass -class ServerNotFoundError(HttpLib2Error): pass -class ProxiesUnavailableError(HttpLib2Error): pass -class CertificateValidationUnsupported(HttpLib2Error): pass -class SSLHandshakeError(HttpLib2Error): pass -class CertificateHostnameMismatch(SSLHandshakeError): - def __init__(self, desc, host, cert): - HttpLib2Error.__init__(self, desc) - self.host = host - self.cert = cert - -# Open Items: -# ----------- -# Proxy support - -# Are we removing the cached content too soon on PUT (only delete on 200 Maybe?) - -# Pluggable cache storage (supports storing the cache in -# flat files by default. We need a plug-in architecture -# that can support Berkeley DB and Squid) - -# == Known Issues == -# Does not handle a resource that uses conneg and Last-Modified but no ETag as a cache validator. -# Does not handle Cache-Control: max-stale -# Does not use Age: headers when calculating cache freshness. - - -# The number of redirections to follow before giving up. -# Note that only GET redirects are automatically followed. -# Will also honor 301 requests by saving that info and never -# requesting that URI again. -DEFAULT_MAX_REDIRECTS = 5 - -# Default CA certificates file bundled with httplib2. -CA_CERTS = os.path.join( - os.path.dirname(os.path.abspath(__file__ )), "cacerts.txt") - -# Which headers are hop-by-hop headers by default -HOP_BY_HOP = ['connection', 'keep-alive', 'proxy-authenticate', 'proxy-authorization', 'te', 'trailers', 'transfer-encoding', 'upgrade'] - -def _get_end2end_headers(response): - hopbyhop = list(HOP_BY_HOP) - hopbyhop.extend([x.strip() for x in response.get('connection', '').split(',')]) - return [header for header in response.keys() if header not in hopbyhop] - -URI = re.compile(r"^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?") - -def parse_uri(uri): - """Parses a URI using the regex given in Appendix B of RFC 3986. - - (scheme, authority, path, query, fragment) = parse_uri(uri) - """ - groups = URI.match(uri).groups() - return (groups[1], groups[3], groups[4], groups[6], groups[8]) - -def urlnorm(uri): - (scheme, authority, path, query, fragment) = parse_uri(uri) - if not scheme or not authority: - raise RelativeURIError("Only absolute URIs are allowed. uri = %s" % uri) - authority = authority.lower() - scheme = scheme.lower() - if not path: - path = "/" - # Could do syntax based normalization of the URI before - # computing the digest. See Section 6.2.2 of Std 66. - request_uri = query and "?".join([path, query]) or path - scheme = scheme.lower() - defrag_uri = scheme + "://" + authority + request_uri - return scheme, authority, request_uri, defrag_uri - - -# Cache filename construction (original borrowed from Venus http://intertwingly.net/code/venus/) -re_url_scheme = re.compile(r'^\w+://') -re_slash = re.compile(r'[?/:|]+') - -def safename(filename): - """Return a filename suitable for the cache. - - Strips dangerous and common characters to create a filename we - can use to store the cache in. - """ - - try: - if re_url_scheme.match(filename): - if isinstance(filename,str): - filename = filename.decode('utf-8') - filename = filename.encode('idna') - else: - filename = filename.encode('idna') - except UnicodeError: - pass - if isinstance(filename,unicode): - filename=filename.encode('utf-8') - filemd5 = _md5(filename).hexdigest() - filename = re_url_scheme.sub("", filename) - filename = re_slash.sub(",", filename) - - # limit length of filename - if len(filename)>200: - filename=filename[:200] - return ",".join((filename, filemd5)) - -NORMALIZE_SPACE = re.compile(r'(?:\r\n)?[ \t]+') -def _normalize_headers(headers): - return dict([ (key.lower(), NORMALIZE_SPACE.sub(value, ' ').strip()) for (key, value) in headers.iteritems()]) - -def _parse_cache_control(headers): - retval = {} - if headers.has_key('cache-control'): - parts = headers['cache-control'].split(',') - parts_with_args = [tuple([x.strip().lower() for x in part.split("=", 1)]) for part in parts if -1 != part.find("=")] - parts_wo_args = [(name.strip().lower(), 1) for name in parts if -1 == name.find("=")] - retval = dict(parts_with_args + parts_wo_args) - return retval - -# Whether to use a strict mode to parse WWW-Authenticate headers -# Might lead to bad results in case of ill-formed header value, -# so disabled by default, falling back to relaxed parsing. -# Set to true to turn on, usefull for testing servers. -USE_WWW_AUTH_STRICT_PARSING = 0 - -# In regex below: -# [^\0-\x1f\x7f-\xff()<>@,;:\\\"/[\]?={} \t]+ matches a "token" as defined by HTTP -# "(?:[^\0-\x08\x0A-\x1f\x7f-\xff\\\"]|\\[\0-\x7f])*?" matches a "quoted-string" as defined by HTTP, when LWS have already been replaced by a single space -# Actually, as an auth-param value can be either a token or a quoted-string, they are combined in a single pattern which matches both: -# \"?((?<=\")(?:[^\0-\x1f\x7f-\xff\\\"]|\\[\0-\x7f])*?(?=\")|(?<!\")[^\0-\x08\x0A-\x1f\x7f-\xff()<>@,;:\\\"/[\]?={} \t]+(?!\"))\"? -WWW_AUTH_STRICT = re.compile(r"^(?:\s*(?:,\s*)?([^\0-\x1f\x7f-\xff()<>@,;:\\\"/[\]?={} \t]+)\s*=\s*\"?((?<=\")(?:[^\0-\x08\x0A-\x1f\x7f-\xff\\\"]|\\[\0-\x7f])*?(?=\")|(?<!\")[^\0-\x1f\x7f-\xff()<>@,;:\\\"/[\]?={} \t]+(?!\"))\"?)(.*)$") -WWW_AUTH_RELAXED = re.compile(r"^(?:\s*(?:,\s*)?([^ \t\r\n=]+)\s*=\s*\"?((?<=\")(?:[^\\\"]|\\.)*?(?=\")|(?<!\")[^ \t\r\n,]+(?!\"))\"?)(.*)$") -UNQUOTE_PAIRS = re.compile(r'\\(.)') -def _parse_www_authenticate(headers, headername='www-authenticate'): - """Returns a dictionary of dictionaries, one dict - per auth_scheme.""" - retval = {} - if headers.has_key(headername): - try: - authenticate = headers[headername].strip() - www_auth = USE_WWW_AUTH_STRICT_PARSING and WWW_AUTH_STRICT or WWW_AUTH_RELAXED - while authenticate: - # Break off the scheme at the beginning of the line - if headername == 'authentication-info': - (auth_scheme, the_rest) = ('digest', authenticate) - else: - (auth_scheme, the_rest) = authenticate.split(" ", 1) - # Now loop over all the key value pairs that come after the scheme, - # being careful not to roll into the next scheme - match = www_auth.search(the_rest) - auth_params = {} - while match: - if match and len(match.groups()) == 3: - (key, value, the_rest) = match.groups() - auth_params[key.lower()] = UNQUOTE_PAIRS.sub(r'\1', value) # '\\'.join([x.replace('\\', '') for x in value.split('\\\\')]) - match = www_auth.search(the_rest) - retval[auth_scheme.lower()] = auth_params - authenticate = the_rest.strip() - except ValueError: - raise MalformedHeader("WWW-Authenticate") - return retval - - -def _entry_disposition(response_headers, request_headers): - """Determine freshness from the Date, Expires and Cache-Control headers. - - We don't handle the following: - - 1. Cache-Control: max-stale - 2. Age: headers are not used in the calculations. - - Not that this algorithm is simpler than you might think - because we are operating as a private (non-shared) cache. - This lets us ignore 's-maxage'. We can also ignore - 'proxy-invalidate' since we aren't a proxy. - We will never return a stale document as - fresh as a design decision, and thus the non-implementation - of 'max-stale'. This also lets us safely ignore 'must-revalidate' - since we operate as if every server has sent 'must-revalidate'. - Since we are private we get to ignore both 'public' and - 'private' parameters. We also ignore 'no-transform' since - we don't do any transformations. - The 'no-store' parameter is handled at a higher level. - So the only Cache-Control parameters we look at are: - - no-cache - only-if-cached - max-age - min-fresh - """ - - retval = "STALE" - cc = _parse_cache_control(request_headers) - cc_response = _parse_cache_control(response_headers) - - if request_headers.has_key('pragma') and request_headers['pragma'].lower().find('no-cache') != -1: - retval = "TRANSPARENT" - if 'cache-control' not in request_headers: - request_headers['cache-control'] = 'no-cache' - elif cc.has_key('no-cache'): - retval = "TRANSPARENT" - elif cc_response.has_key('no-cache'): - retval = "STALE" - elif cc.has_key('only-if-cached'): - retval = "FRESH" - elif response_headers.has_key('date'): - date = calendar.timegm(email.Utils.parsedate_tz(response_headers['date'])) - now = time.time() - current_age = max(0, now - date) - if cc_response.has_key('max-age'): - try: - freshness_lifetime = int(cc_response['max-age']) - except ValueError: - freshness_lifetime = 0 - elif response_headers.has_key('expires'): - expires = email.Utils.parsedate_tz(response_headers['expires']) - if None == expires: - freshness_lifetime = 0 - else: - freshness_lifetime = max(0, calendar.timegm(expires) - date) - else: - freshness_lifetime = 0 - if cc.has_key('max-age'): - try: - freshness_lifetime = int(cc['max-age']) - except ValueError: - freshness_lifetime = 0 - if cc.has_key('min-fresh'): - try: - min_fresh = int(cc['min-fresh']) - except ValueError: - min_fresh = 0 - current_age += min_fresh - if freshness_lifetime > current_age: - retval = "FRESH" - return retval - -def _decompressContent(response, new_content): - content = new_content - try: - encoding = response.get('content-encoding', None) - if encoding in ['gzip', 'deflate']: - if encoding == 'gzip': - content = gzip.GzipFile(fileobj=StringIO.StringIO(new_content)).read() - if encoding == 'deflate': - content = zlib.decompress(content) - response['content-length'] = str(len(content)) - # Record the historical presence of the encoding in a way the won't interfere. - response['-content-encoding'] = response['content-encoding'] - del response['content-encoding'] - except IOError: - content = "" - raise FailedToDecompressContent(_("Content purported to be compressed with %s but failed to decompress.") % response.get('content-encoding'), response, content) - return content - -def _updateCache(request_headers, response_headers, content, cache, cachekey): - if cachekey: - cc = _parse_cache_control(request_headers) - cc_response = _parse_cache_control(response_headers) - if cc.has_key('no-store') or cc_response.has_key('no-store'): - cache.delete(cachekey) - else: - info = email.Message.Message() - for key, value in response_headers.iteritems(): - if key not in ['status','content-encoding','transfer-encoding']: - info[key] = value - - # Add annotations to the cache to indicate what headers - # are variant for this request. - vary = response_headers.get('vary', None) - if vary: - vary_headers = vary.lower().replace(' ', '').split(',') - for header in vary_headers: - key = '-varied-%s' % header - try: - info[key] = request_headers[header] - except KeyError: - pass - - status = response_headers.status - if status == 304: - status = 200 - - status_header = 'status: %d\r\n' % status - - header_str = info.as_string() - - header_str = re.sub("\r(?!\n)|(?<!\r)\n", "\r\n", header_str) - text = "".join([status_header, header_str, content]) - - cache.set(cachekey, text) - -def _cnonce(): - dig = _md5("%s:%s" % (time.ctime(), ["0123456789"[random.randrange(0, 9)] for i in range(20)])).hexdigest() - return dig[:16] - -def _wsse_username_token(cnonce, iso_now, password): - return base64.b64encode(_sha("%s%s%s" % (cnonce, iso_now, password)).digest()).strip() - - -# For credentials we need two things, first -# a pool of credential to try (not necesarily tied to BAsic, Digest, etc.) -# Then we also need a list of URIs that have already demanded authentication -# That list is tricky since sub-URIs can take the same auth, or the -# auth scheme may change as you descend the tree. -# So we also need each Auth instance to be able to tell us -# how close to the 'top' it is. - -class Authentication(object): - def __init__(self, credentials, host, request_uri, headers, response, content, http): - (scheme, authority, path, query, fragment) = parse_uri(request_uri) - self.path = path - self.host = host - self.credentials = credentials - self.http = http - - def depth(self, request_uri): - (scheme, authority, path, query, fragment) = parse_uri(request_uri) - return request_uri[len(self.path):].count("/") - - def inscope(self, host, request_uri): - # XXX Should we normalize the request_uri? - (scheme, authority, path, query, fragment) = parse_uri(request_uri) - return (host == self.host) and path.startswith(self.path) - - def request(self, method, request_uri, headers, content): - """Modify the request headers to add the appropriate - Authorization header. Over-rise this in sub-classes.""" - pass - - def response(self, response, content): - """Gives us a chance to update with new nonces - or such returned from the last authorized response. - Over-rise this in sub-classes if necessary. - - Return TRUE is the request is to be retried, for - example Digest may return stale=true. - """ - return False - - - -class BasicAuthentication(Authentication): - def __init__(self, credentials, host, request_uri, headers, response, content, http): - Authentication.__init__(self, credentials, host, request_uri, headers, response, content, http) - - def request(self, method, request_uri, headers, content): - """Modify the request headers to add the appropriate - Authorization header.""" - headers['authorization'] = 'Basic ' + base64.b64encode("%s:%s" % self.credentials).strip() - - -class DigestAuthentication(Authentication): - """Only do qop='auth' and MD5, since that - is all Apache currently implements""" - def __init__(self, credentials, host, request_uri, headers, response, content, http): - Authentication.__init__(self, credentials, host, request_uri, headers, response, content, http) - challenge = _parse_www_authenticate(response, 'www-authenticate') - self.challenge = challenge['digest'] - qop = self.challenge.get('qop', 'auth') - self.challenge['qop'] = ('auth' in [x.strip() for x in qop.split()]) and 'auth' or None - if self.challenge['qop'] is None: - raise UnimplementedDigestAuthOptionError( _("Unsupported value for qop: %s." % qop)) - self.challenge['algorithm'] = self.challenge.get('algorithm', 'MD5').upper() - if self.challenge['algorithm'] != 'MD5': - raise UnimplementedDigestAuthOptionError( _("Unsupported value for algorithm: %s." % self.challenge['algorithm'])) - self.A1 = "".join([self.credentials[0], ":", self.challenge['realm'], ":", self.credentials[1]]) - self.challenge['nc'] = 1 - - def request(self, method, request_uri, headers, content, cnonce = None): - """Modify the request headers""" - H = lambda x: _md5(x).hexdigest() - KD = lambda s, d: H("%s:%s" % (s, d)) - A2 = "".join([method, ":", request_uri]) - self.challenge['cnonce'] = cnonce or _cnonce() - request_digest = '"%s"' % KD(H(self.A1), "%s:%s:%s:%s:%s" % (self.challenge['nonce'], - '%08x' % self.challenge['nc'], - self.challenge['cnonce'], - self.challenge['qop'], H(A2) - )) - headers['authorization'] = 'Digest username="%s", realm="%s", nonce="%s", uri="%s", algorithm=%s, response=%s, qop=%s, nc=%08x, cnonce="%s"' % ( - self.credentials[0], - self.challenge['realm'], - self.challenge['nonce'], - request_uri, - self.challenge['algorithm'], - request_digest, - self.challenge['qop'], - self.challenge['nc'], - self.challenge['cnonce'], - ) - self.challenge['nc'] += 1 - - def response(self, response, content): - if not response.has_key('authentication-info'): - challenge = _parse_www_authenticate(response, 'www-authenticate').get('digest', {}) - if 'true' == challenge.get('stale'): - self.challenge['nonce'] = challenge['nonce'] - self.challenge['nc'] = 1 - return True - else: - updated_challenge = _parse_www_authenticate(response, 'authentication-info').get('digest', {}) - - if updated_challenge.has_key('nextnonce'): - self.challenge['nonce'] = updated_challenge['nextnonce'] - self.challenge['nc'] = 1 - return False - - -class HmacDigestAuthentication(Authentication): - """Adapted from Robert Sayre's code and DigestAuthentication above.""" - __author__ = "Thomas Broyer (t.broyer@ltgt.net)" - - def __init__(self, credentials, host, request_uri, headers, response, content, http): - Authentication.__init__(self, credentials, host, request_uri, headers, response, content, http) - challenge = _parse_www_authenticate(response, 'www-authenticate') - self.challenge = challenge['hmacdigest'] - # TODO: self.challenge['domain'] - self.challenge['reason'] = self.challenge.get('reason', 'unauthorized') - if self.challenge['reason'] not in ['unauthorized', 'integrity']: - self.challenge['reason'] = 'unauthorized' - self.challenge['salt'] = self.challenge.get('salt', '') - if not self.challenge.get('snonce'): - raise UnimplementedHmacDigestAuthOptionError( _("The challenge doesn't contain a server nonce, or this one is empty.")) - self.challenge['algorithm'] = self.challenge.get('algorithm', 'HMAC-SHA-1') - if self.challenge['algorithm'] not in ['HMAC-SHA-1', 'HMAC-MD5']: - raise UnimplementedHmacDigestAuthOptionError( _("Unsupported value for algorithm: %s." % self.challenge['algorithm'])) - self.challenge['pw-algorithm'] = self.challenge.get('pw-algorithm', 'SHA-1') - if self.challenge['pw-algorithm'] not in ['SHA-1', 'MD5']: - raise UnimplementedHmacDigestAuthOptionError( _("Unsupported value for pw-algorithm: %s." % self.challenge['pw-algorithm'])) - if self.challenge['algorithm'] == 'HMAC-MD5': - self.hashmod = _md5 - else: - self.hashmod = _sha - if self.challenge['pw-algorithm'] == 'MD5': - self.pwhashmod = _md5 - else: - self.pwhashmod = _sha - self.key = "".join([self.credentials[0], ":", - self.pwhashmod.new("".join([self.credentials[1], self.challenge['salt']])).hexdigest().lower(), - ":", self.challenge['realm'] - ]) - self.key = self.pwhashmod.new(self.key).hexdigest().lower() - - def request(self, method, request_uri, headers, content): - """Modify the request headers""" - keys = _get_end2end_headers(headers) - keylist = "".join(["%s " % k for k in keys]) - headers_val = "".join([headers[k] for k in keys]) - created = time.strftime('%Y-%m-%dT%H:%M:%SZ',time.gmtime()) - cnonce = _cnonce() - request_digest = "%s:%s:%s:%s:%s" % (method, request_uri, cnonce, self.challenge['snonce'], headers_val) - request_digest = hmac.new(self.key, request_digest, self.hashmod).hexdigest().lower() - headers['authorization'] = 'HMACDigest username="%s", realm="%s", snonce="%s", cnonce="%s", uri="%s", created="%s", response="%s", headers="%s"' % ( - self.credentials[0], - self.challenge['realm'], - self.challenge['snonce'], - cnonce, - request_uri, - created, - request_digest, - keylist, - ) - - def response(self, response, content): - challenge = _parse_www_authenticate(response, 'www-authenticate').get('hmacdigest', {}) - if challenge.get('reason') in ['integrity', 'stale']: - return True - return False - - -class WsseAuthentication(Authentication): - """This is thinly tested and should not be relied upon. - At this time there isn't any third party server to test against. - Blogger and TypePad implemented this algorithm at one point - but Blogger has since switched to Basic over HTTPS and - TypePad has implemented it wrong, by never issuing a 401 - challenge but instead requiring your client to telepathically know that - their endpoint is expecting WSSE profile="UsernameToken".""" - def __init__(self, credentials, host, request_uri, headers, response, content, http): - Authentication.__init__(self, credentials, host, request_uri, headers, response, content, http) - - def request(self, method, request_uri, headers, content): - """Modify the request headers to add the appropriate - Authorization header.""" - headers['authorization'] = 'WSSE profile="UsernameToken"' - iso_now = time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime()) - cnonce = _cnonce() - password_digest = _wsse_username_token(cnonce, iso_now, self.credentials[1]) - headers['X-WSSE'] = 'UsernameToken Username="%s", PasswordDigest="%s", Nonce="%s", Created="%s"' % ( - self.credentials[0], - password_digest, - cnonce, - iso_now) - -class GoogleLoginAuthentication(Authentication): - def __init__(self, credentials, host, request_uri, headers, response, content, http): - from urllib import urlencode - Authentication.__init__(self, credentials, host, request_uri, headers, response, content, http) - challenge = _parse_www_authenticate(response, 'www-authenticate') - service = challenge['googlelogin'].get('service', 'xapi') - # Bloggger actually returns the service in the challenge - # For the rest we guess based on the URI - if service == 'xapi' and request_uri.find("calendar") > 0: - service = "cl" - # No point in guessing Base or Spreadsheet - #elif request_uri.find("spreadsheets") > 0: - # service = "wise" - - auth = dict(Email=credentials[0], Passwd=credentials[1], service=service, source=headers['user-agent']) - resp, content = self.http.request("https://www.google.com/accounts/ClientLogin", method="POST", body=urlencode(auth), headers={'Content-Type': 'application/x-www-form-urlencoded'}) - lines = content.split('\n') - d = dict([tuple(line.split("=", 1)) for line in lines if line]) - if resp.status == 403: - self.Auth = "" - else: - self.Auth = d['Auth'] - - def request(self, method, request_uri, headers, content): - """Modify the request headers to add the appropriate - Authorization header.""" - headers['authorization'] = 'GoogleLogin Auth=' + self.Auth - - -AUTH_SCHEME_CLASSES = { - "basic": BasicAuthentication, - "wsse": WsseAuthentication, - "digest": DigestAuthentication, - "hmacdigest": HmacDigestAuthentication, - "googlelogin": GoogleLoginAuthentication -} - -AUTH_SCHEME_ORDER = ["hmacdigest", "googlelogin", "digest", "wsse", "basic"] - -class FileCache(object): - """Uses a local directory as a store for cached files. - Not really safe to use if multiple threads or processes are going to - be running on the same cache. - """ - def __init__(self, cache, safe=safename): # use safe=lambda x: md5.new(x).hexdigest() for the old behavior - self.cache = cache - self.safe = safe - if not os.path.exists(cache): - os.makedirs(self.cache) - - def get(self, key): - retval = None - cacheFullPath = os.path.join(self.cache, self.safe(key)) - try: - f = file(cacheFullPath, "rb") - retval = f.read() - f.close() - except IOError: - pass - return retval - - def set(self, key, value): - cacheFullPath = os.path.join(self.cache, self.safe(key)) - f = file(cacheFullPath, "wb") - f.write(value) - f.close() - - def delete(self, key): - cacheFullPath = os.path.join(self.cache, self.safe(key)) - if os.path.exists(cacheFullPath): - os.remove(cacheFullPath) - -class Credentials(object): - def __init__(self): - self.credentials = [] - - def add(self, name, password, domain=""): - self.credentials.append((domain.lower(), name, password)) - - def clear(self): - self.credentials = [] - - def iter(self, domain): - for (cdomain, name, password) in self.credentials: - if cdomain == "" or domain == cdomain: - yield (name, password) - -class KeyCerts(Credentials): - """Identical to Credentials except that - name/password are mapped to key/cert.""" - pass - - -class ProxyInfo(object): - """Collect information required to use a proxy.""" - def __init__(self, proxy_type, proxy_host, proxy_port, proxy_rdns=None, proxy_user=None, proxy_pass=None): - """The parameter proxy_type must be set to one of socks.PROXY_TYPE_XXX - constants. For example: - -p = ProxyInfo(proxy_type=socks.PROXY_TYPE_HTTP, proxy_host='localhost', proxy_port=8000) - """ - self.proxy_type, self.proxy_host, self.proxy_port, self.proxy_rdns, self.proxy_user, self.proxy_pass = proxy_type, proxy_host, proxy_port, proxy_rdns, proxy_user, proxy_pass - - def astuple(self): - return (self.proxy_type, self.proxy_host, self.proxy_port, self.proxy_rdns, - self.proxy_user, self.proxy_pass) - - def isgood(self): - return (self.proxy_host != None) and (self.proxy_port != None) - - -class HTTPConnectionWithTimeout(httplib.HTTPConnection): - """ - HTTPConnection subclass that supports timeouts - - All timeouts are in seconds. If None is passed for timeout then - Python's default timeout for sockets will be used. See for example - the docs of socket.setdefaulttimeout(): - http://docs.python.org/library/socket.html#socket.setdefaulttimeout - """ - - def __init__(self, host, port=None, strict=None, timeout=None, proxy_info=None): - httplib.HTTPConnection.__init__(self, host, port, strict) - self.timeout = timeout - self.proxy_info = proxy_info - - def connect(self): - """Connect to the host and port specified in __init__.""" - # Mostly verbatim from httplib.py. - if self.proxy_info and socks is None: - raise ProxiesUnavailableError( - 'Proxy support missing but proxy use was requested!') - msg = "getaddrinfo returns an empty list" - for res in socket.getaddrinfo(self.host, self.port, 0, - socket.SOCK_STREAM): - af, socktype, proto, canonname, sa = res - try: - if self.proxy_info and self.proxy_info.isgood(): - self.sock = socks.socksocket(af, socktype, proto) - self.sock.setproxy(*self.proxy_info.astuple()) - else: - self.sock = socket.socket(af, socktype, proto) - self.sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) - # Different from httplib: support timeouts. - if has_timeout(self.timeout): - self.sock.settimeout(self.timeout) - # End of difference from httplib. - if self.debuglevel > 0: - print "connect: (%s, %s)" % (self.host, self.port) - - self.sock.connect(sa) - except socket.error, msg: - if self.debuglevel > 0: - print 'connect fail:', (self.host, self.port) - if self.sock: - self.sock.close() - self.sock = None - continue - break - if not self.sock: - raise socket.error, msg - -class HTTPSConnectionWithTimeout(httplib.HTTPSConnection): - """ - This class allows communication via SSL. - - All timeouts are in seconds. If None is passed for timeout then - Python's default timeout for sockets will be used. See for example - the docs of socket.setdefaulttimeout(): - http://docs.python.org/library/socket.html#socket.setdefaulttimeout - """ - def __init__(self, host, port=None, key_file=None, cert_file=None, - strict=None, timeout=None, proxy_info=None, - ca_certs=None, disable_ssl_certificate_validation=False): - httplib.HTTPSConnection.__init__(self, host, port=port, key_file=key_file, - cert_file=cert_file, strict=strict) - self.timeout = timeout - self.proxy_info = proxy_info - if ca_certs is None: - ca_certs = CA_CERTS - self.ca_certs = ca_certs - self.disable_ssl_certificate_validation = \ - disable_ssl_certificate_validation - - # The following two methods were adapted from https_wrapper.py, released - # with the Google Appengine SDK at - # http://googleappengine.googlecode.com/svn-history/r136/trunk/python/google/appengine/tools/https_wrapper.py - # under the following license: - # - # Copyright 2007 Google Inc. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - - def _GetValidHostsForCert(self, cert): - """Returns a list of valid host globs for an SSL certificate. - - Args: - cert: A dictionary representing an SSL certificate. - Returns: - list: A list of valid host globs. - """ - if 'subjectAltName' in cert: - return [x[1] for x in cert['subjectAltName'] - if x[0].lower() == 'dns'] - else: - return [x[0][1] for x in cert['subject'] - if x[0][0].lower() == 'commonname'] - - def _ValidateCertificateHostname(self, cert, hostname): - """Validates that a given hostname is valid for an SSL certificate. - - Args: - cert: A dictionary representing an SSL certificate. - hostname: The hostname to test. - Returns: - bool: Whether or not the hostname is valid for this certificate. - """ - hosts = self._GetValidHostsForCert(cert) - for host in hosts: - host_re = host.replace('.', '\.').replace('*', '[^.]*') - if re.search('^%s$' % (host_re,), hostname, re.I): - return True - return False - - def connect(self): - "Connect to a host on a given (SSL) port." - - msg = "getaddrinfo returns an empty list" - for family, socktype, proto, canonname, sockaddr in socket.getaddrinfo( - self.host, self.port, 0, socket.SOCK_STREAM): - try: - if self.proxy_info and self.proxy_info.isgood(): - sock = socks.socksocket(family, socktype, proto) - sock.setproxy(*self.proxy_info.astuple()) - else: - sock = socket.socket(family, socktype, proto) - sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) - - if has_timeout(self.timeout): - sock.settimeout(self.timeout) - sock.connect((self.host, self.port)) - self.sock =_ssl_wrap_socket( - sock, self.key_file, self.cert_file, - self.disable_ssl_certificate_validation, self.ca_certs) - if self.debuglevel > 0: - print "connect: (%s, %s)" % (self.host, self.port) - if not self.disable_ssl_certificate_validation: - cert = self.sock.getpeercert() - hostname = self.host.split(':', 0)[0] - if not self._ValidateCertificateHostname(cert, hostname): - raise CertificateHostnameMismatch( - 'Server presented certificate that does not match ' - 'host %s: %s' % (hostname, cert), hostname, cert) - except ssl_SSLError, e: - if sock: - sock.close() - if self.sock: - self.sock.close() - self.sock = None - # Unfortunately the ssl module doesn't seem to provide any way - # to get at more detailed error information, in particular - # whether the error is due to certificate validation or - # something else (such as SSL protocol mismatch). - if e.errno == ssl.SSL_ERROR_SSL: - raise SSLHandshakeError(e) - else: - raise - except (socket.timeout, socket.gaierror): - raise - except socket.error, msg: - if self.debuglevel > 0: - print 'connect fail:', (self.host, self.port) - if self.sock: - self.sock.close() - self.sock = None - continue - break - if not self.sock: - raise socket.error, msg - -SCHEME_TO_CONNECTION = { - 'http': HTTPConnectionWithTimeout, - 'https': HTTPSConnectionWithTimeout - } - -# Use a different connection object for Google App Engine -try: - from google.appengine.api.urlfetch import fetch - from google.appengine.api.urlfetch import InvalidURLError - from google.appengine.api.urlfetch import DownloadError - from google.appengine.api.urlfetch import ResponseTooLargeError - from google.appengine.api.urlfetch import SSLCertificateError - - - class ResponseDict(dict): - """Is a dictionary that also has a read() method, so - that it can pass itself off as an httlib.HTTPResponse().""" - def read(self): - pass - - - class AppEngineHttpConnection(object): - """Emulates an httplib.HTTPConnection object, but actually uses the Google - App Engine urlfetch library. This allows the timeout to be properly used on - Google App Engine, and avoids using httplib, which on Google App Engine is - just another wrapper around urlfetch. - """ - def __init__(self, host, port=None, key_file=None, cert_file=None, - strict=None, timeout=None, proxy_info=None, ca_certs=None, - disable_certificate_validation=False): - self.host = host - self.port = port - self.timeout = timeout - if key_file or cert_file or proxy_info or ca_certs: - raise NotSupportedOnThisPlatform() - self.response = None - self.scheme = 'http' - self.validate_certificate = not disable_certificate_validation - self.sock = True - - def request(self, method, url, body, headers): - # Calculate the absolute URI, which fetch requires - netloc = self.host - if self.port: - netloc = '%s:%s' % (self.host, self.port) - absolute_uri = '%s://%s%s' % (self.scheme, netloc, url) - try: - response = fetch(absolute_uri, payload=body, method=method, - headers=headers, allow_truncated=False, follow_redirects=False, - deadline=self.timeout, - validate_certificate=self.validate_certificate) - self.response = ResponseDict(response.headers) - self.response['status'] = response.status_code - setattr(self.response, 'read', lambda : response.content) - - # Make sure the exceptions raised match the exceptions expected. - except InvalidURLError: - raise socket.gaierror('') - except (DownloadError, ResponseTooLargeError, SSLCertificateError): - raise httplib.HTTPException() - - def getresponse(self): - return self.response - - def set_debuglevel(self, level): - pass - - def connect(self): - pass - - def close(self): - pass - - - class AppEngineHttpsConnection(AppEngineHttpConnection): - """Same as AppEngineHttpConnection, but for HTTPS URIs.""" - def __init__(self, host, port=None, key_file=None, cert_file=None, - strict=None, timeout=None, proxy_info=None): - AppEngineHttpConnection.__init__(self, host, port, key_file, cert_file, - strict, timeout, proxy_info) - self.scheme = 'https' - - # Update the connection classes to use the Googel App Engine specific ones. - SCHEME_TO_CONNECTION = { - 'http': AppEngineHttpConnection, - 'https': AppEngineHttpsConnection - } - -except ImportError: - pass - - -class Http(object): - """An HTTP client that handles: -- all methods -- caching -- ETags -- compression, -- HTTPS -- Basic -- Digest -- WSSE - -and more. - """ - def __init__(self, cache=None, timeout=None, proxy_info=None, - ca_certs=None, disable_ssl_certificate_validation=False): - """ - The value of proxy_info is a ProxyInfo instance. - - If 'cache' is a string then it is used as a directory name for - a disk cache. Otherwise it must be an object that supports the - same interface as FileCache. - - All timeouts are in seconds. If None is passed for timeout - then Python's default timeout for sockets will be used. See - for example the docs of socket.setdefaulttimeout(): - http://docs.python.org/library/socket.html#socket.setdefaulttimeout - - ca_certs is the path of a file containing root CA certificates for SSL - server certificate validation. By default, a CA cert file bundled with - httplib2 is used. - - If disable_ssl_certificate_validation is true, SSL cert validation will - not be performed. - """ - self.proxy_info = proxy_info - self.ca_certs = ca_certs - self.disable_ssl_certificate_validation = \ - disable_ssl_certificate_validation - - # Map domain name to an httplib connection - self.connections = {} - # The location of the cache, for now a directory - # where cached responses are held. - if cache and isinstance(cache, basestring): - self.cache = FileCache(cache) - else: - self.cache = cache - - # Name/password - self.credentials = Credentials() - - # Key/cert - self.certificates = KeyCerts() - - # authorization objects - self.authorizations = [] - - # If set to False then no redirects are followed, even safe ones. - self.follow_redirects = True - - # Which HTTP methods do we apply optimistic concurrency to, i.e. - # which methods get an "if-match:" etag header added to them. - self.optimistic_concurrency_methods = ["PUT", "PATCH"] - - # If 'follow_redirects' is True, and this is set to True then - # all redirecs are followed, including unsafe ones. - self.follow_all_redirects = False - - self.ignore_etag = False - - self.force_exception_to_status_code = False - - self.timeout = timeout - - def _auth_from_challenge(self, host, request_uri, headers, response, content): - """A generator that creates Authorization objects - that can be applied to requests. - """ - challenges = _parse_www_authenticate(response, 'www-authenticate') - for cred in self.credentials.iter(host): - for scheme in AUTH_SCHEME_ORDER: - if challenges.has_key(scheme): - yield AUTH_SCHEME_CLASSES[scheme](cred, host, request_uri, headers, response, content, self) - - def add_credentials(self, name, password, domain=""): - """Add a name and password that will be used - any time a request requires authentication.""" - self.credentials.add(name, password, domain) - - def add_certificate(self, key, cert, domain): - """Add a key and cert that will be used - any time a request requires authentication.""" - self.certificates.add(key, cert, domain) - - def clear_credentials(self): - """Remove all the names and passwords - that are used for authentication""" - self.credentials.clear() - self.authorizations = [] - - def _conn_request(self, conn, request_uri, method, body, headers): - for i in range(2): - try: - if conn.sock is None: - conn.connect() - conn.request(method, request_uri, body, headers) - except socket.timeout: - raise - except socket.gaierror: - conn.close() - raise ServerNotFoundError("Unable to find the server at %s" % conn.host) - except ssl_SSLError: - conn.close() - raise - except socket.error, e: - err = 0 - if hasattr(e, 'args'): - err = getattr(e, 'args')[0] - else: - err = e.errno - if err == errno.ECONNREFUSED: # Connection refused - raise - except httplib.HTTPException: - # Just because the server closed the connection doesn't apparently mean - # that the server didn't send a response. - if conn.sock is None: - if i == 0: - conn.close() - conn.connect() - continue - else: - conn.close() - raise - if i == 0: - conn.close() - conn.connect() - continue - pass - try: - response = conn.getresponse() - except (socket.error, httplib.HTTPException): - if i == 0: - conn.close() - conn.connect() - continue - else: - raise - else: - content = "" - if method == "HEAD": - response.close() - else: - content = response.read() - response = Response(response) - if method != "HEAD": - content = _decompressContent(response, content) - break - return (response, content) - - - def _request(self, conn, host, absolute_uri, request_uri, method, body, headers, redirections, cachekey): - """Do the actual request using the connection object - and also follow one level of redirects if necessary""" - - auths = [(auth.depth(request_uri), auth) for auth in self.authorizations if auth.inscope(host, request_uri)] - auth = auths and sorted(auths)[0][1] or None - if auth: - auth.request(method, request_uri, headers, body) - - (response, content) = self._conn_request(conn, request_uri, method, body, headers) - - if auth: - if auth.response(response, body): - auth.request(method, request_uri, headers, body) - (response, content) = self._conn_request(conn, request_uri, method, body, headers ) - response._stale_digest = 1 - - if response.status == 401: - for authorization in self._auth_from_challenge(host, request_uri, headers, response, content): - authorization.request(method, request_uri, headers, body) - (response, content) = self._conn_request(conn, request_uri, method, body, headers, ) - if response.status != 401: - self.authorizations.append(authorization) - authorization.response(response, body) - break - - if (self.follow_all_redirects or (method in ["GET", "HEAD"]) or response.status == 303): - if self.follow_redirects and response.status in [300, 301, 302, 303, 307]: - # Pick out the location header and basically start from the beginning - # remembering first to strip the ETag header and decrement our 'depth' - if redirections: - if not response.has_key('location') and response.status != 300: - raise RedirectMissingLocation( _("Redirected but the response is missing a Location: header."), response, content) - # Fix-up relative redirects (which violate an RFC 2616 MUST) - if response.has_key('location'): - location = response['location'] - (scheme, authority, path, query, fragment) = parse_uri(location) - if authority == None: - response['location'] = urlparse.urljoin(absolute_uri, location) - if response.status == 301 and method in ["GET", "HEAD"]: - response['-x-permanent-redirect-url'] = response['location'] - if not response.has_key('content-location'): - response['content-location'] = absolute_uri - _updateCache(headers, response, content, self.cache, cachekey) - if headers.has_key('if-none-match'): - del headers['if-none-match'] - if headers.has_key('if-modified-since'): - del headers['if-modified-since'] - if response.has_key('location'): - location = response['location'] - old_response = copy.deepcopy(response) - if not old_response.has_key('content-location'): - old_response['content-location'] = absolute_uri - redirect_method = method - if response.status in [302, 303]: - redirect_method = "GET" - body = None - (response, content) = self.request(location, redirect_method, body=body, headers = headers, redirections = redirections - 1) - response.previous = old_response - else: - raise RedirectLimit("Redirected more times than rediection_limit allows.", response, content) - elif response.status in [200, 203] and method in ["GET", "HEAD"]: - # Don't cache 206's since we aren't going to handle byte range requests - if not response.has_key('content-location'): - response['content-location'] = absolute_uri - _updateCache(headers, response, content, self.cache, cachekey) - - return (response, content) - - def _normalize_headers(self, headers): - return _normalize_headers(headers) - -# Need to catch and rebrand some exceptions -# Then need to optionally turn all exceptions into status codes -# including all socket.* and httplib.* exceptions. - - - def request(self, uri, method="GET", body=None, headers=None, redirections=DEFAULT_MAX_REDIRECTS, connection_type=None): - """ Performs a single HTTP request. -The 'uri' is the URI of the HTTP resource and can begin -with either 'http' or 'https'. The value of 'uri' must be an absolute URI. - -The 'method' is the HTTP method to perform, such as GET, POST, DELETE, etc. -There is no restriction on the methods allowed. - -The 'body' is the entity body to be sent with the request. It is a string -object. - -Any extra headers that are to be sent with the request should be provided in the -'headers' dictionary. - -The maximum number of redirect to follow before raising an -exception is 'redirections. The default is 5. - -The return value is a tuple of (response, content), the first -being and instance of the 'Response' class, the second being -a string that contains the response entity body. - """ - try: - if headers is None: - headers = {} - else: - headers = self._normalize_headers(headers) - - if not headers.has_key('user-agent'): - headers['user-agent'] = "Python-httplib2/%s (gzip)" % __version__ - - uri = iri2uri(uri) - - (scheme, authority, request_uri, defrag_uri) = urlnorm(uri) - domain_port = authority.split(":")[0:2] - if len(domain_port) == 2 and domain_port[1] == '443' and scheme == 'http': - scheme = 'https' - authority = domain_port[0] - - conn_key = scheme+":"+authority - if conn_key in self.connections: - conn = self.connections[conn_key] - else: - if not connection_type: - connection_type = SCHEME_TO_CONNECTION[scheme] - certs = list(self.certificates.iter(authority)) - if issubclass(connection_type, HTTPSConnectionWithTimeout): - if certs: - conn = self.connections[conn_key] = connection_type( - authority, key_file=certs[0][0], - cert_file=certs[0][1], timeout=self.timeout, - proxy_info=self.proxy_info, - ca_certs=self.ca_certs, - disable_ssl_certificate_validation= - self.disable_ssl_certificate_validation) - else: - conn = self.connections[conn_key] = connection_type( - authority, timeout=self.timeout, - proxy_info=self.proxy_info, - ca_certs=self.ca_certs, - disable_ssl_certificate_validation= - self.disable_ssl_certificate_validation) - else: - conn = self.connections[conn_key] = connection_type( - authority, timeout=self.timeout, - proxy_info=self.proxy_info) - conn.set_debuglevel(debuglevel) - - if 'range' not in headers and 'accept-encoding' not in headers: - headers['accept-encoding'] = 'gzip, deflate' - - info = email.Message.Message() - cached_value = None - if self.cache: - cachekey = defrag_uri - cached_value = self.cache.get(cachekey) - if cached_value: - # info = email.message_from_string(cached_value) - # - # Need to replace the line above with the kludge below - # to fix the non-existent bug not fixed in this - # bug report: http://mail.python.org/pipermail/python-bugs-list/2005-September/030289.html - try: - info, content = cached_value.split('\r\n\r\n', 1) - feedparser = email.FeedParser.FeedParser() - feedparser.feed(info) - info = feedparser.close() - feedparser._parse = None - except IndexError: - self.cache.delete(cachekey) - cachekey = None - cached_value = None - else: - cachekey = None - - if method in self.optimistic_concurrency_methods and self.cache and info.has_key('etag') and not self.ignore_etag and 'if-match' not in headers: - # http://www.w3.org/1999/04/Editing/ - headers['if-match'] = info['etag'] - - if method not in ["GET", "HEAD"] and self.cache and cachekey: - # RFC 2616 Section 13.10 - self.cache.delete(cachekey) - - # Check the vary header in the cache to see if this request - # matches what varies in the cache. - if method in ['GET', 'HEAD'] and 'vary' in info: - vary = info['vary'] - vary_headers = vary.lower().replace(' ', '').split(',') - for header in vary_headers: - key = '-varied-%s' % header - value = info[key] - if headers.get(header, None) != value: - cached_value = None - break - - if cached_value and method in ["GET", "HEAD"] and self.cache and 'range' not in headers: - if info.has_key('-x-permanent-redirect-url'): - # Should cached permanent redirects be counted in our redirection count? For now, yes. - if redirections <= 0: - raise RedirectLimit("Redirected more times than rediection_limit allows.", {}, "") - (response, new_content) = self.request(info['-x-permanent-redirect-url'], "GET", headers = headers, redirections = redirections - 1) - response.previous = Response(info) - response.previous.fromcache = True - else: - # Determine our course of action: - # Is the cached entry fresh or stale? - # Has the client requested a non-cached response? - # - # There seems to be three possible answers: - # 1. [FRESH] Return the cache entry w/o doing a GET - # 2. [STALE] Do the GET (but add in cache validators if available) - # 3. [TRANSPARENT] Do a GET w/o any cache validators (Cache-Control: no-cache) on the request - entry_disposition = _entry_disposition(info, headers) - - if entry_disposition == "FRESH": - if not cached_value: - info['status'] = '504' - content = "" - response = Response(info) - if cached_value: - response.fromcache = True - return (response, content) - - if entry_disposition == "STALE": - if info.has_key('etag') and not self.ignore_etag and not 'if-none-match' in headers: - headers['if-none-match'] = info['etag'] - if info.has_key('last-modified') and not 'last-modified' in headers: - headers['if-modified-since'] = info['last-modified'] - elif entry_disposition == "TRANSPARENT": - pass - - (response, new_content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey) - - if response.status == 304 and method == "GET": - # Rewrite the cache entry with the new end-to-end headers - # Take all headers that are in response - # and overwrite their values in info. - # unless they are hop-by-hop, or are listed in the connection header. - - for key in _get_end2end_headers(response): - info[key] = response[key] - merged_response = Response(info) - if hasattr(response, "_stale_digest"): - merged_response._stale_digest = response._stale_digest - _updateCache(headers, merged_response, content, self.cache, cachekey) - response = merged_response - response.status = 200 - response.fromcache = True - - elif response.status == 200: - content = new_content - else: - self.cache.delete(cachekey) - content = new_content - else: - cc = _parse_cache_control(headers) - if cc.has_key('only-if-cached'): - info['status'] = '504' - response = Response(info) - content = "" - else: - (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey) - except Exception, e: - if self.force_exception_to_status_code: - if isinstance(e, HttpLib2ErrorWithResponse): - response = e.response - content = e.content - response.status = 500 - response.reason = str(e) - elif isinstance(e, socket.timeout): - content = "Request Timeout" - response = Response( { - "content-type": "text/plain", - "status": "408", - "content-length": len(content) - }) - response.reason = "Request Timeout" - else: - content = str(e) - response = Response( { - "content-type": "text/plain", - "status": "400", - "content-length": len(content) - }) - response.reason = "Bad Request" - else: - raise - - - return (response, content) - - - -class Response(dict): - """An object more like email.Message than httplib.HTTPResponse.""" - - """Is this response from our local cache""" - fromcache = False - - """HTTP protocol version used by server. 10 for HTTP/1.0, 11 for HTTP/1.1. """ - version = 11 - - "Status code returned by server. " - status = 200 - - """Reason phrase returned by server.""" - reason = "Ok" - - previous = None - - def __init__(self, info): - # info is either an email.Message or - # an httplib.HTTPResponse object. - if isinstance(info, httplib.HTTPResponse): - for key, value in info.getheaders(): - self[key.lower()] = value - self.status = info.status - self['status'] = str(self.status) - self.reason = info.reason - self.version = info.version - elif isinstance(info, email.Message.Message): - for key, value in info.items(): - self[key] = value - self.status = int(self['status']) - else: - for key, value in info.iteritems(): - self[key] = value - self.status = int(self.get('status', self.status)) - - - def __getattr__(self, name): - if name == 'dict': - return self - else: - raise AttributeError, name diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/cacerts.txt.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/cacerts.txt.svn-base deleted file mode 100644 index e65f21ddf6f30fe7f54e32182a34ed272d067a66..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/cacerts.txt.svn-base +++ /dev/null @@ -1,633 +0,0 @@ -# Certifcate Authority certificates for validating SSL connections. -# -# This file contains PEM format certificates generated from -# http://mxr.mozilla.org/seamonkey/source/security/nss/lib/ckfw/builtins/certdata.txt -# -# ***** BEGIN LICENSE BLOCK ***** -# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# The Original Code is the Netscape security libraries. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1994-2000 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 2 or later (the "GPL"), or -# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -# in which case the provisions of the GPL or the LGPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL or the LGPL, and not to allow others to -# use your version of this file under the terms of the MPL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL or the LGPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the MPL, the GPL or the LGPL. -# -# ***** END LICENSE BLOCK ***** - -Verisign/RSA Secure Server CA -============================= - ------BEGIN CERTIFICATE----- -MIICNDCCAaECEAKtZn5ORf5eV288mBle3cAwDQYJKoZIhvcNAQECBQAwXzELMAkG -A1UEBhMCVVMxIDAeBgNVBAoTF1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMuMS4wLAYD -VQQLEyVTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk0 -MTEwOTAwMDAwMFoXDTEwMDEwNzIzNTk1OVowXzELMAkGA1UEBhMCVVMxIDAeBgNV -BAoTF1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMuMS4wLAYDVQQLEyVTZWN1cmUgU2Vy -dmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGbMA0GCSqGSIb3DQEBAQUAA4GJ -ADCBhQJ+AJLOesGugz5aqomDV6wlAXYMra6OLDfO6zV4ZFQD5YRAUcm/jwjiioII -0haGN1XpsSECrXZogZoFokvJSyVmIlZsiAeP94FZbYQHZXATcXY+m3dM41CJVphI -uR2nKRoTLkoRWZweFdVJVCxzOmmCsZc5nG1wZ0jl3S3WyB57AgMBAAEwDQYJKoZI -hvcNAQECBQADfgBl3X7hsuyw4jrg7HFGmhkRuNPHoLQDQCYCPgmc4RKz0Vr2N6W3 -YQO2WxZpO8ZECAyIUwxrl0nHPjXcbLm7qt9cuzovk2C2qUtN8iD3zV9/ZHuO3ABc -1/p3yjkWWW8O6tO1g39NTUJWdrTJXwT4OPjr0l91X817/OWOgHz8UA== ------END CERTIFICATE----- - -Thawte Personal Basic CA -======================== - ------BEGIN CERTIFICATE----- -MIIDITCCAoqgAwIBAgIBADANBgkqhkiG9w0BAQQFADCByzELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMRowGAYD -VQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBT -ZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3RlIFBlcnNvbmFsIEJhc2lj -IENBMSgwJgYJKoZIhvcNAQkBFhlwZXJzb25hbC1iYXNpY0B0aGF3dGUuY29tMB4X -DTk2MDEwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgcsxCzAJBgNVBAYTAlpBMRUw -EwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEaMBgGA1UE -ChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2Vy -dmljZXMgRGl2aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQZXJzb25hbCBCYXNpYyBD -QTEoMCYGCSqGSIb3DQEJARYZcGVyc29uYWwtYmFzaWNAdGhhd3RlLmNvbTCBnzAN -BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAvLyTU23AUE+CFeZIlDWmWr5vQvoPR+53 -dXLdjUmbllegeNTKP1GzaQuRdhciB5dqxFGTS+CN7zeVoQxN2jSQHReJl+A1OFdK -wPQIcOk8RHtQfmGakOMj04gRRif1CwcOu93RfyAKiLlWCy4cgNrx454p7xS9CkT7 -G1sY0b8jkyECAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQQF -AAOBgQAt4plrsD16iddZopQBHyvdEktTwq1/qqcAXJFAVyVKOKqEcLnZgA+le1z7 -c8a914phXAPjLSeoF+CEhULcXpvGt7Jtu3Sv5D/Lp7ew4F2+eIMllNLbgQ95B21P -9DkVWlIBe94y1k049hJcBlDfBVu9FEuh3ym6O0GN92NWod8isQ== ------END CERTIFICATE----- - -Thawte Personal Premium CA -========================== - ------BEGIN CERTIFICATE----- -MIIDKTCCApKgAwIBAgIBADANBgkqhkiG9w0BAQQFADCBzzELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMRowGAYD -VQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBT -ZXJ2aWNlcyBEaXZpc2lvbjEjMCEGA1UEAxMaVGhhd3RlIFBlcnNvbmFsIFByZW1p -dW0gQ0ExKjAoBgkqhkiG9w0BCQEWG3BlcnNvbmFsLXByZW1pdW1AdGhhd3RlLmNv -bTAeFw05NjAxMDEwMDAwMDBaFw0yMDEyMzEyMzU5NTlaMIHPMQswCQYDVQQGEwJa -QTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xGjAY -BgNVBAoTEVRoYXd0ZSBDb25zdWx0aW5nMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9u -IFNlcnZpY2VzIERpdmlzaW9uMSMwIQYDVQQDExpUaGF3dGUgUGVyc29uYWwgUHJl -bWl1bSBDQTEqMCgGCSqGSIb3DQEJARYbcGVyc29uYWwtcHJlbWl1bUB0aGF3dGUu -Y29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDJZtn4B0TPuYwu8KHvE0Vs -Bd/eJxZRNkERbGw77f4QfRKe5ZtCmv5gMcNmt3M6SK5O0DI3lIi1DbbZ8/JE2dWI -Et12TfIa/G8jHnrx2JhFTgcQ7xZC0EN1bUre4qrJMf8fAHB8Zs8QJQi6+u4A6UYD -ZicRFTuqW/KY3TZCstqIdQIDAQABoxMwETAPBgNVHRMBAf8EBTADAQH/MA0GCSqG -SIb3DQEBBAUAA4GBAGk2ifc0KjNyL2071CKyuG+axTZmDhs8obF1Wub9NdP4qPIH -b4Vnjt4rueIXsDqg8A6iAJrf8xQVbrvIhVqYgPn/vnQdPfP+MCXRNzRn+qVxeTBh -KXLA4CxM+1bkOqhv5TJZUtt1KFBZDPgLGeSs2a+WjS9Q2wfD6h+rM+D1KzGJ ------END CERTIFICATE----- - -Thawte Personal Freemail CA -=========================== - ------BEGIN CERTIFICATE----- -MIIDLTCCApagAwIBAgIBADANBgkqhkiG9w0BAQQFADCB0TELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMRowGAYD -VQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBT -ZXJ2aWNlcyBEaXZpc2lvbjEkMCIGA1UEAxMbVGhhd3RlIFBlcnNvbmFsIEZyZWVt -YWlsIENBMSswKQYJKoZIhvcNAQkBFhxwZXJzb25hbC1mcmVlbWFpbEB0aGF3dGUu -Y29tMB4XDTk2MDEwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgdExCzAJBgNVBAYT -AlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEa -MBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRp -b24gU2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBG -cmVlbWFpbCBDQTErMCkGCSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhh -d3RlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA1GnX1LCUZFtx6UfY -DFG26nKRsIRefS0Nj3sS34UldSh0OkIsYyeflXtL734Zhx2G6qPduc6WZBrCFG5E -rHzmj+hND3EfQDimAKOHePb5lIZererAXnbr2RSjXW56fAylS1V/Bhkpf56aJtVq -uzgkCGqYx7Hao5iR/Xnb5VrEHLkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zAN -BgkqhkiG9w0BAQQFAAOBgQDH7JJ+Tvj1lqVnYiqk8E0RYNBvjWBYYawmu1I1XAjP -MPuoSpaKH2JCI4wXD/S6ZJwXrEcp352YXtJsYHFcoqzceePnbgBHH7UNKOgCneSa -/RP0ptl8sfjcXyMmCZGAc9AUG95DqYMl8uacLxXK/qarigd1iwzdUYRr5PjRznei -gQ== ------END CERTIFICATE----- - -Thawte Server CA -================ - ------BEGIN CERTIFICATE----- -MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD -VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv -biBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEm -MCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wHhcNOTYwODAx -MDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkGA1UEBhMCWkExFTATBgNVBAgT -DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3 -dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNl -cyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3 -DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD -gY0AMIGJAoGBANOkUG7I/1Zr5s9dtuoMaHVHoqrC2oQl/Kj0R1HahbUgdJSGHg91 -yekIYfUGbTBuFRkC6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg71CcEJRCX -L+eQbcAoQpnXTEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGj -EzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG -7oWDTSEwjsrZqG9JGubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6e -QNuozDJ0uW8NxuOzRAvZim+aKZuZGCg70eNAKJpaPNW15yAbi8qkq43pUdniTCxZ -qdq5snUb9kLy78fyGPmJvKP/iiMucEc= ------END CERTIFICATE----- - -Thawte Premium Server CA -======================== - ------BEGIN CERTIFICATE----- -MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD -VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv -biBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3RlIFByZW1pdW0gU2Vy -dmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZlckB0aGF3dGUuY29t -MB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYTAlpB -MRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsG -A1UEChMUVGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRp -b24gU2VydmljZXMgRGl2aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNl -cnZlciBDQTEoMCYGCSqGSIb3DQEJARYZcHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNv -bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2aovXwlue2oFBYo847kkE -VdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIhUdib0GfQ -ug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMR -uHM/qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG -9w0BAQQFAAOBgQAmSCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUI -hfzJATj/Tb7yFkJD57taRvvBxhEf8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JM -pAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7tUCemDaYj+bvLpgcUQg== ------END CERTIFICATE----- - -Equifax Secure CA -================= - ------BEGIN CERTIFICATE----- -MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV -UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy -dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1 -MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VxdWlmYXgxLTArBgNVBAsTJEVx -dWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCBnzANBgkqhkiG9w0B -AQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPRfM6f -BeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+A -cJkVV5MW8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kC -AwEAAaOCAQkwggEFMHAGA1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQ -MA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlm -aWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTgw -ODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvSspXXR9gj -IBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQF -MAMBAf8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUA -A4GBAFjOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y -7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh -1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4 ------END CERTIFICATE----- - -Verisign Class 1 Public Primary Certification Authority -======================================================= - ------BEGIN CERTIFICATE----- -MIICPTCCAaYCEQDNun9W8N/kvFT+IqyzcqpVMA0GCSqGSIb3DQEBAgUAMF8xCzAJ -BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE3MDUGA1UECxMuQ2xh -c3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05 -NjAxMjkwMDAwMDBaFw0yODA4MDEyMzU5NTlaMF8xCzAJBgNVBAYTAlVTMRcwFQYD -VQQKEw5WZXJpU2lnbiwgSW5jLjE3MDUGA1UECxMuQ2xhc3MgMSBQdWJsaWMgUHJp -bWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCBnzANBgkqhkiG9w0BAQEFAAOB -jQAwgYkCgYEA5Rm/baNWYS2ZSHH2Z965jeu3noaACpEO+jglr0aIguVzqKCbJF0N -H8xlbgyw0FaEGIeaBpsQoXPftFg5a27B9hXVqKg/qhIGjTGsf7A01480Z4gJzRQR -4k5FVmkfeAKA2txHkSm7NsljXMXg1y2He6G3MrB7MLoqLzGq7qNn2tsCAwEAATAN -BgkqhkiG9w0BAQIFAAOBgQBMP7iLxmjf7kMzDl3ppssHhE16M/+SG/Q2rdiVIjZo -EWx8QszznC7EBz8UsA9P/5CSdvnivErpj82ggAr3xSnxgiJduLHdgSOjeyUVRjB5 -FvjqBUuUfx3CHMjjt/QQQDwTw18fU+hI5Ia0e6E1sHslurjTjqs/OJ0ANACY89Fx -lA== ------END CERTIFICATE----- - -Verisign Class 2 Public Primary Certification Authority -======================================================= - ------BEGIN CERTIFICATE----- -MIICPDCCAaUCEC0b/EoXjaOR6+f/9YtFvgswDQYJKoZIhvcNAQECBQAwXzELMAkG -A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz -cyAyIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 -MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV -BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAyIFB1YmxpYyBQcmlt -YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN -ADCBiQKBgQC2WoujDWojg4BrzzmH9CETMwZMJaLtVRKXxaeAufqDwSCg+i8VDXyh -YGt+eSz6Bg86rvYbb7HS/y8oUl+DfUvEerf4Zh+AVPy3wo5ZShRXRtGak75BkQO7 -FYCTXOvnzAhsPz6zSvz/S2wj1VCCJkQZjiPDceoZJEcEnnW/yKYAHwIDAQABMA0G -CSqGSIb3DQEBAgUAA4GBAIobK/o5wXTXXtgZZKJYSi034DNHD6zt96rbHuSLBlxg -J8pFUs4W7z8GZOeUaHxgMxURaa+dYo2jA1Rrpr7l7gUYYAS/QoD90KioHgE796Nc -r6Pc5iaAIzy4RHT3Cq5Ji2F4zCS/iIqnDupzGUH9TQPwiNHleI2lKk/2lw0Xd8rY ------END CERTIFICATE----- - -Verisign Class 3 Public Primary Certification Authority -======================================================= - ------BEGIN CERTIFICATE----- -MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzELMAkG -A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz -cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 -MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV -BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt -YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN -ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE -BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is -I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G -CSqGSIb3DQEBAgUAA4GBALtMEivPLCYATxQT3ab7/AoRhIzzKBxnki98tsX63/Do -lbwdj2wsqFHMc9ikwFPwTtYmwHYBV4GSXiHx0bH/59AhWM1pF+NEHJwZRDmJXNyc -AA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2OmufTqj/ZA1k ------END CERTIFICATE----- - -Verisign Class 1 Public Primary Certification Authority - G2 -============================================================ - ------BEGIN CERTIFICATE----- -MIIDAjCCAmsCEEzH6qqYPnHTkxD4PTqJkZIwDQYJKoZIhvcNAQEFBQAwgcExCzAJ -BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh -c3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy -MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp -emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X -DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw -FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMSBQdWJsaWMg -UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo -YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 -MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB -AQUAA4GNADCBiQKBgQCq0Lq+Fi24g9TK0g+8djHKlNgdk4xWArzZbxpvUjZudVYK -VdPfQ4chEWWKfo+9Id5rMj8bhDSVBZ1BNeuS65bdqlk/AVNtmU/t5eIqWpDBucSm -Fc/IReumXY6cPvBkJHalzasab7bYe1FhbqZ/h8jit+U03EGI6glAvnOSPWvndQID -AQABMA0GCSqGSIb3DQEBBQUAA4GBAKlPww3HZ74sy9mozS11534Vnjty637rXC0J -h9ZrbWB85a7FkCMMXErQr7Fd88e2CtvgFZMN3QO8x3aKtd1Pw5sTdbgBwObJW2ul -uIncrKTdcu1OofdPvAbT6shkdHvClUGcZXNY8ZCaPGqxmMnEh7zPRW1F4m4iP/68 -DzFc6PLZ ------END CERTIFICATE----- - -Verisign Class 2 Public Primary Certification Authority - G2 -============================================================ - ------BEGIN CERTIFICATE----- -MIIDAzCCAmwCEQC5L2DMiJ+hekYJuFtwbIqvMA0GCSqGSIb3DQEBBQUAMIHBMQsw -CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0Ns -YXNzIDIgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH -MjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9y -aXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazAe -Fw05ODA1MTgwMDAwMDBaFw0yODA4MDEyMzU5NTlaMIHBMQswCQYDVQQGEwJVUzEX -MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0NsYXNzIDIgUHVibGlj -IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjE6MDgGA1UECxMx -KGMpIDE5OTggVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s -eTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazCBnzANBgkqhkiG9w0B -AQEFAAOBjQAwgYkCgYEAp4gBIXQs5xoD8JjhlzwPIQjxnNuX6Zr8wgQGE75fUsjM -HiwSViy4AWkszJkfrbCWrnkE8hM5wXuYuggs6MKEEyyqaekJ9MepAqRCwiNPStjw -DqL7MWzJ5m+ZJwf15vRMeJ5t60aG+rmGyVTyssSv1EYcWskVMP8NbPUtDm3Of3cC -AwEAATANBgkqhkiG9w0BAQUFAAOBgQByLvl/0fFx+8Se9sVeUYpAmLho+Jscg9ji -nb3/7aHmZuovCfTK1+qlK5X2JGCGTUQug6XELaDTrnhpb3LabK4I8GOSN+a7xDAX -rXfMSTWqz9iP0b63GJZHc2pUIjRkLbYWm1lbtFFZOrMLFPQS32eg9K0yZF6xRnIn -jBJ7xUS0rg== ------END CERTIFICATE----- - -Verisign Class 3 Public Primary Certification Authority - G2 -============================================================ - ------BEGIN CERTIFICATE----- -MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJ -BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh -c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy -MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp -emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X -DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw -FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMg -UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo -YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 -MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB -AQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4 -pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg0 -13gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwID -AQABMA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSk -U01UbSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i -F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpY -oJ2daZH9 ------END CERTIFICATE----- - -Verisign Class 4 Public Primary Certification Authority - G2 -============================================================ - ------BEGIN CERTIFICATE----- -MIIDAjCCAmsCEDKIjprS9esTR/h/xCA3JfgwDQYJKoZIhvcNAQEFBQAwgcExCzAJ -BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh -c3MgNCBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy -MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp -emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X -DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw -FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgNCBQdWJsaWMg -UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo -YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 -MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB -AQUAA4GNADCBiQKBgQC68OTP+cSuhVS5B1f5j8V/aBH4xBewRNzjMHPVKmIquNDM -HO0oW369atyzkSTKQWI8/AIBvxwWMZQFl3Zuoq29YRdsTjCG8FE3KlDHqGKB3FtK -qsGgtG7rL+VXxbErQHDbWk2hjh+9Ax/YA9SPTJlxvOKCzFjomDqG04Y48wApHwID -AQABMA0GCSqGSIb3DQEBBQUAA4GBAIWMEsGnuVAVess+rLhDityq3RS6iYF+ATwj -cSGIL4LcY/oCRaxFWdcqWERbt5+BO5JoPeI3JPV7bI92NZYJqFmduc4jq3TWg/0y -cyfYaT5DdPauxYma51N86Xv2S/PBZYPejYqcPIiNOVn8qj8ijaHBZlCBckztImRP -T8qAkbYp ------END CERTIFICATE----- - -Verisign Class 1 Public Primary Certification Authority - G3 -============================================================ - ------BEGIN CERTIFICATE----- -MIIEGjCCAwICEQCLW3VWhFSFCwDPrzhIzrGkMA0GCSqGSIb3DQEBBQUAMIHKMQsw -CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl -cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu -LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT -aWduIENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp -dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD -VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT -aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ -bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu -IENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg -LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN2E1Lm0+afY8wR4 -nN493GwTFtl63SRRZsDHJlkNrAYIwpTRMx/wgzUfbhvI3qpuFU5UJ+/EbRrsC+MO -8ESlV8dAWB6jRx9x7GD2bZTIGDnt/kIYVt/kTEkQeE4BdjVjEjbdZrwBBDajVWjV -ojYJrKshJlQGrT/KFOCsyq0GHZXi+J3x4GD/wn91K0zM2v6HmSHquv4+VNfSWXjb -PG7PoBMAGrgnoeS+Z5bKoMWznN3JdZ7rMJpfo83ZrngZPyPpXNspva1VyBtUjGP2 -6KbqxzcSXKMpHgLZ2x87tNcPVkeBFQRKr4Mn0cVYiMHd9qqnoxjaaKptEVHhv2Vr -n5Z20T0CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAq2aN17O6x5q25lXQBfGfMY1a -qtmqRiYPce2lrVNWYgFHKkTp/j90CxObufRNG7LRX7K20ohcs5/Ny9Sn2WCVhDr4 -wTcdYcrnsMXlkdpUpqwxga6X3s0IrLjAl4B/bnKk52kTlWUfxJM8/XmPBNQ+T+r3 -ns7NZ3xPZQL/kYVUc8f/NveGLezQXk//EZ9yBta4GvFMDSZl4kSAHsef493oCtrs -pSCAaWihT37ha88HQfqDjrw43bAuEbFrskLMmrz5SCJ5ShkPshw+IHTZasO+8ih4 -E1Z5T21Q6huwtVexN2ZYI/PcD98Kh8TvhgXVOBRgmaNL3gaWcSzy27YfpO8/7g== ------END CERTIFICATE----- - -Verisign Class 2 Public Primary Certification Authority - G3 -============================================================ - ------BEGIN CERTIFICATE----- -MIIEGTCCAwECEGFwy0mMX5hFKeewptlQW3owDQYJKoZIhvcNAQEFBQAwgcoxCzAJ -BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVy -aVNpZ24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24s -IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNp -Z24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 -eSAtIEczMB4XDTk5MTAwMTAwMDAwMFoXDTM2MDcxNjIzNTk1OVowgcoxCzAJBgNV -BAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNp -Z24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIElu -Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24g -Q2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAt -IEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArwoNwtUs22e5LeWU -J92lvuCwTY+zYVY81nzD9M0+hsuiiOLh2KRpxbXiv8GmR1BeRjmL1Za6tW8UvxDO -JxOeBUebMXoT2B/Z0wI3i60sR/COgQanDTAM6/c8DyAd3HJG7qUCyFvDyVZpTMUY -wZF7C9UTAJu878NIPkZgIIUq1ZC2zYugzDLdt/1AVbJQHFauzI13TccgTacxdu9o -koqQHgiBVrKtaaNS0MscxCM9H5n+TOgWY47GCI72MfbS+uV23bUckqNJzc0BzWjN -qWm6o+sdDZykIKbBoMXRRkwXbdKsZj+WjOCE1Db/IlnF+RFgqF8EffIa9iVCYQ/E -Srg+iQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQA0JhU8wI1NQ0kdvekhktdmnLfe -xbjQ5F1fdiLAJvmEOjr5jLX77GDx6M4EsMjdpwOPMPOY36TmpDHf0xwLRtxyID+u -7gU8pDM/CzmscHhzS5kr3zDCVLCoO1Wh/hYozUK9dG6A2ydEp85EXdQbkJgNHkKU -sQAsBNB0owIFImNjzYO1+8FtYmtpdf1dcEG59b98377BMnMiIYtYgXsVkXq642RI -sH/7NiXaldDxJBQX3RiAa0YjOVT1jmIJBB2UkKab5iXiQkWquJCtvgiPqQtCGJTP -cjnhsUPgKM+351psE2tJs//jGHyJizNdrDPXp/naOlXJWBD5qu9ats9LS98q ------END CERTIFICATE----- - -Verisign Class 3 Public Primary Certification Authority - G3 -============================================================ - ------BEGIN CERTIFICATE----- -MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQsw -CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl -cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu -LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT -aWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp -dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD -VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT -aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ -bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu -IENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg -LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMu6nFL8eB8aHm8b -N3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1EUGO+i2t -KmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGu -kxUccLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBm -CC+Vk7+qRy+oRpfwEuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJ -Xwzw3sJ2zq/3avL6QaaiMxTJ5Xpj055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWu -imi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAERSWwauSCPc/L8my/uRan2Te -2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5fj267Cz3qWhMe -DGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC -/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565p -F4ErWjfJXir0xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGt -TxzhT5yvDwyd93gN2PQ1VoDat20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== ------END CERTIFICATE----- - -Verisign Class 4 Public Primary Certification Authority - G3 -============================================================ - ------BEGIN CERTIFICATE----- -MIIEGjCCAwICEQDsoKeLbnVqAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQUAMIHKMQsw -CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl -cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu -LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT -aWduIENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp -dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD -VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT -aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ -bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu -IENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg -LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK3LpRFpxlmr8Y+1 -GQ9Wzsy1HyDkniYlS+BzZYlZ3tCD5PUPtbut8XzoIfzk6AzufEUiGXaStBO3IFsJ -+mGuqPKljYXCKtbeZjbSmwL0qJJgfJxptI8kHtCGUvYynEFYHiK9zUVilQhu0Gbd -U6LM8BDcVHOLBKFGMzNcF0C5nk3T875Vg+ixiY5afJqWIpA7iCXy0lOIAgwLePLm -NxdLMEYH5IBtptiWLugs+BGzOA1mppvqySNb247i8xOOGlktqgLw7KSHZtzBP/XY -ufTsgsbSPZUd5cBPhMnZo0QoBmrXRazwa2rvTl/4EYIeOGM0ZlDUPpNz+jDDZq3/ -ky2X7wMCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAj/ola09b5KROJ1WrIhVZPMq1 -CtRK26vdoV9TxaBXOcLORyu+OshWv8LZJxA6sQU8wHcxuzrTBXttmhwwjIDLk5Mq -g6sFUYICABFna/OIYUdfA5PVWw3g8dShMjWFsjrbsIKr0csKvE+MW8VLADsfKoKm -fjaF3H48ZwC15DtS4KjrXRX5xm3wrR0OhbepmnMUWluPQSjA1egtTaRezarZ7c7c -2NU8Qh0XwRJdRTjDOPP8hS6DRkiy1yBfkjaP53kPmF6Z6PDQpLv1U70qzlmwr25/ -bLvSHgCwIe34QWKCudiyxLtGUPMxxY8BqHTr9Xgn2uf3ZkPznoM+IKrDNWCRzg== ------END CERTIFICATE----- - -Equifax Secure Global eBusiness CA -================================== - ------BEGIN CERTIFICATE----- -MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEc -MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBT -ZWN1cmUgR2xvYmFsIGVCdXNpbmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIw -MDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0VxdWlmYXggU2Vj -dXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEdsb2JhbCBlQnVzaW5l -c3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRVPEnC -UdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc -58O/gGzNqfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/ -o5brhTMhHD4ePmBudpxnhcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAH -MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUvqigdHJQa0S3ySPY+6j/s1dr -aGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hsMA0GCSqGSIb3DQEBBAUA -A4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okENI7SS+RkA -Z70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv -8qIYNMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV ------END CERTIFICATE----- - -Equifax Secure eBusiness CA 1 -============================= - ------BEGIN CERTIFICATE----- -MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEc -MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBT -ZWN1cmUgZUJ1c2luZXNzIENBLTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQw -MDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5j -LjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENBLTEwgZ8wDQYJ -KoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ1MRo -RvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBu -WqDZQu4aIZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKw -Env+j6YDAgMBAAGjZjBkMBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTAD -AQH/MB8GA1UdIwQYMBaAFEp4MlIR21kWNl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRK -eDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQFAAOBgQB1W6ibAxHm6VZM -zfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5lSE/9dR+ -WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN -/Bf+KpYrtWKmpj29f5JZzVoqgrI3eQ== ------END CERTIFICATE----- - -Equifax Secure eBusiness CA 2 -============================= - ------BEGIN CERTIFICATE----- -MIIDIDCCAomgAwIBAgIEN3DPtTANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV -UzEXMBUGA1UEChMORXF1aWZheCBTZWN1cmUxJjAkBgNVBAsTHUVxdWlmYXggU2Vj -dXJlIGVCdXNpbmVzcyBDQS0yMB4XDTk5MDYyMzEyMTQ0NVoXDTE5MDYyMzEyMTQ0 -NVowTjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkVxdWlmYXggU2VjdXJlMSYwJAYD -VQQLEx1FcXVpZmF4IFNlY3VyZSBlQnVzaW5lc3MgQ0EtMjCBnzANBgkqhkiG9w0B -AQEFAAOBjQAwgYkCgYEA5Dk5kx5SBhsoNviyoynF7Y6yEb3+6+e0dMKP/wXn2Z0G -vxLIPw7y1tEkshHe0XMJitSxLJgJDR5QRrKDpkWNYmi7hRsgcDKqQM2mll/EcTc/ -BPO3QSQ5BxoeLmFYoBIL5aXfxavqN3HMHMg3OrmXUqesxWoklE6ce8/AatbfIb0C -AwEAAaOCAQkwggEFMHAGA1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEX -MBUGA1UEChMORXF1aWZheCBTZWN1cmUxJjAkBgNVBAsTHUVxdWlmYXggU2VjdXJl -IGVCdXNpbmVzcyBDQS0yMQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTkw -NjIzMTIxNDQ1WjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUUJ4L6q9euSBIplBq -y/3YIHqngnYwHQYDVR0OBBYEFFCeC+qvXrkgSKZQasv92CB6p4J2MAwGA1UdEwQF -MAMBAf8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUA -A4GBAAyGgq3oThr1jokn4jVYPSm0B482UJW/bsGe68SQsoWou7dC4A8HOd/7npCy -0cE+U58DRLB+S/Rv5Hwf5+Kx5Lia78O9zt4LMjTZ3ijtM2vE1Nc9ElirfQkty3D1 -E4qUoSek1nDFbZS1yX2doNLGCEnZZpum0/QL3MUmV+GRMOrN ------END CERTIFICATE----- - -Thawte Time Stamping CA -======================= - ------BEGIN CERTIFICATE----- -MIICoTCCAgqgAwIBAgIBADANBgkqhkiG9w0BAQQFADCBizELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTEUMBIGA1UEBxMLRHVyYmFudmlsbGUxDzAN -BgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUVGhhd3RlIENlcnRpZmljYXRpb24xHzAd -BgNVBAMTFlRoYXd0ZSBUaW1lc3RhbXBpbmcgQ0EwHhcNOTcwMTAxMDAwMDAwWhcN -MjAxMjMxMjM1OTU5WjCBizELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4g -Q2FwZTEUMBIGA1UEBxMLRHVyYmFudmlsbGUxDzANBgNVBAoTBlRoYXd0ZTEdMBsG -A1UECxMUVGhhd3RlIENlcnRpZmljYXRpb24xHzAdBgNVBAMTFlRoYXd0ZSBUaW1l -c3RhbXBpbmcgQ0EwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANYrWHhhRYZT -6jR7UZztsOYuGA7+4F+oJ9O0yeB8WU4WDnNUYMF/9p8u6TqFJBU820cEY8OexJQa -Wt9MevPZQx08EHp5JduQ/vBR5zDWQQD9nyjfeb6Uu522FOMjhdepQeBMpHmwKxqL -8vg7ij5FrHGSALSQQZj7X+36ty6K+Ig3AgMBAAGjEzARMA8GA1UdEwEB/wQFMAMB -Af8wDQYJKoZIhvcNAQEEBQADgYEAZ9viwuaHPUCDhjc1fR/OmsMMZiCouqoEiYbC -9RAIDb/LogWK0E02PvTX72nGXuSwlG9KuefeW4i2e9vjJ+V2w/A1wcu1J5szedyQ -pgCed/r8zSeUQhac0xxo7L9c3eWpexAKMnRUEzGLhQOEkbdYATAUOK8oyvyxUBkZ -CayJSdM= ------END CERTIFICATE----- - -thawte Primary Root CA -====================== - ------BEGIN CERTIFICATE----- -MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCB -qTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf -Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw -MDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNV -BAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3MDAwMDAwWhcNMzYw -NzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5j -LjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYG -A1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl -IG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqG -SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsoPD7gFnUnMekz52hWXMJEEUMDSxuaPFs -W0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ1CRfBsDMRJSUjQJib+ta -3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGcq/gcfomk -6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6 -Sk/KaAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94J -NqR32HuHUETVPm4pafs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBA -MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XP -r87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUFAAOCAQEAeRHAS7ORtvzw6WfU -DW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeEuzLlQRHAd9mz -YJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX -xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2 -/qxAeeWsEG89jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/ -LHbTY5xZ3Y+m4Q6gLkH3LpVHz7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7 -jVaMaA== ------END CERTIFICATE----- - -VeriSign Class 3 Public Primary Certification Authority - G5 -============================================================ - ------BEGIN CERTIFICATE----- -MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCB -yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL -ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJp -U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxW -ZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0 -aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCByjEL -MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW -ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2ln -biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp -U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y -aXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvJAgIKXo1 -nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKzj/i5Vbex -t0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIz -SdhDY2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQG -BO+QueQA5N06tRn/Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+ -rCpSx4/VBEnkjWNHiDxpg8v+R70rfk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/ -NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8E -BAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEwHzAH -BgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy -aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKv -MzEzMA0GCSqGSIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzE -p6B4Eq1iDkVwZMXnl2YtmAl+X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y -5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKEKQsTb47bDN0lAtukixlE0kF6BWlK -WE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiCKm0oHw0LxOXnGiYZ -4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vEZV8N -hnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq ------END CERTIFICATE----- - -Entrust.net Secure Server Certification Authority -================================================= - ------BEGIN CERTIFICATE----- -MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC -VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u -ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc -KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u -ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05OTA1 -MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIGA1UE -ChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5j -b3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF -bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUg -U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUA -A4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/ -I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3 -wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OC -AdcwggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHb -oIHYpIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5 -BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1p -dHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVk -MTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp -b24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu -dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0 -MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8Bdi -E1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAa -MAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI -hvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN -95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd -2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= ------END CERTIFICATE----- diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/iri2uri.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/iri2uri.py.svn-base deleted file mode 100644 index 70667edf8586540c56e23538a585f360ef3b44b3..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/iri2uri.py.svn-base +++ /dev/null @@ -1,110 +0,0 @@ -""" -iri2uri - -Converts an IRI to a URI. - -""" -__author__ = "Joe Gregorio (joe@bitworking.org)" -__copyright__ = "Copyright 2006, Joe Gregorio" -__contributors__ = [] -__version__ = "1.0.0" -__license__ = "MIT" -__history__ = """ -""" - -import urlparse - - -# Convert an IRI to a URI following the rules in RFC 3987 -# -# The characters we need to enocde and escape are defined in the spec: -# -# iprivate = %xE000-F8FF / %xF0000-FFFFD / %x100000-10FFFD -# ucschar = %xA0-D7FF / %xF900-FDCF / %xFDF0-FFEF -# / %x10000-1FFFD / %x20000-2FFFD / %x30000-3FFFD -# / %x40000-4FFFD / %x50000-5FFFD / %x60000-6FFFD -# / %x70000-7FFFD / %x80000-8FFFD / %x90000-9FFFD -# / %xA0000-AFFFD / %xB0000-BFFFD / %xC0000-CFFFD -# / %xD0000-DFFFD / %xE1000-EFFFD - -escape_range = [ - (0xA0, 0xD7FF ), - (0xE000, 0xF8FF ), - (0xF900, 0xFDCF ), - (0xFDF0, 0xFFEF), - (0x10000, 0x1FFFD ), - (0x20000, 0x2FFFD ), - (0x30000, 0x3FFFD), - (0x40000, 0x4FFFD ), - (0x50000, 0x5FFFD ), - (0x60000, 0x6FFFD), - (0x70000, 0x7FFFD ), - (0x80000, 0x8FFFD ), - (0x90000, 0x9FFFD), - (0xA0000, 0xAFFFD ), - (0xB0000, 0xBFFFD ), - (0xC0000, 0xCFFFD), - (0xD0000, 0xDFFFD ), - (0xE1000, 0xEFFFD), - (0xF0000, 0xFFFFD ), - (0x100000, 0x10FFFD) -] - -def encode(c): - retval = c - i = ord(c) - for low, high in escape_range: - if i < low: - break - if i >= low and i <= high: - retval = "".join(["%%%2X" % ord(o) for o in c.encode('utf-8')]) - break - return retval - - -def iri2uri(uri): - """Convert an IRI to a URI. Note that IRIs must be - passed in a unicode strings. That is, do not utf-8 encode - the IRI before passing it into the function.""" - if isinstance(uri ,unicode): - (scheme, authority, path, query, fragment) = urlparse.urlsplit(uri) - authority = authority.encode('idna') - # For each character in 'ucschar' or 'iprivate' - # 1. encode as utf-8 - # 2. then %-encode each octet of that utf-8 - uri = urlparse.urlunsplit((scheme, authority, path, query, fragment)) - uri = "".join([encode(c) for c in uri]) - return uri - -if __name__ == "__main__": - import unittest - - class Test(unittest.TestCase): - - def test_uris(self): - """Test that URIs are invariant under the transformation.""" - invariant = [ - u"ftp://ftp.is.co.za/rfc/rfc1808.txt", - u"http://www.ietf.org/rfc/rfc2396.txt", - u"ldap://[2001:db8::7]/c=GB?objectClass?one", - u"mailto:John.Doe@example.com", - u"news:comp.infosystems.www.servers.unix", - u"tel:+1-816-555-1212", - u"telnet://192.0.2.16:80/", - u"urn:oasis:names:specification:docbook:dtd:xml:4.1.2" ] - for uri in invariant: - self.assertEqual(uri, iri2uri(uri)) - - def test_iri(self): - """ Test that the right type of escaping is done for each part of the URI.""" - self.assertEqual("http://xn--o3h.com/%E2%98%84", iri2uri(u"http://\N{COMET}.com/\N{COMET}")) - self.assertEqual("http://bitworking.org/?fred=%E2%98%84", iri2uri(u"http://bitworking.org/?fred=\N{COMET}")) - self.assertEqual("http://bitworking.org/#%E2%98%84", iri2uri(u"http://bitworking.org/#\N{COMET}")) - self.assertEqual("#%E2%98%84", iri2uri(u"#\N{COMET}")) - self.assertEqual("/fred?bar=%E2%98%9A#%E2%98%84", iri2uri(u"/fred?bar=\N{BLACK LEFT POINTING INDEX}#\N{COMET}")) - self.assertEqual("/fred?bar=%E2%98%9A#%E2%98%84", iri2uri(iri2uri(u"/fred?bar=\N{BLACK LEFT POINTING INDEX}#\N{COMET}"))) - self.assertNotEqual("/fred?bar=%E2%98%9A#%E2%98%84", iri2uri(u"/fred?bar=\N{BLACK LEFT POINTING INDEX}#\N{COMET}".encode('utf-8'))) - - unittest.main() - - diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/socks.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/socks.py.svn-base deleted file mode 100644 index a458e1cdb58ecd71f15a7318d6d13807fe22df73..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/.svn/text-base/socks.py.svn-base +++ /dev/null @@ -1,385 +0,0 @@ -"""SocksiPy - Python SOCKS module. -Version 1.00 - -Copyright 2006 Dan-Haim. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. -3. Neither the name of Dan Haim nor the names of his contributors may be used - to endorse or promote products derived from this software without specific - prior written permission. - -THIS SOFTWARE IS PROVIDED BY DAN HAIM "AS IS" AND ANY EXPRESS OR IMPLIED -WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -EVENT SHALL DAN HAIM OR HIS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA -OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT -OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMANGE. - - -This module provides a standard socket-like interface for Python -for tunneling connections through SOCKS proxies. - -""" - -""" - -Minor modifications made by Christopher Gilbert (http://motomastyle.com/) -for use in PyLoris (http://pyloris.sourceforge.net/) - -Minor modifications made by Mario Vilas (http://breakingcode.wordpress.com/) -mainly to merge bug fixes found in Sourceforge - -""" - -import socket -import struct -import sys - -if getattr(socket, 'socket', None) is None: - raise ImportError('socket.socket missing, proxy support unusable') - -PROXY_TYPE_SOCKS4 = 1 -PROXY_TYPE_SOCKS5 = 2 -PROXY_TYPE_HTTP = 3 - -_defaultproxy = None -_orgsocket = socket.socket - -class ProxyError(Exception): pass -class GeneralProxyError(ProxyError): pass -class Socks5AuthError(ProxyError): pass -class Socks5Error(ProxyError): pass -class Socks4Error(ProxyError): pass -class HTTPError(ProxyError): pass - -_generalerrors = ("success", - "invalid data", - "not connected", - "not available", - "bad proxy type", - "bad input") - -_socks5errors = ("succeeded", - "general SOCKS server failure", - "connection not allowed by ruleset", - "Network unreachable", - "Host unreachable", - "Connection refused", - "TTL expired", - "Command not supported", - "Address type not supported", - "Unknown error") - -_socks5autherrors = ("succeeded", - "authentication is required", - "all offered authentication methods were rejected", - "unknown username or invalid password", - "unknown error") - -_socks4errors = ("request granted", - "request rejected or failed", - "request rejected because SOCKS server cannot connect to identd on the client", - "request rejected because the client program and identd report different user-ids", - "unknown error") - -def setdefaultproxy(proxytype=None, addr=None, port=None, rdns=True, username=None, password=None): - """setdefaultproxy(proxytype, addr[, port[, rdns[, username[, password]]]]) - Sets a default proxy which all further socksocket objects will use, - unless explicitly changed. - """ - global _defaultproxy - _defaultproxy = (proxytype, addr, port, rdns, username, password) - -def wrapmodule(module): - """wrapmodule(module) - Attempts to replace a module's socket library with a SOCKS socket. Must set - a default proxy using setdefaultproxy(...) first. - This will only work on modules that import socket directly into the namespace; - most of the Python Standard Library falls into this category. - """ - if _defaultproxy != None: - module.socket.socket = socksocket - else: - raise GeneralProxyError((4, "no proxy specified")) - -class socksocket(socket.socket): - """socksocket([family[, type[, proto]]]) -> socket object - Open a SOCKS enabled socket. The parameters are the same as - those of the standard socket init. In order for SOCKS to work, - you must specify family=AF_INET, type=SOCK_STREAM and proto=0. - """ - - def __init__(self, family=socket.AF_INET, type=socket.SOCK_STREAM, proto=0, _sock=None): - _orgsocket.__init__(self, family, type, proto, _sock) - if _defaultproxy != None: - self.__proxy = _defaultproxy - else: - self.__proxy = (None, None, None, None, None, None) - self.__proxysockname = None - self.__proxypeername = None - - def __recvall(self, count): - """__recvall(count) -> data - Receive EXACTLY the number of bytes requested from the socket. - Blocks until the required number of bytes have been received. - """ - data = self.recv(count) - while len(data) < count: - d = self.recv(count-len(data)) - if not d: raise GeneralProxyError((0, "connection closed unexpectedly")) - data = data + d - return data - - def setproxy(self, proxytype=None, addr=None, port=None, rdns=True, username=None, password=None): - """setproxy(proxytype, addr[, port[, rdns[, username[, password]]]]) - Sets the proxy to be used. - proxytype - The type of the proxy to be used. Three types - are supported: PROXY_TYPE_SOCKS4 (including socks4a), - PROXY_TYPE_SOCKS5 and PROXY_TYPE_HTTP - addr - The address of the server (IP or DNS). - port - The port of the server. Defaults to 1080 for SOCKS - servers and 8080 for HTTP proxy servers. - rdns - Should DNS queries be preformed on the remote side - (rather than the local side). The default is True. - Note: This has no effect with SOCKS4 servers. - username - Username to authenticate with to the server. - The default is no authentication. - password - Password to authenticate with to the server. - Only relevant when username is also provided. - """ - self.__proxy = (proxytype, addr, port, rdns, username, password) - - def __negotiatesocks5(self, destaddr, destport): - """__negotiatesocks5(self,destaddr,destport) - Negotiates a connection through a SOCKS5 server. - """ - # First we'll send the authentication packages we support. - if (self.__proxy[4]!=None) and (self.__proxy[5]!=None): - # The username/password details were supplied to the - # setproxy method so we support the USERNAME/PASSWORD - # authentication (in addition to the standard none). - self.sendall(struct.pack('BBBB', 0x05, 0x02, 0x00, 0x02)) - else: - # No username/password were entered, therefore we - # only support connections with no authentication. - self.sendall(struct.pack('BBB', 0x05, 0x01, 0x00)) - # We'll receive the server's response to determine which - # method was selected - chosenauth = self.__recvall(2) - if chosenauth[0:1] != chr(0x05).encode(): - self.close() - raise GeneralProxyError((1, _generalerrors[1])) - # Check the chosen authentication method - if chosenauth[1:2] == chr(0x00).encode(): - # No authentication is required - pass - elif chosenauth[1:2] == chr(0x02).encode(): - # Okay, we need to perform a basic username/password - # authentication. - self.sendall(chr(0x01).encode() + chr(len(self.__proxy[4])) + self.__proxy[4] + chr(len(self.__proxy[5])) + self.__proxy[5]) - authstat = self.__recvall(2) - if authstat[0:1] != chr(0x01).encode(): - # Bad response - self.close() - raise GeneralProxyError((1, _generalerrors[1])) - if authstat[1:2] != chr(0x00).encode(): - # Authentication failed - self.close() - raise Socks5AuthError((3, _socks5autherrors[3])) - # Authentication succeeded - else: - # Reaching here is always bad - self.close() - if chosenauth[1] == chr(0xFF).encode(): - raise Socks5AuthError((2, _socks5autherrors[2])) - else: - raise GeneralProxyError((1, _generalerrors[1])) - # Now we can request the actual connection - req = struct.pack('BBB', 0x05, 0x01, 0x00) - # If the given destination address is an IP address, we'll - # use the IPv4 address request even if remote resolving was specified. - try: - ipaddr = socket.inet_aton(destaddr) - req = req + chr(0x01).encode() + ipaddr - except socket.error: - # Well it's not an IP number, so it's probably a DNS name. - if self.__proxy[3]: - # Resolve remotely - ipaddr = None - req = req + chr(0x03).encode() + chr(len(destaddr)).encode() + destaddr - else: - # Resolve locally - ipaddr = socket.inet_aton(socket.gethostbyname(destaddr)) - req = req + chr(0x01).encode() + ipaddr - req = req + struct.pack(">H", destport) - self.sendall(req) - # Get the response - resp = self.__recvall(4) - if resp[0:1] != chr(0x05).encode(): - self.close() - raise GeneralProxyError((1, _generalerrors[1])) - elif resp[1:2] != chr(0x00).encode(): - # Connection failed - self.close() - if ord(resp[1:2])<=8: - raise Socks5Error((ord(resp[1:2]), _socks5errors[ord(resp[1:2])])) - else: - raise Socks5Error((9, _socks5errors[9])) - # Get the bound address/port - elif resp[3:4] == chr(0x01).encode(): - boundaddr = self.__recvall(4) - elif resp[3:4] == chr(0x03).encode(): - resp = resp + self.recv(1) - boundaddr = self.__recvall(ord(resp[4:5])) - else: - self.close() - raise GeneralProxyError((1,_generalerrors[1])) - boundport = struct.unpack(">H", self.__recvall(2))[0] - self.__proxysockname = (boundaddr, boundport) - if ipaddr != None: - self.__proxypeername = (socket.inet_ntoa(ipaddr), destport) - else: - self.__proxypeername = (destaddr, destport) - - def getproxysockname(self): - """getsockname() -> address info - Returns the bound IP address and port number at the proxy. - """ - return self.__proxysockname - - def getproxypeername(self): - """getproxypeername() -> address info - Returns the IP and port number of the proxy. - """ - return _orgsocket.getpeername(self) - - def getpeername(self): - """getpeername() -> address info - Returns the IP address and port number of the destination - machine (note: getproxypeername returns the proxy) - """ - return self.__proxypeername - - def __negotiatesocks4(self,destaddr,destport): - """__negotiatesocks4(self,destaddr,destport) - Negotiates a connection through a SOCKS4 server. - """ - # Check if the destination address provided is an IP address - rmtrslv = False - try: - ipaddr = socket.inet_aton(destaddr) - except socket.error: - # It's a DNS name. Check where it should be resolved. - if self.__proxy[3]: - ipaddr = struct.pack("BBBB", 0x00, 0x00, 0x00, 0x01) - rmtrslv = True - else: - ipaddr = socket.inet_aton(socket.gethostbyname(destaddr)) - # Construct the request packet - req = struct.pack(">BBH", 0x04, 0x01, destport) + ipaddr - # The username parameter is considered userid for SOCKS4 - if self.__proxy[4] != None: - req = req + self.__proxy[4] - req = req + chr(0x00).encode() - # DNS name if remote resolving is required - # NOTE: This is actually an extension to the SOCKS4 protocol - # called SOCKS4A and may not be supported in all cases. - if rmtrslv: - req = req + destaddr + chr(0x00).encode() - self.sendall(req) - # Get the response from the server - resp = self.__recvall(8) - if resp[0:1] != chr(0x00).encode(): - # Bad data - self.close() - raise GeneralProxyError((1,_generalerrors[1])) - if resp[1:2] != chr(0x5A).encode(): - # Server returned an error - self.close() - if ord(resp[1:2]) in (91, 92, 93): - self.close() - raise Socks4Error((ord(resp[1:2]), _socks4errors[ord(resp[1:2]) - 90])) - else: - raise Socks4Error((94, _socks4errors[4])) - # Get the bound address/port - self.__proxysockname = (socket.inet_ntoa(resp[4:]), struct.unpack(">H", resp[2:4])[0]) - if rmtrslv != None: - self.__proxypeername = (socket.inet_ntoa(ipaddr), destport) - else: - self.__proxypeername = (destaddr, destport) - - def __negotiatehttp(self, destaddr, destport): - """__negotiatehttp(self,destaddr,destport) - Negotiates a connection through an HTTP server. - """ - # If we need to resolve locally, we do this now - if not self.__proxy[3]: - addr = socket.gethostbyname(destaddr) - else: - addr = destaddr - self.sendall(("CONNECT " + addr + ":" + str(destport) + " HTTP/1.1\r\n" + "Host: " + destaddr + "\r\n\r\n").encode()) - # We read the response until we get the string "\r\n\r\n" - resp = self.recv(1) - while resp.find("\r\n\r\n".encode()) == -1: - resp = resp + self.recv(1) - # We just need the first line to check if the connection - # was successful - statusline = resp.splitlines()[0].split(" ".encode(), 2) - if statusline[0] not in ("HTTP/1.0".encode(), "HTTP/1.1".encode()): - self.close() - raise GeneralProxyError((1, _generalerrors[1])) - try: - statuscode = int(statusline[1]) - except ValueError: - self.close() - raise GeneralProxyError((1, _generalerrors[1])) - if statuscode != 200: - self.close() - raise HTTPError((statuscode, statusline[2])) - self.__proxysockname = ("0.0.0.0", 0) - self.__proxypeername = (addr, destport) - - def connect(self, destpair): - """connect(self, despair) - Connects to the specified destination through a proxy. - destpar - A tuple of the IP/DNS address and the port number. - (identical to socket's connect). - To select the proxy server use setproxy(). - """ - # Do a minimal input check first - if (not type(destpair) in (list,tuple)) or (len(destpair) < 2) or (type(destpair[0]) != type('')) or (type(destpair[1]) != int): - raise GeneralProxyError((5, _generalerrors[5])) - if self.__proxy[0] == PROXY_TYPE_SOCKS5: - if self.__proxy[2] != None: - portnum = self.__proxy[2] - else: - portnum = 1080 - _orgsocket.connect(self, (self.__proxy[1], portnum)) - self.__negotiatesocks5(destpair[0], destpair[1]) - elif self.__proxy[0] == PROXY_TYPE_SOCKS4: - if self.__proxy[2] != None: - portnum = self.__proxy[2] - else: - portnum = 1080 - _orgsocket.connect(self,(self.__proxy[1], portnum)) - self.__negotiatesocks4(destpair[0], destpair[1]) - elif self.__proxy[0] == PROXY_TYPE_HTTP: - if self.__proxy[2] != None: - portnum = self.__proxy[2] - else: - portnum = 8080 - _orgsocket.connect(self,(self.__proxy[1], portnum)) - self.__negotiatehttp(destpair[0], destpair[1]) - elif self.__proxy[0] == None: - _orgsocket.connect(self, (destpair[0], destpair[1])) - else: - raise GeneralProxyError((4, _generalerrors[4])) diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/all-wcprops b/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/all-wcprops deleted file mode 100644 index 6ea491fc613da91569a4e8b2414448e726ce5ee6..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test -END -other_cacerts.txt -K 25 -svn:wc:ra_dav:version-url -V 100 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/other_cacerts.txt -END -smoke_test.py -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/smoke_test.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/__init__.py -END -miniserver.py -K 25 -svn:wc:ra_dav:version-url -V 96 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/miniserver.py -END -test_no_socket.py -K 25 -svn:wc:ra_dav:version-url -V 100 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/test_no_socket.py -END diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/entries b/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/entries deleted file mode 100644 index 0cbb16d5ba1ab37fffef3281ec262d1140790ef6..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/entries +++ /dev/null @@ -1,204 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test -http://svn.osqa.net/svnroot - - - -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -functional -dir - -other_cacerts.txt -file - - - - -2012-06-22T20:34:37.806866Z -1494427ee16ef4cab20688f013dbc19d -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -3541 - -smoke_test.py -file - - - - -2012-06-22T20:34:37.806866Z -adacf99ac1b07f101271d02ccd015715 -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -638 - -__init__.py -file - - - - -2012-06-22T20:34:37.806866Z -d41d8cd98f00b204e9800998ecf8427e -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -0 - -brokensocket -dir - -miniserver.py -file - - - - -2012-06-22T20:34:37.806866Z -d912b52270948d7bb5bd063fcaf4cffb -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -3327 - -test_no_socket.py -file - - - - -2012-06-22T20:34:37.806866Z -3217b40d31d25d783249083c63f5f20a -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -704 - diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/__init__.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/miniserver.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/miniserver.py.svn-base deleted file mode 100644 index e32bf5e5f9bf59763623408baae5ef634c88d51b..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/miniserver.py.svn-base +++ /dev/null @@ -1,100 +0,0 @@ -import logging -import os -import select -import SimpleHTTPServer -import SocketServer -import threading - -HERE = os.path.dirname(__file__) -logger = logging.getLogger(__name__) - - -class ThisDirHandler(SimpleHTTPServer.SimpleHTTPRequestHandler): - def translate_path(self, path): - path = path.split('?', 1)[0].split('#', 1)[0] - return os.path.join(HERE, *filter(None, path.split('/'))) - - def log_message(self, s, *args): - # output via logging so nose can catch it - logger.info(s, *args) - - -class ShutdownServer(SocketServer.TCPServer): - """Mixin that allows serve_forever to be shut down. - - The methods in this mixin are backported from SocketServer.py in the Python - 2.6.4 standard library. The mixin is unnecessary in 2.6 and later, when - BaseServer supports the shutdown method directly. - """ - - def __init__(self, *args, **kwargs): - SocketServer.TCPServer.__init__(self, *args, **kwargs) - self.__is_shut_down = threading.Event() - self.__serving = False - - def serve_forever(self, poll_interval=0.1): - """Handle one request at a time until shutdown. - - Polls for shutdown every poll_interval seconds. Ignores - self.timeout. If you need to do periodic tasks, do them in - another thread. - """ - self.__serving = True - self.__is_shut_down.clear() - while self.__serving: - r, w, e = select.select([self.socket], [], [], poll_interval) - if r: - self._handle_request_noblock() - self.__is_shut_down.set() - - def shutdown(self): - """Stops the serve_forever loop. - - Blocks until the loop has finished. This must be called while - serve_forever() is running in another thread, or it will deadlock. - """ - self.__serving = False - self.__is_shut_down.wait() - - def handle_request(self): - """Handle one request, possibly blocking. - - Respects self.timeout. - """ - # Support people who used socket.settimeout() to escape - # handle_request before self.timeout was available. - timeout = self.socket.gettimeout() - if timeout is None: - timeout = self.timeout - elif self.timeout is not None: - timeout = min(timeout, self.timeout) - fd_sets = select.select([self], [], [], timeout) - if not fd_sets[0]: - self.handle_timeout() - return - self._handle_request_noblock() - - def _handle_request_noblock(self): - """Handle one request, without blocking. - - I assume that select.select has returned that the socket is - readable before this function was called, so there should be - no risk of blocking in get_request(). - """ - try: - request, client_address = self.get_request() - except socket.error: - return - if self.verify_request(request, client_address): - try: - self.process_request(request, client_address) - except: - self.handle_error(request, client_address) - self.close_request(request) - - -def start_server(handler): - httpd = ShutdownServer(("", 0), handler) - threading.Thread(target=httpd.serve_forever).start() - _, port = httpd.socket.getsockname() - return httpd, port diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/other_cacerts.txt.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/other_cacerts.txt.svn-base deleted file mode 100644 index 360954a2868212ae1625b65f598c7ed76cdfc78b..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/other_cacerts.txt.svn-base +++ /dev/null @@ -1,70 +0,0 @@ -# Certifcate Authority certificates for validating SSL connections. -# -# This file contains PEM format certificates generated from -# http://mxr.mozilla.org/seamonkey/source/security/nss/lib/ckfw/builtins/certdata.txt -# -# ***** BEGIN LICENSE BLOCK ***** -# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# The Original Code is the Netscape security libraries. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1994-2000 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 2 or later (the "GPL"), or -# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -# in which case the provisions of the GPL or the LGPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL or the LGPL, and not to allow others to -# use your version of this file under the terms of the MPL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL or the LGPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the MPL, the GPL or the LGPL. -# -# ***** END LICENSE BLOCK ***** - - -Comodo CA Limited, CN=Trusted Certificate Services -================================================== - ------BEGIN CERTIFICATE----- -MIIEQzCCAyugAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJHQjEb -MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow -GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDElMCMGA1UEAwwcVHJ1c3RlZCBDZXJ0 -aWZpY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDEwMDAwMDBaFw0yODEyMzEyMzU5NTla -MH8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDBJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO -BgNVBAcMB1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9kbyBDQSBMaW1pdGVkMSUwIwYD -VQQDDBxUcnVzdGVkIENlcnRpZmljYXRlIFNlcnZpY2VzMIIBIjANBgkqhkiG9w0B -AQEFAAOCAQ8AMIIBCgKCAQEA33FvNlhTWvI2VFeAxHQIIO0Yfyod5jWaHiWsnOWW -fnJSoBVC21ndZHoa0Lh73TkVvFVIxO06AOoxEbrycXQaZ7jPM8yoMa+j49d/vzMt -TGo87IvDktJTdyR0nAducPy9C1t2ul/y/9c3S0pgePfw+spwtOpZqqPOSC+pw7IL -fhdyFgymBwwbOM/JYrc/oJOlh0Hyt3BAd9i+FHzjqMB6juljatEPmsbS9Is6FARW -1O24zG71++IsWL1/T2sr92AkWCTOJu80kTrV44HQsvAEAtdbtz6SrGsSivnkBbA7 -kUlcsutT6vifR4buv5XAwAaf0lteERv0xwQ1KdJVXOTt6wIDAQABo4HJMIHGMB0G -A1UdDgQWBBTFe1i97doladL3WRaoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYD -VR0TAQH/BAUwAwEB/zCBgwYDVR0fBHwwejA8oDqgOIY2aHR0cDovL2NybC5jb21v -ZG9jYS5jb20vVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMuY3JsMDqgOKA2hjRo -dHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMu -Y3JsMA0GCSqGSIb3DQEBBQUAA4IBAQDIk4E7ibSvuIQSTI3S8NtwuleGFTQQuS9/ -HrCoiWChisJ3DFBKmwCL2Iv0QeLQg4pKHBQGsKNoBXAxMKdTmw7pSqBYaWcOrp32 -pSxBvzwGa+RZzG0Q8ZZvH9/0BAKkn0U+yNj6NkZEUD+Cl5EfKNsYEYwq5GWDVxIS -jBc/lDb+XbDABHcTuPQV1T84zJQ6VdCsmPW6AF/ghhmBeC8owH7TzEIK9a5QoNE+ -xqFx7D+gIIxmOom0jtTYsU0lR+4viMi14QVFwL4Ucd56/Y57fU0IlqUSc/Atyjcn -dBInTMu2l+nZrghtWjlA3QVHdWpaIbOjGM9O9y5Xt5hwXsjEeLBi ------END CERTIFICATE----- diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/smoke_test.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/smoke_test.py.svn-base deleted file mode 100644 index 9f1e6f01d6dacb3c28faa942853487bf21afd77e..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/smoke_test.py.svn-base +++ /dev/null @@ -1,23 +0,0 @@ -import os -import unittest - -import httplib2 - -from httplib2.test import miniserver - - -class HttpSmokeTest(unittest.TestCase): - def setUp(self): - self.httpd, self.port = miniserver.start_server( - miniserver.ThisDirHandler) - - def tearDown(self): - self.httpd.shutdown() - - def testGetFile(self): - client = httplib2.Http() - src = 'miniserver.py' - response, body = client.request('http://localhost:%d/%s' % - (self.port, src)) - self.assertEqual(response.status, 200) - self.assertEqual(body, open(os.path.join(miniserver.HERE, src)).read()) diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/test_no_socket.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/test_no_socket.py.svn-base deleted file mode 100644 index 66ba05637648b13b01f64a9d238dbb5182bbc303..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/.svn/text-base/test_no_socket.py.svn-base +++ /dev/null @@ -1,24 +0,0 @@ -"""Tests for httplib2 when the socket module is missing. - -This helps ensure compatibility with environments such as AppEngine. -""" -import os -import sys -import unittest - -import httplib2 - -class MissingSocketTest(unittest.TestCase): - def setUp(self): - self._oldsocks = httplib2.socks - httplib2.socks = None - - def tearDown(self): - httplib2.socks = self._oldsocks - - def testProxyDisabled(self): - proxy_info = httplib2.ProxyInfo('blah', - 'localhost', 0) - client = httplib2.Http(proxy_info=proxy_info) - self.assertRaises(httplib2.ProxiesUnavailableError, - client.request, 'http://localhost:-1/') diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/all-wcprops b/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/all-wcprops deleted file mode 100644 index 700ce105298a4eb7826c86eea5a646e6938d752f..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 95 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket -END -socket.py -K 25 -svn:wc:ra_dav:version-url -V 105 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/socket.py -END diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/entries b/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/entries deleted file mode 100644 index ab41fbb7294d524cf9ca23a811c16efc3ff1f407..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket -http://svn.osqa.net/svnroot - - - -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -socket.py -file - - - - -2012-06-22T20:34:37.774882Z -40fa40a6423b02e35a43fde4c2b1847b -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -65 - diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/text-base/socket.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/text-base/socket.py.svn-base deleted file mode 100644 index ff7c0b74001a2d18e22a2a10407a90bec918f8ad..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/brokensocket/.svn/text-base/socket.py.svn-base +++ /dev/null @@ -1 +0,0 @@ -from realsocket import gaierror, error, getaddrinfo, SOCK_STREAM diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/all-wcprops b/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/all-wcprops deleted file mode 100644 index a585a159ed8b43b0a484597d7ea3f7709373017c..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 93 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional -END -test_proxies.py -K 25 -svn:wc:ra_dav:version-url -V 109 -/svnroot/!svn/ver/1116/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/test_proxies.py -END diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/entries b/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/entries deleted file mode 100644 index 80c81068483f3a96abc86bf57d1c1e609217eaf8..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional -http://svn.osqa.net/svnroot - - - -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -test_proxies.py -file - - - - -2012-06-22T20:34:37.734902Z -da108740f09fd407ad6167bac84f7d82 -2011-07-13T09:52:21.154537Z -1116 -jordan - - - - - - - - - - - - - - - - - - - - - -2965 - diff --git a/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/text-base/test_proxies.py.svn-base b/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/text-base/test_proxies.py.svn-base deleted file mode 100644 index 0b7880fe52db48637291ebd17e0e585c230f2153..0000000000000000000000000000000000000000 --- a/forum_modules/oauthauth/lib/oauth2/httplib2/test/functional/.svn/text-base/test_proxies.py.svn-base +++ /dev/null @@ -1,88 +0,0 @@ -import unittest -import errno -import os -import signal -import subprocess -import tempfile - -import nose - -import httplib2 -from httplib2 import socks -from httplib2.test import miniserver - -tinyproxy_cfg = """ -User "%(user)s" -Port %(port)s -Listen 127.0.0.1 -PidFile "%(pidfile)s" -LogFile "%(logfile)s" -MaxClients 2 -StartServers 1 -LogLevel Info -""" - - -class FunctionalProxyHttpTest(unittest.TestCase): - def setUp(self): - if not socks: - raise nose.SkipTest('socks module unavailable') - if not subprocess: - raise nose.SkipTest('subprocess module unavailable') - - # start a short-lived miniserver so we can get a likely port - # for the proxy - self.httpd, self.proxyport = miniserver.start_server( - miniserver.ThisDirHandler) - self.httpd.shutdown() - self.httpd, self.port = miniserver.start_server( - miniserver.ThisDirHandler) - - self.pidfile = tempfile.mktemp() - self.logfile = tempfile.mktemp() - fd, self.conffile = tempfile.mkstemp() - f = os.fdopen(fd, 'w') - our_cfg = tinyproxy_cfg % {'user': os.getlogin(), - 'pidfile': self.pidfile, - 'port': self.proxyport, - 'logfile': self.logfile} - f.write(our_cfg) - f.close() - try: - # TODO use subprocess.check_call when 2.4 is dropped - ret = subprocess.call(['tinyproxy', '-c', self.conffile]) - self.assertEqual(0, ret) - except OSError, e: - if e.errno == errno.ENOENT: - raise nose.SkipTest('tinyproxy not available') - raise - - def tearDown(self): - self.httpd.shutdown() - try: - pid = int(open(self.pidfile).read()) - os.kill(pid, signal.SIGTERM) - except OSError, e: - if e.errno == errno.ESRCH: - print '\n\n\nTinyProxy Failed to start, log follows:' - print open(self.logfile).read() - print 'end tinyproxy log\n\n\n' - raise - map(os.unlink, (self.pidfile, - self.logfile, - self.conffile)) - - def testSimpleProxy(self): - proxy_info = httplib2.ProxyInfo(socks.PROXY_TYPE_HTTP, - 'localhost', self.proxyport) - client = httplib2.Http(proxy_info=proxy_info) - src = 'miniserver.py' - response, body = client.request('http://localhost:%d/%s' % - (self.port, src)) - self.assertEqual(response.status, 200) - self.assertEqual(body, open(os.path.join(miniserver.HERE, src)).read()) - lf = open(self.logfile).read() - expect = ('Established connection to host "127.0.0.1" ' - 'using file descriptor') - self.assertTrue(expect in lf, - 'tinyproxy did not proxy a request for miniserver') diff --git a/forum_modules/openidauth/.svn/all-wcprops b/forum_modules/openidauth/.svn/all-wcprops deleted file mode 100644 index e226776a97bde5aa01b0460bf5f6894762ddea76..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/all-wcprops +++ /dev/null @@ -1,41 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/1243/osqa/trunk/forum_modules/openidauth -END -models.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/openidauth/models.py -END -consumer.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1243/osqa/trunk/forum_modules/openidauth/consumer.py -END -store.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1128/osqa/trunk/forum_modules/openidauth/store.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/openidauth/__init__.py -END -authentication.py -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/openidauth/authentication.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/openidauth/settings.py -END diff --git a/forum_modules/openidauth/.svn/entries b/forum_modules/openidauth/.svn/entries deleted file mode 100644 index 3876b8136cc10f268a5beaff81830bc62c1bf3fb..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/entries +++ /dev/null @@ -1,235 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/openidauth -http://svn.osqa.net/svnroot - - - -2012-04-04T23:10:46.497540Z -1243 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:37.511013Z -20287456b665ce1b9abfd6cc7911d0ea -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -69 - -authentication.py -file - - - - -2012-06-22T20:34:37.511013Z -3d60747a61aa8e96ff0dc70aec7d2b62 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -5563 - -settings.py -file - - - - -2012-06-22T20:34:37.511013Z -43abf5caf0c07f6d910d75f7af8ec08c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -334 - -models.py -file - - - - -2012-06-22T20:34:37.511013Z -9aaa1bd526fda0f38ee61b426076d26c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -772 - -templates -dir - -consumer.py -file - - - - -2012-06-22T20:34:37.507015Z -e5700a62c8d6af2c3a85e59933fcea96 -2012-04-04T23:10:46.497540Z -1243 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -6174 - -store.py -file - - - - -2012-06-22T20:34:37.507015Z -fcfb53ea1d33977ef376fdfa9085498e -2011-07-27T22:31:58.589688Z -1128 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2874 - diff --git a/forum_modules/openidauth/.svn/prop-base/__init__.py.svn-base b/forum_modules/openidauth/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/openidauth/.svn/prop-base/authentication.py.svn-base b/forum_modules/openidauth/.svn/prop-base/authentication.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/prop-base/authentication.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/openidauth/.svn/prop-base/consumer.py.svn-base b/forum_modules/openidauth/.svn/prop-base/consumer.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/prop-base/consumer.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/openidauth/.svn/prop-base/models.py.svn-base b/forum_modules/openidauth/.svn/prop-base/models.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/prop-base/models.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/openidauth/.svn/prop-base/settings.py.svn-base b/forum_modules/openidauth/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/openidauth/.svn/prop-base/store.py.svn-base b/forum_modules/openidauth/.svn/prop-base/store.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/prop-base/store.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/openidauth/.svn/text-base/__init__.py.svn-base b/forum_modules/openidauth/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 358a57d255c6e5c357c9ed8fdff77a2ec8e61b75..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -try: - import openid - CAN_USE = True -except: - CAN_USE = False \ No newline at end of file diff --git a/forum_modules/openidauth/.svn/text-base/authentication.py.svn-base b/forum_modules/openidauth/.svn/text-base/authentication.py.svn-base deleted file mode 100644 index 0afd4c6e189c212a54c6fcaecadb925f04c8c583..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/text-base/authentication.py.svn-base +++ /dev/null @@ -1,188 +0,0 @@ -from consumer import OpenIdAbstractAuthConsumer -from forum.authentication.base import ConsumerTemplateContext - -class GoogleAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - return 'https://www.google.com/accounts/o8/id' - -class GoogleAuthContext(ConsumerTemplateContext): - mode = 'BIGICON' - type = 'DIRECT' - weight = 200 - human_name = 'Google' - icon = '/media/images/openid/google.gif' - - - -class YahooAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - return 'http://yahoo.com/' - -class YahooAuthContext(ConsumerTemplateContext): - mode = 'BIGICON' - type = 'DIRECT' - weight = 300 - human_name = 'Yahoo' - icon = '/media/images/openid/yahoo.gif' - - - -class AolAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - uname = request.POST['input_field'] - return 'http://openid.aol.com/' + uname - -class AolAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'AOL screen name' - } - weight = 200 - human_name = 'AOL' - icon = '/media/images/openid/aol.png' - - -class MyOpenIdAuthConsumer(OpenIdAbstractAuthConsumer): - dataype2ax_schema = { - #'username': ('http://schema.openid.net/namePerson/friendly', 'friendly'), - 'email': 'http://schema.openid.net/contact/email', - #'web': 'http://schema.openid.net/contact/web/default', - #'birthdate': ('http://schema.openid.net/birthDate', 'birthDate'), - } - - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://%s.myopenid.com/" % blog_name - -class MyOpenIdAuthContext(ConsumerTemplateContext): - mode = 'BIGICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'MyOpenID user name' - } - weight = 400 - human_name = 'MyOpenID' - icon = '/media/images/openid/myopenid_big.png' - - -class FlickrAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://flickr.com/%s/" % blog_name - -class FlickrAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'Flickr user name' - } - weight = 250 - human_name = 'Flickr' - icon = '/media/images/openid/flickr.png' - - -class TechnoratiAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://technorati.com/people/technorati/%s/" % blog_name - -class TechnoratiAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'Technorati user name' - } - weight = 260 - human_name = 'Technorati' - icon = '/media/images/openid/technorati.png' - - -class WordpressAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://%s.wordpress.com/" % blog_name - -class WordpressAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'Wordpress blog name' - } - weight = 270 - human_name = 'Wordpress' - icon = '/media/images/openid/wordpress.png' - - -class BloggerAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://%s.blogspot.com/" % blog_name - -class BloggerAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'Blogger blog name' - } - weight = 300 - human_name = 'Blogger' - icon = '/media/images/openid/blogger.png' - - -class LiveJournalAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://%s.livejournal.com/" % blog_name - -class LiveJournalAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'LiveJournal blog name' - } - weight = 310 - human_name = 'LiveJournal' - icon = '/media/images/openid/livejournal.png' - - -class ClaimIdAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://claimid.com/%s" % blog_name - -class ClaimIdAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'ClaimID user name' - } - weight = 320 - human_name = 'ClaimID' - icon = '/media/images/openid/claimid.png' - -class VerisignAuthConsumer(OpenIdAbstractAuthConsumer): - def get_user_url(self, request): - blog_name = request.POST['input_field'] - return "http://%s.pip.verisignlabs.com/" % blog_name - -class VerisignAuthContext(ConsumerTemplateContext): - mode = 'SMALLICON' - type = 'SIMPLE_FORM' - simple_form_context = { - 'your_what': 'Verisign user name' - } - weight = 340 - human_name = 'Verisign' - icon = '/media/images/openid/verisign.png' - - -class OpenIdUrlAuthConsumer(OpenIdAbstractAuthConsumer): - pass - -class OpenIdUrlAuthContext(ConsumerTemplateContext): - mode = 'STACK_ITEM' - weight = 300 - human_name = 'OpenId url' - stack_item_template = 'modules/openidauth/openidurl.html' - icon = '/media/images/openid/openid-inputicon.gif' diff --git a/forum_modules/openidauth/.svn/text-base/consumer.py.svn-base b/forum_modules/openidauth/.svn/text-base/consumer.py.svn-base deleted file mode 100644 index 29a637562f13ec9281b6ef0ad92f65214edafbd3..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/text-base/consumer.py.svn-base +++ /dev/null @@ -1,172 +0,0 @@ -# -*- coding: utf-8 -*- - -import re - -from django.utils.encoding import smart_unicode -from django.utils.html import escape -from django.http import get_host - -from forum.authentication.base import AuthenticationConsumer, InvalidAuthentication -import settings - -from openid.yadis import xri -from openid.consumer.consumer import Consumer, SUCCESS, CANCEL, FAILURE, SETUP_NEEDED -from openid.consumer.discover import DiscoveryFailure -from openid.extensions.sreg import SRegRequest, SRegResponse -from openid.extensions.ax import FetchRequest as AXFetchRequest, AttrInfo, FetchResponse as AXFetchResponse -from django.utils.translation import ugettext as _ - -from store import OsqaOpenIDStore - -class OpenIdAbstractAuthConsumer(AuthenticationConsumer): - - dataype2ax_schema = { - 'username': 'http://axschema.org/namePerson/friendly', - 'email': 'http://axschema.org/contact/email', - #'web': 'http://axschema.org/contact/web/default', - #'firstname': 'http://axschema.org/namePerson/first', - #'lastname': 'http://axschema.org/namePerson/last', - #'birthdate': 'http://axschema.org/birthDate', - } - - sreg_attributes = { - "required": { - "email": "email", - "nickname": "username", - "fullname": "real_name" - } - } - - def get_user_url(self, request): - try: - return request.POST['openid_identifier'] - except: - raise NotImplementedError() - - def prepare_authentication_request(self, request, redirect_to): - if not redirect_to.startswith('http://') or redirect_to.startswith('https://'): - redirect_to = get_url_host(request) + redirect_to - - user_url = self.get_user_url(request) - - if xri.identifierScheme(user_url) == 'XRI' and getattr( - settings, 'OPENID_DISALLOW_INAMES', False - ): - raise InvalidAuthentication('i-names are not supported') - - consumer = Consumer(request.session, OsqaOpenIDStore()) - - try: - auth_request = consumer.begin(user_url) - except DiscoveryFailure: - raise InvalidAuthentication(_('Sorry, but your input is not a valid OpenId')) - - sreg = getattr(self, 'sreg_attributes', False) - - if sreg: - s = SRegRequest() - - for k, attr_dic in sreg.items(): - if k == "policy_url": - s.policy_url = attr_dic - continue - - for attr_name in attr_dic.keys(): - s.requestField(field_name=attr_name, required=(k == "required")) - - auth_request.addExtension(s) - - ax_schema = getattr(self, 'dataype2ax_schema', False) - - if ax_schema and request.session.get('force_email_request', True): - axr = AXFetchRequest() - for data_type, schema in ax_schema.items(): - if isinstance(schema, tuple): - axr.add(AttrInfo(schema[0], required=True, alias=schema[1])) - else: - axr.add(AttrInfo(schema, required=True, alias=data_type)) - - auth_request.addExtension(axr) - - trust_root = getattr( - settings, 'OPENID_TRUST_ROOT', get_url_host(request) + '/' - ) - - return auth_request.redirectURL(trust_root, redirect_to) - - def process_authentication_request(self, request): - consumer = Consumer(request.session, OsqaOpenIDStore()) - - query_dict = dict([ - (smart_unicode(k), smart_unicode(v)) for k, v in request.GET.items() - ]) - - #for i in query_dict.items(): - #print "%s : %s" % i - - url = get_url_host(request) + request.path - openid_response = consumer.complete(query_dict, url) - - if openid_response.status == SUCCESS: - - consumer_data = {} - - sreg_attrs = getattr(self, 'sreg_attributes', False) - - if sreg_attrs: - sreg_response = SRegResponse.fromSuccessResponse(openid_response) - - if sreg_response: - all_attrs = {} - [all_attrs.update(d) for k,d in sreg_attrs.items() if k != "policy_url"] - - for attr_name, local_name in all_attrs.items(): - if attr_name in sreg_response: - consumer_data[local_name] = sreg_response[attr_name] - - ax_schema = getattr(self, 'dataype2ax_schema', False) - - if ax_schema: - ax = AXFetchResponse.fromSuccessResponse(openid_response, False) - - if ax: - axargs = ax.getExtensionArgs() - - ax_schema2data_type = dict([(s, t) for t, s in ax_schema.items()]) - - available_types = dict([ - (ax_schema2data_type[s], re.sub('^type\.', '', n)) - for n, s in axargs.items() if s in ax_schema2data_type - ]) - - for t, s in available_types.items(): - if not t in consumer_data: - if axargs.get("value.%s.1" % s, None): - consumer_data[t] = axargs["value.%s.1" % s] - - request.session['auth_consumer_data'] = consumer_data - - - return request.GET['openid.identity'] - elif openid_response.status == CANCEL: - raise InvalidAuthentication(_('The OpenId authentication request was canceled')) - elif openid_response.status == FAILURE: - raise InvalidAuthentication(_('The OpenId authentication failed: ') + openid_response.message) - elif openid_response.status == SETUP_NEEDED: - raise InvalidAuthentication(_('Setup needed')) - else: - raise InvalidAuthentication(_('The OpenId authentication failed with an unknown status: ') + openid_response.status) - - def get_user_data(self, key): - return {} - -def get_url_host(request): - if request.is_secure(): - protocol = 'https' - else: - protocol = 'http' - host = escape(get_host(request)) - return '%s://%s' % (protocol, host) - -def get_full_url(request): - return get_url_host(request) + request.get_full_path() \ No newline at end of file diff --git a/forum_modules/openidauth/.svn/text-base/models.py.svn-base b/forum_modules/openidauth/.svn/text-base/models.py.svn-base deleted file mode 100644 index d76902df9f7e1efe60bb9bd73f41e7e8ad41adb5..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/text-base/models.py.svn-base +++ /dev/null @@ -1,26 +0,0 @@ -from django.db import models - -class OpenIdNonce(models.Model): - server_url = models.URLField() - timestamp = models.IntegerField() - salt = models.CharField( max_length=50 ) - - def __unicode__(self): - return "Nonce: %s" % self.nonce - - class Meta: - app_label = 'forum' - -class OpenIdAssociation(models.Model): - server_url = models.TextField(max_length=2047) - handle = models.CharField(max_length=255) - secret = models.TextField(max_length=255) # Stored base64 encoded - issued = models.IntegerField() - lifetime = models.IntegerField() - assoc_type = models.TextField(max_length=64) - - def __unicode__(self): - return "Association: %s, %s" % (self.server_url, self.handle) - - class Meta: - app_label = 'forum' diff --git a/forum_modules/openidauth/.svn/text-base/settings.py.svn-base b/forum_modules/openidauth/.svn/text-base/settings.py.svn-base deleted file mode 100644 index f7c641a1fcfba0b3f3590b6986f75ccd6061417d..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -OPENID_SREG = { - "required": "nickname, email", - "optional": "postcode, country", - "policy_url": "" -} -OPENID_AX = [ - {"type_uri": "http://axschema.org/contact/email", "count": 1, "required": True, "alias": "email"}, - {"type_uri": "fullname", "count":1 , "required": False, "alias": "fullname"} - ] \ No newline at end of file diff --git a/forum_modules/openidauth/.svn/text-base/store.py.svn-base b/forum_modules/openidauth/.svn/text-base/store.py.svn-base deleted file mode 100644 index f481d4f30498466d39f2a8d9c85d60dcd7cb73c7..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/.svn/text-base/store.py.svn-base +++ /dev/null @@ -1,86 +0,0 @@ -import time, base64 - -#thanks to alexlavr -#see: http://meta.osqa.net/question/25/installation-issue-importerror-cannot-import-name-auth_providers#43 -try: - from hashlib import md5 as md -except ImportError: - from md5 import new as md - -from openid.store import nonce as oid_nonce -from openid.store.interface import OpenIDStore -from openid.association import Association as OIDAssociation -from django.conf import settings - -from models import OpenIdNonce as Nonce, OpenIdAssociation as Association - -class OsqaOpenIDStore(OpenIDStore): - def __init__(self): - self.max_nonce_age = 6 * 60 * 60 # Six hours - - def storeAssociation(self, server_url, association): - assoc = Association( - server_url = server_url, - handle = association.handle, - secret = base64.encodestring(association.secret), - issued = association.issued, - lifetime = association.lifetime, - assoc_type = association.assoc_type - ) - assoc.save() - - def getAssociation(self, server_url, handle=None): - assocs = [] - if handle is not None: - assocs = Association.objects.filter( - server_url = server_url, handle = handle - ) - else: - assocs = Association.objects.filter( - server_url = server_url - ) - if not assocs: - return None - associations = [] - for assoc in assocs: - association = OIDAssociation( - assoc.handle, base64.decodestring(assoc.secret), assoc.issued, - assoc.lifetime, assoc.assoc_type - ) - if association.getExpiresIn() == 0: - self.removeAssociation(server_url, assoc.handle) - else: - associations.append((association.issued, association)) - if not associations: - return None - return associations[-1][1] - - def removeAssociation(self, server_url, handle): - assocs = list(Association.objects.filter( - server_url = server_url, handle = handle - )) - assocs_exist = len(assocs) > 0 - for assoc in assocs: - assoc.delete() - return assocs_exist - - def storeNonce(self, nonce): - nonce, created = Nonce.objects.get_or_create( - nonce = nonce, defaults={'expires': int(time.time())} - ) - - def useNonce(self, server_url, timestamp, salt): - if abs(timestamp - time.time()) > oid_nonce.SKEW: - return False - - try: - nonce = Nonce( server_url=server_url, timestamp=timestamp, salt=salt) - nonce.save() - except: - raise - else: - return 1 - - def getAuthKey(self): - # Use first AUTH_KEY_LEN characters of md5 hash of SECRET_KEY - return md(settings.SECRET_KEY).hexdigest()[:self.AUTH_KEY_LEN] diff --git a/forum_modules/openidauth/templates/.svn/all-wcprops b/forum_modules/openidauth/templates/.svn/all-wcprops deleted file mode 100644 index d4f688f3fc9438d7aa89380814101b911de05bee..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/180/osqa/trunk/forum_modules/openidauth/templates -END -openidurl.html -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/!svn/ver/180/osqa/trunk/forum_modules/openidauth/templates/openidurl.html -END diff --git a/forum_modules/openidauth/templates/.svn/entries b/forum_modules/openidauth/templates/.svn/entries deleted file mode 100644 index 83fa535c585b649caa1cf5987d44094ced147058..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/openidauth/templates -http://svn.osqa.net/svnroot - - - -2010-05-08T19:10:17.892313Z -180 -matt - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -openidurl.html -file - - - - -2012-06-22T20:34:37.503017Z -4614ba296c5390510d830905c864b549 -2010-05-08T19:10:17.892313Z -180 -matt - - - - - - - - - - - - - - - - - - - - - -565 - diff --git a/forum_modules/openidauth/templates/.svn/text-base/openidurl.html.svn-base b/forum_modules/openidauth/templates/.svn/text-base/openidurl.html.svn-base deleted file mode 100644 index 8659f5ae9288cb68b9f82f306caeb7b0e801a8d2..0000000000000000000000000000000000000000 --- a/forum_modules/openidauth/templates/.svn/text-base/openidurl.html.svn-base +++ /dev/null @@ -1,20 +0,0 @@ -{% load i18n %} -{% load extra_tags %} - -<fieldset> - <table> - <tr> - <td><p id="provider_name_slot">{% trans 'Enter your OpenId Url' %}</p></td> - </tr> - <tr> - <td> - <input id="openid_identifier" class="icon_input" name="openid_identifier" type="text" - style="width: 500px; background: url('{% media provider.icon %}') no-repeat left center" /> - </td> - <td> - <input type="submit" name="ssignin" value="{% trans 'Login' %}" /> - </td> - </tr> - </table> -</fieldset> - diff --git a/forum_modules/pgfulltext/.svn/all-wcprops b/forum_modules/pgfulltext/.svn/all-wcprops deleted file mode 100644 index b42559e16f73b64879820f9afdf027ec0bc34ea5..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/all-wcprops +++ /dev/null @@ -1,35 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/1079/osqa/trunk/forum_modules/pgfulltext -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1079/osqa/trunk/forum_modules/pgfulltext/__init__.py -END -pg_fts_install.sql -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/611/osqa/trunk/forum_modules/pgfulltext/pg_fts_install.sql -END -handlers.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/pgfulltext/handlers.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/pgfulltext/settings.py -END -startup.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/pgfulltext/startup.py -END diff --git a/forum_modules/pgfulltext/.svn/entries b/forum_modules/pgfulltext/.svn/entries deleted file mode 100644 index b047e4699f1a3d0141d408be6317030fa94b5a62..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/entries +++ /dev/null @@ -1,198 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/pgfulltext -http://svn.osqa.net/svnroot - - - -2011-06-25T15:13:15.337221Z -1079 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -handlers.py -file - - - - -2012-06-22T20:34:37.455041Z -dc7ed2f5707052ed0ea32dae54934f21 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1391 - -settings.py -file - - - - -2012-06-22T20:34:37.455041Z -5deaf548007e78bdcd86145975f711ba -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -102 - -startup.py -file - - - - -2012-06-22T20:34:37.455041Z -b90bca8e5ee9505c6e10a146c6d8b7da -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -629 - -__init__.py -file - - - - -2012-06-22T20:34:37.451043Z -9192d1468d9d7adad7338e2ba3c3c4ea -2011-06-25T15:13:15.337221Z -1079 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -284 - -pg_fts_install.sql -file - - - - -2012-06-22T20:34:37.451043Z -5e3a73ac42ce1caae49cdc7cb493e89d -2010-10-21T14:29:28.305488Z -611 -hernani - - - - - - - - - - - - - - - - - - - - - -3988 - diff --git a/forum_modules/pgfulltext/.svn/prop-base/__init__.py.svn-base b/forum_modules/pgfulltext/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/pgfulltext/.svn/prop-base/handlers.py.svn-base b/forum_modules/pgfulltext/.svn/prop-base/handlers.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/prop-base/handlers.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/pgfulltext/.svn/prop-base/settings.py.svn-base b/forum_modules/pgfulltext/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/pgfulltext/.svn/prop-base/startup.py.svn-base b/forum_modules/pgfulltext/.svn/prop-base/startup.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/prop-base/startup.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/pgfulltext/.svn/text-base/__init__.py.svn-base b/forum_modules/pgfulltext/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index 05dcb3df7ec7c94760e10808be331e9c29aa8dd3..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -from forum.base import get_database_engine -database_type = get_database_engine() - -NAME = 'Postgresql Full Text Search' -DESCRIPTION = "Enables PostgreSql full text search functionality." - -try: - import psycopg2 - CAN_USE = 'postgresql' in database_type -except: - CAN_USE = False diff --git a/forum_modules/pgfulltext/.svn/text-base/handlers.py.svn-base b/forum_modules/pgfulltext/.svn/text-base/handlers.py.svn-base deleted file mode 100644 index 2b402666c6429f70d816788d34cf058f907f8006..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/text-base/handlers.py.svn-base +++ /dev/null @@ -1,38 +0,0 @@ -import re -from django.db import connection, transaction -from django.db.models import Q -from forum.models.question import Question, QuestionManager -from forum.models.node import Node -from forum.modules import decorate - -word_re = re.compile(r'\w+', re.UNICODE) - -@decorate(QuestionManager.search, needs_origin=False) -def question_search(self, keywords): - tsquery = " | ".join(word_re.findall(keywords)) - ilike = keywords + u"%%" - - return '-ranking', self.extra( - tables = ['forum_rootnode_doc'], - select={ - 'ranking': """ - rank_exact_matches(ts_rank_cd('{0.1, 0.2, 0.8, 1.0}'::float4[], "forum_rootnode_doc"."document", to_tsquery('english', %s), 32)) - """, - }, - where=[""" - "forum_rootnode_doc"."node_id" = "forum_node"."id" AND ("forum_rootnode_doc"."document" @@ to_tsquery('english', %s) OR - "forum_node"."title" ILIKE %s) - """], - params=[tsquery, ilike], - select_params=[tsquery], - ) - - -@decorate(Node.delete) -def delete(origin, self, *args, **kwargs): - cursor = connection.cursor() - cursor.execute("DELETE FROM forum_rootnode_doc WHERE node_id = %s" % (self.id)) - transaction.commit_unless_managed() - return origin(self, *args, **kwargs) - - diff --git a/forum_modules/pgfulltext/.svn/text-base/pg_fts_install.sql.svn-base b/forum_modules/pgfulltext/.svn/text-base/pg_fts_install.sql.svn-base deleted file mode 100644 index c0468706bb5abd9707c8745fd77da20f4faa8e85..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/text-base/pg_fts_install.sql.svn-base +++ /dev/null @@ -1,129 +0,0 @@ -CREATE OR REPLACE FUNCTION public.create_plpgsql_language () - RETURNS TEXT - AS $$ - CREATE LANGUAGE plpgsql; - SELECT 'language plpgsql created'::TEXT; - $$ -LANGUAGE 'sql'; - -SELECT CASE WHEN - (SELECT true::BOOLEAN - FROM pg_language - WHERE lanname='plpgsql') - THEN - (SELECT 'language already installed'::TEXT) - ELSE - (SELECT public.create_plpgsql_language()) - END; - -DROP FUNCTION public.create_plpgsql_language (); - -CREATE OR REPLACE FUNCTION public.drop_tsv_noderevision_column () RETURNS VOID AS $$ -begin - ALTER TABLE forum_noderevision DROP COLUMN tsv; - DROP TRIGGER IF EXISTS tsvectorupdate ON forum_noderevision; -end -$$ LANGUAGE plpgsql; - -CREATE OR REPLACE FUNCTION public.tsv_noderevision_column_exists() RETURNS int AS $$ - SELECT COUNT(attname)::int FROM pg_attribute WHERE attrelid = (SELECT oid FROM pg_class WHERE relname = 'forum_noderevision') AND attname = 'tsv'; -$$ LANGUAGE 'sql'; - -select case when public.tsv_noderevision_column_exists()>0 then public.drop_tsv_noderevision_column()end; - -drop function drop_tsv_noderevision_column(); -drop function tsv_noderevision_column_exists(); - -CREATE OR REPLACE FUNCTION set_doctable_tsv() RETURNS TRIGGER AS $$ -declare - root_id int; - doc tsvector; - rcount int; - cv tsvector; -begin - SELECT abs_parent_id INTO root_id FROM forum_node WHERE id = new.node_id; - - IF root_id IS NULL THEN - root_id := new.node_id; - END IF; - - SELECT count(*)::int INTO rcount FROM forum_node WHERE id = root_id; - - IF rcount = 0 THEN - return new; - END IF; - - SELECT - setweight(to_tsvector('english', coalesce(tagnames,'')), 'A') || - setweight(to_tsvector('english', coalesce(title,'')), 'B') || - setweight(to_tsvector('english', coalesce(body,'')), 'C') INTO doc - FROM forum_node WHERE id = root_id; - - SELECT count(*)::int INTO rcount FROM forum_node WHERE abs_parent_id = root_id AND (NOT state_string LIKE '%%deleted%%'); - - IF rcount > 0 THEN - FOR cv in SELECT setweight(to_tsvector('english', coalesce(body,'')), 'C') FROM forum_node WHERE abs_parent_id = root_id AND (NOT state_string LIKE '%%deleted%%') LOOP - doc :=(doc || cv); - END LOOP; - END IF; - - SELECT count(*)::int INTO rcount FROM forum_rootnode_doc WHERE node_id = root_id; - - IF rcount > 0 THEN - UPDATE forum_rootnode_doc SET document = doc WHERE node_id = root_id; - ELSE - INSERT INTO forum_rootnode_doc (node_id, document) VALUES (root_id, doc); - END IF; - - RETURN new; -end -$$ LANGUAGE plpgsql; - -CREATE OR REPLACE FUNCTION public.build_doc_table() RETURNS VOID as $$ - CREATE TABLE forum_rootnode_doc - ( - node_id integer, - "document" tsvector, - PRIMARY KEY (node_id), - FOREIGN KEY (node_id) REFERENCES forum_node (id) ON UPDATE NO ACTION ON DELETE NO ACTION - ) WITH (OIDS=FALSE); - - DROP TRIGGER IF EXISTS tsvectorupdate ON forum_noderevision; - - CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE - ON forum_noderevision FOR EACH ROW EXECUTE PROCEDURE set_doctable_tsv(); - - CREATE INDEX doctable_tsv ON forum_rootnode_doc USING gin(document); -$$ LANGUAGE 'sql'; - -CREATE OR REPLACE FUNCTION public.doc_table_exists() RETURNS int AS $$ - SELECT COUNT(table_name)::int FROM information_schema.tables WHERE table_name = 'forum_rootnode_doc'; -$$ LANGUAGE 'sql'; - -select case when public.doc_table_exists()=0 then public.build_doc_table()end; - -drop function build_doc_table(); -drop function doc_table_exists(); - -CREATE OR REPLACE FUNCTION rank_exact_matches(rank float) RETURNS float AS $$ -begin - IF rank = 0 THEN - return 1; - ELSE - return rank; - END IF; - -end -$$ LANGUAGE plpgsql; - -CREATE OR REPLACE FUNCTION public.rebuild_index() RETURNS VOID as $$ - DECLARE - r integer; - BEGIN - FOR r IN SELECT active_revision_id FROM forum_node WHERE node_type = 'question' LOOP - UPDATE forum_noderevision SET id = id WHERE id = r; - END LOOP; - END -$$ LANGUAGE 'plpgsql'; - -SELECT rebuild_index(); diff --git a/forum_modules/pgfulltext/.svn/text-base/settings.py.svn-base b/forum_modules/pgfulltext/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 4fc45afd790794daa78b174321f6caa83723a4a5..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,3 +0,0 @@ -from forum.settings.base import Setting - -PG_FTSTRIGGERS_VERSION = Setting('PG_FTSTRIGGERS_VERSION', 0) \ No newline at end of file diff --git a/forum_modules/pgfulltext/.svn/text-base/startup.py.svn-base b/forum_modules/pgfulltext/.svn/text-base/startup.py.svn-base deleted file mode 100644 index 59990b5e4162e2932c8c0a4f1e277e4ace7fd300..0000000000000000000000000000000000000000 --- a/forum_modules/pgfulltext/.svn/text-base/startup.py.svn-base +++ /dev/null @@ -1,27 +0,0 @@ -import os -from forum.models import KeyValue -from django.db import connection, transaction -import settings - -VERSION = 11 - -if int(settings.PG_FTSTRIGGERS_VERSION) < VERSION: - f = open(os.path.join(os.path.dirname(__file__), 'pg_fts_install.sql'), 'r') - - try: - cursor = connection.cursor() - cursor.execute(f.read()) - transaction.commit_unless_managed() - - settings.PG_FTSTRIGGERS_VERSION.set_value(VERSION) - - except Exception, e: - #import sys, traceback - #traceback.print_exc(file=sys.stdout) - pass - finally: - cursor.close() - - f.close() - -import handlers diff --git a/forum_modules/project_badges/.svn/all-wcprops b/forum_modules/project_badges/.svn/all-wcprops deleted file mode 100644 index 89a8d0b744e30d53bf991c64a1590e059ff48d8c..0000000000000000000000000000000000000000 --- a/forum_modules/project_badges/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1250/osqa/trunk/forum_modules/project_badges -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/project_badges/__init__.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/project_badges/settings.py -END -badges.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1250/osqa/trunk/forum_modules/project_badges/badges.py -END diff --git a/forum_modules/project_badges/.svn/entries b/forum_modules/project_badges/.svn/entries deleted file mode 100644 index 5704c67b92a0fa61be07e994a48fc09a6bb4075b..0000000000000000000000000000000000000000 --- a/forum_modules/project_badges/.svn/entries +++ /dev/null @@ -1,130 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/project_badges -http://svn.osqa.net/svnroot - - - -2012-04-12T14:39:46.736192Z -1250 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:38.362588Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -settings.py -file - - - - -2012-06-22T20:34:38.362588Z -08eaf5bfe996a9a69bbd5bc626c43d7c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -312 - -badges.py -file - - - - -2012-06-22T20:34:38.362588Z -4c94e7b8ed205a1e3a9ac6a0d6506466 -2012-04-12T14:39:46.736192Z -1250 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -763 - diff --git a/forum_modules/project_badges/.svn/prop-base/__init__.py.svn-base b/forum_modules/project_badges/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/project_badges/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/project_badges/.svn/prop-base/badges.py.svn-base b/forum_modules/project_badges/.svn/prop-base/badges.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/project_badges/.svn/prop-base/badges.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/project_badges/.svn/prop-base/settings.py.svn-base b/forum_modules/project_badges/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/project_badges/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/project_badges/.svn/text-base/__init__.py.svn-base b/forum_modules/project_badges/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/project_badges/.svn/text-base/badges.py.svn-base b/forum_modules/project_badges/.svn/text-base/badges.py.svn-base deleted file mode 100644 index 9633567c487feb47052865fda8b3b9936bc5482a..0000000000000000000000000000000000000000 --- a/forum_modules/project_badges/.svn/text-base/badges.py.svn-base +++ /dev/null @@ -1,20 +0,0 @@ -from django.utils.translation import ugettext as _ -from forum.badges.base import AbstractBadge -from forum.models import Badge, Tag -from forum.actions import VoteUpAction -import settings - -class BugBuster(AbstractBadge): - type = Badge.SILVER - name = _("Bug Buster") - description = _('Got %s upvotes in a question tagged with "bug"') % settings.BUG_BUSTER_VOTES_UP - listen_to = (VoteUpAction, ) - - def award_to(self, action): - if action.node.node_type == "question" and int(action.node.score) == int(settings.BUG_BUSTER_VOTES_UP): - try: - bug = Tag.objects.get(name="bug") - if bug in action.node.tags.all(): - return action.node.author - except Exception: - pass diff --git a/forum_modules/project_badges/.svn/text-base/settings.py.svn-base b/forum_modules/project_badges/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 375ab7b487a569ce30d43bfc410bbb504a9ee18d..0000000000000000000000000000000000000000 --- a/forum_modules/project_badges/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,8 +0,0 @@ -from forum.settings import BADGES_SET -from forum.settings.base import Setting - -BUG_BUSTER_VOTES_UP = Setting('BUG_BUSTER_VOTES_UP', 3, BADGES_SET, dict( -label = "Bug Buster Votes Up", -help_text = """ -Number of votes up required for the author of a question tagged as bug to be awarded the Bug Buster badge. -""")) \ No newline at end of file diff --git a/forum_modules/recaptcha/.svn/all-wcprops b/forum_modules/recaptcha/.svn/all-wcprops deleted file mode 100644 index 5c0cee91d112ffa7c0230d1e957f5a2bc28aff33..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1236/osqa/trunk/forum_modules/recaptcha -END -formfield.py -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/!svn/ver/1233/osqa/trunk/forum_modules/recaptcha/formfield.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/recaptcha/__init__.py -END -handlers.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/recaptcha/handlers.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/recaptcha/settings.py -END diff --git a/forum_modules/recaptcha/.svn/entries b/forum_modules/recaptcha/.svn/entries deleted file mode 100644 index 07dbdf5adcfa96eb2bd2fc6a11d327eb5ba31636..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/entries +++ /dev/null @@ -1,167 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/recaptcha -http://svn.osqa.net/svnroot - - - -2012-03-22T15:20:29.665148Z -1236 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -formfield.py -file - - - - -2012-06-22T20:34:37.367085Z -243dbe346b47c8c143f117c73b2d4704 -2012-03-15T03:10:42.624815Z -1233 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -1206 - -lib -dir - -__init__.py -file - - - - -2012-06-22T20:34:37.363087Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -handlers.py -file - - - - -2012-06-22T20:34:37.367085Z -a805f94ccc299d2ed5add6d5f7e54443 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -110 - -settings.py -file - - - - -2012-06-22T20:34:37.367085Z -083aaa727aa66670cdd0a7e4b06ff9bd -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -551 - diff --git a/forum_modules/recaptcha/.svn/prop-base/__init__.py.svn-base b/forum_modules/recaptcha/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/recaptcha/.svn/prop-base/formfield.py.svn-base b/forum_modules/recaptcha/.svn/prop-base/formfield.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/prop-base/formfield.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/recaptcha/.svn/prop-base/handlers.py.svn-base b/forum_modules/recaptcha/.svn/prop-base/handlers.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/prop-base/handlers.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/recaptcha/.svn/prop-base/settings.py.svn-base b/forum_modules/recaptcha/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/recaptcha/.svn/text-base/__init__.py.svn-base b/forum_modules/recaptcha/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/recaptcha/.svn/text-base/formfield.py.svn-base b/forum_modules/recaptcha/.svn/text-base/formfield.py.svn-base deleted file mode 100644 index 26ece87262b2ca7c857b677cbd064e06d530566b..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/text-base/formfield.py.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -from django import forms -from lib import captcha -from django.utils.safestring import mark_safe -from django.utils.encoding import force_unicode, smart_unicode -from django.utils.translation import ugettext_lazy as _ -import settings - -class ReCaptchaField(forms.Field): - def __init__(self, *args, **kwargs): - super(ReCaptchaField, self).__init__(widget=ReCaptchaWidget) - - def clean(self, values): - super(ReCaptchaField, self).clean(values[1]) - recaptcha_challenge_value = smart_unicode(values[0]) - recaptcha_response_value = smart_unicode(values[1]) - check_captcha = captcha.submit(recaptcha_challenge_value, - recaptcha_response_value, settings.RECAPTCHA_PRIV_KEY, {}) - - if not check_captcha.is_valid: - raise forms.util.ValidationError(_('Invalid captcha')) - - return values[0] - - -class ReCaptchaWidget(forms.Widget): - def render(self, name, value, attrs=None): - return mark_safe(force_unicode(captcha.displayhtml(settings.RECAPTCHA_PUB_KEY))) - - def value_from_datadict(self, data, files, name): - - return data.get('recaptcha_challenge_field', None), data.get('recaptcha_response_field', None) - - diff --git a/forum_modules/recaptcha/.svn/text-base/handlers.py.svn-base b/forum_modules/recaptcha/.svn/text-base/handlers.py.svn-base deleted file mode 100644 index 00fc4245c5ab6a869352ec21059a4050770cfcb0..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/text-base/handlers.py.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -from formfield import ReCaptchaField - -def create_anti_spam_field(): - return ('recaptcha', ReCaptchaField()) \ No newline at end of file diff --git a/forum_modules/recaptcha/.svn/text-base/settings.py.svn-base b/forum_modules/recaptcha/.svn/text-base/settings.py.svn-base deleted file mode 100644 index ceeef721aba6d4de995a6eb16516b5bc248bed52..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,17 +0,0 @@ -from forum.settings import EXT_KEYS_SET -from forum.settings.base import Setting - -RECAPTCHA_PUB_KEY = Setting('RECAPTCHA_PUB_KEY', '', EXT_KEYS_SET, dict( -label = "Recaptch public key", -help_text = """ -Get this key at <a href="http://recaptcha.net">reCaptcha</a> to enable -recaptcha anti spam through. -""", -required=False)) - -RECAPTCHA_PRIV_KEY = Setting('RECAPTCHA_PRIV_KEY', '', EXT_KEYS_SET, dict( -label = "Recaptch private key", -help_text = """ -This is the private key you'll get in the same place as the recaptcha public key. -""", -required=False)) diff --git a/forum_modules/recaptcha/lib/.svn/all-wcprops b/forum_modules/recaptcha/lib/.svn/all-wcprops deleted file mode 100644 index 453d343108dc9cf4244fbfdb45faa181b73bdb51..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/lib/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 61 -/svnroot/!svn/ver/1236/osqa/trunk/forum_modules/recaptcha/lib -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/recaptcha/lib/__init__.py -END -captcha.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1236/osqa/trunk/forum_modules/recaptcha/lib/captcha.py -END diff --git a/forum_modules/recaptcha/lib/.svn/entries b/forum_modules/recaptcha/lib/.svn/entries deleted file mode 100644 index cf2cb8b1f469216ca3489b86374edab6bb32f11d..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/lib/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/recaptcha/lib -http://svn.osqa.net/svnroot - - - -2012-03-22T15:20:29.665148Z -1236 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -__init__.py -file - - - - -2012-06-22T20:34:37.355091Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -captcha.py -file - - - - -2012-06-22T20:34:37.355091Z -e7c5d2dad43707ce2e63a3fca1f18e0b -2012-03-22T15:20:29.665148Z -1236 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -2140 - diff --git a/forum_modules/recaptcha/lib/.svn/prop-base/__init__.py.svn-base b/forum_modules/recaptcha/lib/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/lib/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/recaptcha/lib/.svn/prop-base/captcha.py.svn-base b/forum_modules/recaptcha/lib/.svn/prop-base/captcha.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/lib/.svn/prop-base/captcha.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/recaptcha/lib/.svn/text-base/__init__.py.svn-base b/forum_modules/recaptcha/lib/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/recaptcha/lib/.svn/text-base/captcha.py.svn-base b/forum_modules/recaptcha/lib/.svn/text-base/captcha.py.svn-base deleted file mode 100644 index 0b540753ab161aa40017fd48a767cb5b3d2f4469..0000000000000000000000000000000000000000 --- a/forum_modules/recaptcha/lib/.svn/text-base/captcha.py.svn-base +++ /dev/null @@ -1,73 +0,0 @@ -# -*- coding: utf-8 -*- - -import urllib2, urllib - -API_SSL_SERVER="https://www.google.com/recaptcha/api" -API_SERVER="http://www.google.com/recaptcha/api" -VERIFY_SERVER="www.google.com" - -class RecaptchaResponse(object): - def __init__(self, is_valid, error_code=None): - self.is_valid = is_valid - self.error_code = error_code - -def displayhtml (public_key): - - return """ - <div id="recaptcha_field"></div> - <script type="text/javascript" src="http://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script> - - <script type="text/javascript"> - $(function(){ - Recaptcha.create("%(PublicKey)s", 'recaptcha_field', { - theme: "red"}); - }); - </script> - -""" % { - 'PublicKey' : public_key, - } - - -def submit (recaptcha_challenge_field, - recaptcha_response_field, - private_key, - remoteip): - - if not (recaptcha_response_field and recaptcha_challenge_field and - len (recaptcha_response_field) and len (recaptcha_challenge_field)): - return RecaptchaResponse (is_valid = False, error_code = 'incorrect-captcha-sol') - - - def encode_if_necessary(s): - if isinstance(s, unicode): - return s.encode('utf-8') - return s - - params = urllib.urlencode ({ - 'privatekey': encode_if_necessary(private_key), - 'remoteip' : encode_if_necessary(remoteip), - 'challenge': encode_if_necessary(recaptcha_challenge_field), - 'response' : encode_if_necessary(recaptcha_response_field), - }) - - request = urllib2.Request ( - url = "http://%s/recaptcha/api/verify" % VERIFY_SERVER, - data = params, - headers = { - "Content-type": "application/x-www-form-urlencoded", - "User-agent": "reCAPTCHA Python" - } - ) - - httpresp = urllib2.urlopen(request) - - return_values = httpresp.read().splitlines() - httpresp.close() - - return_code = return_values[0] - - if return_code == "true": - return RecaptchaResponse(is_valid = True) - else: - return RecaptchaResponse(is_valid = False, error_code = return_values[1]) diff --git a/forum_modules/robotstxt/.svn/all-wcprops b/forum_modules/robotstxt/.svn/all-wcprops deleted file mode 100644 index 740161c6bac3b9734bd92a1670b8a1c898e45962..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/.svn/all-wcprops +++ /dev/null @@ -1,23 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/robotstxt -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/robotstxt/urls.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/robotstxt/__init__.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/robotstxt/settings.py -END diff --git a/forum_modules/robotstxt/.svn/entries b/forum_modules/robotstxt/.svn/entries deleted file mode 100644 index 802c7a0025d2d45499a2ea8365eb53801f570e4d..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/.svn/entries +++ /dev/null @@ -1,133 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/robotstxt -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -urls.py -file - - - - -2012-06-22T20:34:38.326606Z -043461bb1f79c51ff6144d29c4b4daf5 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -200 - -templates -dir - -__init__.py -file - - - - -2012-06-22T20:34:38.326606Z -d41d8cd98f00b204e9800998ecf8427e -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -0 - -settings.py -file - - - - -2012-06-22T20:34:38.326606Z -103c97d207b2ad4cf9f98608142b2356 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -634 - diff --git a/forum_modules/robotstxt/.svn/prop-base/__init__.py.svn-base b/forum_modules/robotstxt/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/robotstxt/.svn/prop-base/settings.py.svn-base b/forum_modules/robotstxt/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/robotstxt/.svn/prop-base/urls.py.svn-base b/forum_modules/robotstxt/.svn/prop-base/urls.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/.svn/prop-base/urls.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/robotstxt/.svn/text-base/__init__.py.svn-base b/forum_modules/robotstxt/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/robotstxt/.svn/text-base/settings.py.svn-base b/forum_modules/robotstxt/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 44d576aea5f29029884970cd4a91ed18854878b7..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,23 +0,0 @@ -from forum.settings.base import Setting, SettingSet -from django.forms.widgets import Textarea -from django.core.urlresolvers import reverse -from forum.settings import APP_URL - -ROBOTS_SET = SettingSet('robots', 'Robots txt', "Set up the robots.txt file.", 3000) - -ROBOTS_FILE = Setting('ROBOTS_FILE', -"""Sitemap: %s/sitemap.xml - -User-Agent: * -Disallow: /accounts/ -Disallow: /users/ -Disallow: /revisions/ -Disallow: /search -Disallow: /matching_tags -Disallow: /*sort= -""" % APP_URL, ROBOTS_SET, dict( -label = "Robots.txt file", -help_text = """ -The robots.txt file search engine spiders will see. -""", -widget=Textarea(attrs={'rows': '20'}))) \ No newline at end of file diff --git a/forum_modules/robotstxt/.svn/text-base/urls.py.svn-base b/forum_modules/robotstxt/.svn/text-base/urls.py.svn-base deleted file mode 100644 index 0706886a55403df6909f9c59445493f1e799748b..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,7 +0,0 @@ -from django.conf.urls.defaults import * -from django.http import HttpResponse -import settings - -urlpatterns = patterns('', - (r'^robots.txt$', lambda r: HttpResponse(settings.ROBOTS_FILE.value)), -) diff --git a/forum_modules/robotstxt/templates/.svn/all-wcprops b/forum_modules/robotstxt/templates/.svn/all-wcprops deleted file mode 100644 index 60883b0b617b34a4778028dc1f275c6313ff384c..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/541/osqa/trunk/forum_modules/robotstxt/templates -END -robots.txt -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/541/osqa/trunk/forum_modules/robotstxt/templates/robots.txt -END diff --git a/forum_modules/robotstxt/templates/.svn/entries b/forum_modules/robotstxt/templates/.svn/entries deleted file mode 100644 index 9d02884aa557a33c2ca732e8081e24fc2bd86ce4..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/robotstxt/templates -http://svn.osqa.net/svnroot - - - -2010-07-16T17:44:18.041440Z -541 -matt - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -robots.txt -file - - - - -2012-06-22T20:34:38.322608Z -26c3c0425dc20c1082b3b2b0e5afcf82 -2010-07-16T17:44:18.041440Z -541 -matt - - - - - - - - - - - - - - - - - - - - - -135 - diff --git a/forum_modules/robotstxt/templates/.svn/text-base/robots.txt.svn-base b/forum_modules/robotstxt/templates/.svn/text-base/robots.txt.svn-base deleted file mode 100644 index a93756d62f1a1a5b4ce2816a066be23af2a6390e..0000000000000000000000000000000000000000 --- a/forum_modules/robotstxt/templates/.svn/text-base/robots.txt.svn-base +++ /dev/null @@ -1,7 +0,0 @@ -User-Agent: * -Disallow: /accounts/ -Disallow: /users/ -Disallow: /revisions/ -Disallow: /search -Disallow: /matching_tags -Disallow: /*sort= \ No newline at end of file diff --git a/forum_modules/sphinxfulltext/.svn/all-wcprops b/forum_modules/sphinxfulltext/.svn/all-wcprops deleted file mode 100644 index 13c90bcde981c14d1fa40c86843400d569905396..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/all-wcprops +++ /dev/null @@ -1,41 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 62 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/sphinxfulltext -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/sphinxfulltext/__init__.py -END -handlers.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/sphinxfulltext/handlers.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/sphinxfulltext/settings.py -END -models.py -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/sphinxfulltext/models.py -END -README.txt -K 25 -svn:wc:ra_dav:version-url -V 71 -/svnroot/!svn/ver/17/osqa/trunk/forum_modules/sphinxfulltext/README.txt -END -dependencies.py -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/!svn/ver/1077/osqa/trunk/forum_modules/sphinxfulltext/dependencies.py -END diff --git a/forum_modules/sphinxfulltext/.svn/entries b/forum_modules/sphinxfulltext/.svn/entries deleted file mode 100644 index fe9d462f4b874cf52d3b277ee7ec486e3c72b61f..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/entries +++ /dev/null @@ -1,232 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/sphinxfulltext -http://svn.osqa.net/svnroot - - - -2011-06-25T03:50:15.766114Z -1077 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -dependencies.py -file - - - - -2012-06-22T20:34:37.546995Z -dca7e7e33b2ff663f3315bd00225857d -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -34 - -__init__.py -file - - - - -2012-06-22T20:34:37.542997Z -f607a70aae8cf22c93f206b6470b622c -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -75 - -handlers.py -file - - - - -2012-06-22T20:34:37.542997Z -14aaab71a7dbaf097cb65b3688317d4b -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -108 - -settings.py -file - - - - -2012-06-22T20:34:37.542997Z -dc1d41734e29f10abf84c58883699555 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -243 - -models.py -file - - - - -2012-06-22T20:34:37.542997Z -50ea55ab3862cd167c42368892f43942 -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -404 - -README.txt -file - - - - -2012-06-22T20:34:37.546995Z -dedbe23b9b4197f65ba55a0312f94904 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -1119 - diff --git a/forum_modules/sphinxfulltext/.svn/prop-base/__init__.py.svn-base b/forum_modules/sphinxfulltext/.svn/prop-base/__init__.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/prop-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/sphinxfulltext/.svn/prop-base/dependencies.py.svn-base b/forum_modules/sphinxfulltext/.svn/prop-base/dependencies.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/prop-base/dependencies.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/sphinxfulltext/.svn/prop-base/handlers.py.svn-base b/forum_modules/sphinxfulltext/.svn/prop-base/handlers.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/prop-base/handlers.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/sphinxfulltext/.svn/prop-base/models.py.svn-base b/forum_modules/sphinxfulltext/.svn/prop-base/models.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/prop-base/models.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/sphinxfulltext/.svn/prop-base/settings.py.svn-base b/forum_modules/sphinxfulltext/.svn/prop-base/settings.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/prop-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/forum_modules/sphinxfulltext/.svn/text-base/README.txt.svn-base b/forum_modules/sphinxfulltext/.svn/text-base/README.txt.svn-base deleted file mode 100644 index 7d656533e232659051e9470cb27c67ec312a486a..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/text-base/README.txt.svn-base +++ /dev/null @@ -1,29 +0,0 @@ -Full text search (using sphinx search) - -Currently full text search works only with sphinx search engine -And builtin PostgreSQL (postgres only >= 8.3???) - -5.1 Instructions for Sphinx search setup -Sphinx at this time supports only MySQL and PostgreSQL databases -to enable this, install sphinx search engine and djangosphinx - -configure sphinx, sample configuration can be found in -sphinx/sphinx.conf file usually goes somewhere in /etc tree - -build osqa index first time manually - -% indexer --config /path/to/sphinx.conf --index osqa - -setup cron job to rebuild index periodically with command -your crontab entry may be something like - -0 9,15,21 * * * /usr/local/bin/indexer --config /etc/sphinx/sphinx.conf --all --rotate >/dev/null 2>&1 -adjust it as necessary this one will reindex three times a day at 9am 3pm and 9pm - -if your forum grows very big ( good luck with that :) you'll -need to two search indices one diff index and one main -please refer to online sphinx search documentation for the information -on the subject http://sphinxsearch.com/docs/ - -in settings.py look for INSTALLED_APPS -and uncomment #'djangosphinx', \ No newline at end of file diff --git a/forum_modules/sphinxfulltext/.svn/text-base/__init__.py.svn-base b/forum_modules/sphinxfulltext/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index b7250c8bf8ffadeabd6542dd3ebe869966b93363..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/text-base/__init__.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -try: - import djangosphinx - CAN_USE = True -except: - CAN_USE = False \ No newline at end of file diff --git a/forum_modules/sphinxfulltext/.svn/text-base/dependencies.py.svn-base b/forum_modules/sphinxfulltext/.svn/text-base/dependencies.py.svn-base deleted file mode 100644 index 046ebfc5920f0395c48d4c337590f8d220f354ca..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/text-base/dependencies.py.svn-base +++ /dev/null @@ -1,2 +0,0 @@ -DJANGO_APPS = ('djangosphinx', ) - diff --git a/forum_modules/sphinxfulltext/.svn/text-base/handlers.py.svn-base b/forum_modules/sphinxfulltext/.svn/text-base/handlers.py.svn-base deleted file mode 100644 index f00c64fe956fe698e5519b4b72b3a3dc7f83e349..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/text-base/handlers.py.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -from forum.models import Question - -def question_search(keywords): - return Question.search.query(keywords) \ No newline at end of file diff --git a/forum_modules/sphinxfulltext/.svn/text-base/models.py.svn-base b/forum_modules/sphinxfulltext/.svn/text-base/models.py.svn-base deleted file mode 100644 index a188728d8a8ea4342ecbb432a11040641108294a..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/text-base/models.py.svn-base +++ /dev/null @@ -1,11 +0,0 @@ -from forum.models import Question -from django.conf import settings -from djangosphinx.manager import SphinxSearch - -from djangosphinx.models import SphinxSearch - -Question.add_to_class('search', SphinxSearch( - index=' '.join(settings.SPHINX_SEARCH_INDICES), - mode='SPH_MATCH_ALL', - ) - ) diff --git a/forum_modules/sphinxfulltext/.svn/text-base/settings.py.svn-base b/forum_modules/sphinxfulltext/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 7c2da124873a88c7009d177164e28f7974ab0c74..0000000000000000000000000000000000000000 --- a/forum_modules/sphinxfulltext/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -SPHINX_API_VERSION = 0x113 #refer to djangosphinx documentation -SPHINX_SEARCH_INDICES=('osqa',) #a tuple of index names remember about a comma after the -#last item, especially if you have just one :) -SPHINX_SERVER='localhost' -SPHINX_PORT=3312 diff --git a/forum_modules/sximporter/.svn/all-wcprops b/forum_modules/sximporter/.svn/all-wcprops deleted file mode 100644 index 23f7ee23e9f763ef43d2325364c07c73a9bae751..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/.svn/all-wcprops +++ /dev/null @@ -1,29 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/!svn/ver/988/osqa/trunk/forum_modules/sximporter -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 64 -/svnroot/!svn/ver/61/osqa/trunk/forum_modules/sximporter/urls.py -END -views.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/821/osqa/trunk/forum_modules/sximporter/views.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/61/osqa/trunk/forum_modules/sximporter/__init__.py -END -importer.py -K 25 -svn:wc:ra_dav:version-url -V 69 -/svnroot/!svn/ver/924/osqa/trunk/forum_modules/sximporter/importer.py -END diff --git a/forum_modules/sximporter/.svn/entries b/forum_modules/sximporter/.svn/entries deleted file mode 100644 index e3af0d4e3c41d3d87c32ad7f804039cab012dcc4..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/.svn/entries +++ /dev/null @@ -1,170 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/sximporter -http://svn.osqa.net/svnroot - - - -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -importer.py -file - - - - -2012-06-22T20:34:38.446546Z -bb3da388b26f389ba0e2d6659e2f28c6 -2011-04-02T12:20:13.797824Z -924 -jordan - - - - - - - - - - - - - - - - - - - - - -33821 - -urls.py -file - - - - -2012-06-22T20:34:38.446546Z -93710e45646ba27c10540b316f7d6899 -2010-04-22T12:09:13.850154Z -61 -hernani - - - - - - - - - - - - - - - - - - - - - -303 - -templates -dir - -tmp -dir - -views.py -file - - - - -2012-06-22T20:34:38.442548Z -6f1664d46d43a530a07ff85daf2ffcb6 -2011-03-11T19:50:09.258286Z -821 -hernani - - - - - - - - - - - - - - - - - - - - - -1435 - -__init__.py -file - - - - -2012-06-22T20:34:38.446546Z -d41d8cd98f00b204e9800998ecf8427e -2010-04-22T12:09:13.850154Z -61 -hernani - - - - - - - - - - - - - - - - - - - - - -0 - diff --git a/forum_modules/sximporter/.svn/text-base/__init__.py.svn-base b/forum_modules/sximporter/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/sximporter/.svn/text-base/importer.py.svn-base b/forum_modules/sximporter/.svn/text-base/importer.py.svn-base deleted file mode 100644 index 6669b8c0fe7dc8bf44efd9b951b8ba8fe3758c22..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/.svn/text-base/importer.py.svn-base +++ /dev/null @@ -1,1034 +0,0 @@ -# -*- coding: utf-8 -*- - -from datetime import datetime -import time -import re -import os -import gc -from django.utils.translation import ugettext as _ - -from django.utils.encoding import force_unicode - -try: - from cPickle import loads, dumps -except ImportError: - from pickle import loads, dumps - -from copy import deepcopy -from base64 import b64encode, b64decode -from zlib import compress, decompress - -from xml.sax import make_parser -from xml.sax.handler import ContentHandler - -def create_orm(): - from django.conf import settings - from south.orm import FakeORM - - get_migration_number_re = re.compile(r'^((\d+)_.*)\.py$') - - migrations_folder = os.path.join(settings.SITE_SRC_ROOT, 'forum/migrations') - - highest_number = 0 - highest_file = None - - for f in os.listdir(migrations_folder): - if os.path.isfile(os.path.join(migrations_folder, f)): - m = get_migration_number_re.match(f) - - if m: - found = int(m.group(2)) - - if found > highest_number: - highest_number = found - highest_file = m.group(1) - - mod = __import__('forum.migrations.%s' % highest_file, globals(), locals(), ['forum.migrations']) - return FakeORM(getattr(mod, 'Migration'), "forum") - -orm = create_orm() - -class SXTableHandler(ContentHandler): - def __init__(self, fname, callback): - self.in_row = False - self.el_data = {} - self.ch_data = '' - - self.fname = fname.lower() - self.callback = callback - - def startElement(self, name, attrs): - if name.lower() == self.fname: - pass - elif name.lower() == "row": - self.in_row = True - - def characters(self, ch): - self.ch_data += ch - - def endElement(self, name): - if name.lower() == self.fname: - pass - elif name.lower() == "row": - self.callback(self.el_data) - - self.in_row = False - del self.el_data - self.el_data = {} - elif self.in_row: - self.el_data[name.lower()] = self.ch_data.strip() - del self.ch_data - self.ch_data = '' - - -def readTable(path, name, callback): - parser = make_parser() - handler = SXTableHandler(name, callback) - parser.setContentHandler(handler) - - f = os.path.join(path, "%s.xml" % name) - parser.parse(f) - - -def dbsafe_encode(value): - return force_unicode(b64encode(compress(dumps(deepcopy(value))))) - -def getText(el): - rc = "" - for node in el.childNodes: - if node.nodeType == node.TEXT_NODE: - rc = rc + node.data - return rc.strip() - -msstrip = re.compile(r'^(.*)\.\d+') -def readTime(ts): - noms = msstrip.match(ts) - if noms: - ts = noms.group(1) - - return datetime(*time.strptime(ts, '%Y-%m-%dT%H:%M:%S')[0:6]) - -#def readEl(el): -# return dict([(n.tagName.lower(), getText(n)) for n in el.childNodes if n.nodeType == el.ELEMENT_NODE]) - -#def readTable(dump, name): -# for e in minidom.parseString(dump.read("%s.xml" % name)).getElementsByTagName('row'): -# yield readEl(e) -#return [readEl(e) for e in minidom.parseString(dump.read("%s.xml" % name)).getElementsByTagName('row')] - -google_accounts_lookup = re.compile(r'^https?://www.google.com/accounts/') -yahoo_accounts_lookup = re.compile(r'^https?://me.yahoo.com/a/') - -openid_lookups = [ - re.compile(r'^https?://www.google.com/profiles/(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://me.yahoo.com/(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://openid.aol.com/(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://(?P<uname>\w+(\.\w+)*).myopenid.com/?$'), - re.compile(r'^https?://flickr.com/(\w+/)*(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://technorati.com/people/technorati/(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://(?P<uname>\w+(\.\w+)*).wordpress.com/?$'), - re.compile(r'^https?://(?P<uname>\w+(\.\w+)*).blogspot.com/?$'), - re.compile(r'^https?://(?P<uname>\w+(\.\w+)*).livejournal.com/?$'), - re.compile(r'^https?://claimid.com/(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://(?P<uname>\w+(\.\w+)*).pip.verisignlabs.com/?$'), - re.compile(r'^https?://getopenid.com/(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://[\w\.]+/(\w+/)*(?P<uname>\w+(\.\w+)*)/?$'), - re.compile(r'^https?://(?P<uname>[\w\.]+)/?$'), - ] - -def final_username_attempt(sxu): - openid = sxu.get('openid', None) - - if openid: - if google_accounts_lookup.search(openid): - return UnknownGoogleUser(sxu.get('id')) - if yahoo_accounts_lookup.search(openid): - return UnknownYahooUser(sxu.get('id')) - - for lookup in openid_lookups: - if lookup.search(openid): - return lookup.search(openid).group('uname') - - return UnknownUser(sxu.get('id')) - -class UnknownUser(object): - def __init__(self, id): - self._id = id - - def __str__(self): - return _("user-%(id)s") % {'id': self._id} - - def __unicode__(self): - return self.__str__() - - def encode(self, *args): - return self.__str__() - -class UnknownGoogleUser(UnknownUser): - def __str__(self): - return _("user-%(id)s (google)") % {'id': self._id} - -class UnknownYahooUser(UnknownUser): - def __str__(self): - return _("user-%(id)s (yahoo)") % {'id': self._id} - - -class IdMapper(dict): - - def __init__(self): - self.default = 1 - - def __getitem__(self, key): - key = int(key) - return super(IdMapper, self).get(key, self.default) - - def __setitem__(self, key, value): - super(IdMapper, self).__setitem__(int(key), int(value)) - -class IdIncrementer(): - def __init__(self, initial): - self.value = initial - - def inc(self): - self.value += 1 - -openidre = re.compile('^https?\:\/\/') -def userimport(path, options): - - usernames = [] - openids = set() - uidmapper = IdMapper() - - authenticated_user = options.get('authenticated_user', None) - owneruid = options.get('owneruid', None) - #check for empty values - if not owneruid: - owneruid = None - else: - owneruid = int(owneruid) - - def callback(sxu): - create = True - set_mapper_defaults = False - - if sxu.get('id') == '-1': - return - #print "\n".join(["%s : %s" % i for i in sxu.items()]) - - if (owneruid and (int(sxu.get('id')) == owneruid)) or ( - (not owneruid) and len(uidmapper)): - - set_mapper_defaults = True - - if authenticated_user: - osqau = orm.User.objects.get(id=authenticated_user.id) - - for assoc in orm.AuthKeyUserAssociation.objects.filter(user=osqau): - openids.add(assoc.key) - - uidmapper[owneruid] = osqau.id - create = False - - sxbadges = sxu.get('badgesummary', None) - badges = {'1':'0', '2':'0', '3':'0'} - - if sxbadges: - badges.update(dict([b.split('=') for b in sxbadges.split()])) - - if create: - username = unicode(sxu.get('displayname', - sxu.get('displaynamecleaned', sxu.get('realname', final_username_attempt(sxu)))))[:30] - - if username in usernames: - #if options.get('mergesimilar', False) and sxu.get('email', 'INVALID') == user_by_name[username].email: - # osqau = user_by_name[username] - # create = False - # uidmapper[sxu.get('id')] = osqau.id - #else: - inc = 0 - - while True: - inc += 1 - totest = "%s %d" % (username[:29 - len(str(inc))], inc) - - if not totest in usernames: - username = totest - break - - osqau = orm.User( - id = sxu.get('id'), - username = username, - password = '!', - email = sxu.get('email', ''), - is_superuser = sxu.get('usertypeid') == '5', - is_staff = sxu.get('usertypeid') == '4', - is_active = True, - date_joined = readTime(sxu.get('creationdate')), - last_seen = readTime(sxu.get('lastaccessdate')), - about = sxu.get('aboutme', ''), - date_of_birth = sxu.get('birthday', None) and readTime(sxu['birthday']) or None, - email_isvalid = int(sxu.get('usertypeid')) > 2, - website = sxu.get('websiteurl', ''), - reputation = int(sxu.get('reputation')), - gold = int(badges['1']), - silver = int(badges['2']), - bronze = int(badges['3']), - real_name = sxu.get('realname', '')[:30], - location = sxu.get('location', ''), - ) - - osqau.save() - - user_joins = orm.Action( - action_type = "userjoins", - action_date = osqau.date_joined, - user = osqau - ) - user_joins.save() - - rep = orm.ActionRepute( - value = 1, - user = osqau, - date = osqau.date_joined, - action = user_joins - ) - rep.save() - - try: - orm.SubscriptionSettings.objects.get(user=osqau) - except: - s = orm.SubscriptionSettings(user=osqau) - s.save() - - uidmapper[osqau.id] = osqau.id - else: - new_about = sxu.get('aboutme', None) - if new_about and osqau.about != new_about: - if osqau.about: - osqau.about = "%s\n|\n%s" % (osqau.about, new_about) - else: - osqau.about = new_about - - osqau.username = sxu.get('displayname', - sxu.get('displaynamecleaned', sxu.get('realname', final_username_attempt(sxu)))) - osqau.email = sxu.get('email', '') - osqau.reputation += int(sxu.get('reputation')) - osqau.gold += int(badges['1']) - osqau.silver += int(badges['2']) - osqau.bronze += int(badges['3']) - - osqau.date_joined = readTime(sxu.get('creationdate')) - osqau.website = sxu.get('websiteurl', '') - osqau.date_of_birth = sxu.get('birthday', None) and readTime(sxu['birthday']) or None - osqau.location = sxu.get('location', '') - osqau.real_name = sxu.get('realname', '') - - #merged_users.append(osqau.id) - osqau.save() - - if set_mapper_defaults: - uidmapper[-1] = osqau.id - uidmapper.default = osqau.id - - usernames.append(osqau.username) - - openid = sxu.get('openid', None) - if openid and openidre.match(openid) and (not openid in openids): - assoc = orm.AuthKeyUserAssociation(user=osqau, key=openid, provider="openidurl") - assoc.save() - openids.add(openid) - - openidalt = sxu.get('openidalt', None) - if openidalt and openidre.match(openidalt) and (not openidalt in openids): - assoc = orm.AuthKeyUserAssociation(user=osqau, key=openidalt, provider="openidurl") - assoc.save() - openids.add(openidalt) - - readTable(path, "Users", callback) - - #if uidmapper[-1] == -1: - # uidmapper[-1] = 1 - - return uidmapper - -def tagsimport(dump, uidmap): - - tagmap = {} - - def callback(sxtag): - otag = orm.Tag( - id = int(sxtag['id']), - name = sxtag['name'], - used_count = int(sxtag['count']), - created_by_id = uidmap[sxtag.get('userid', 1)], - ) - otag.save() - - tagmap[otag.name] = otag - - readTable(dump, "Tags", callback) - - return tagmap - -def add_post_state(name, post, action): - if not "(%s)" % name in post.state_string: - post.state_string = "%s(%s)" % (post.state_string, name) - post.save() - - try: - state = orm.NodeState.objects.get(node=post, state_type=name) - state.action = action - state.save() - except: - state = orm.NodeState(node=post, state_type=name, action=action) - state.save() - -def remove_post_state(name, post): - if "(%s)" % name in post.state_string: - try: - state = orm.NodeState.objects.get(state_type=name, post=post) - state.delete() - except: - pass - post.state_string = "".join("(%s)" % s for s in re.findall('\w+', post.state_string) if s != name) - -def postimport(dump, uidmap, tagmap): - all = {} - - def callback(sxpost): - nodetype = (sxpost.get('posttypeid') == '1') and "nodetype" or "answer" - - post = orm.Node( - node_type = nodetype, - id = sxpost['id'], - added_at = readTime(sxpost['creationdate']), - body = sxpost['body'], - score = sxpost.get('score', 0), - author_id = sxpost.get('deletiondate', None) and 1 or uidmap[sxpost.get('owneruserid', 1)] - ) - - post.save() - - create_action = orm.Action( - action_type = (nodetype == "nodetype") and "ask" or "answer", - user_id = post.author_id, - node = post, - action_date = post.added_at - ) - - create_action.save() - - if sxpost.get('lasteditoruserid', None): - revise_action = orm.Action( - action_type = "revise", - user_id = uidmap[sxpost.get('lasteditoruserid')], - node = post, - action_date = readTime(sxpost['lasteditdate']), - ) - - revise_action.save() - post.last_edited = revise_action - - if sxpost.get('communityowneddate', None): - wikify_action = orm.Action( - action_type = "wikify", - user_id = 1, - node = post, - action_date = readTime(sxpost['communityowneddate']) - ) - - wikify_action.save() - add_post_state("wiki", post, wikify_action) - - if sxpost.get('lastactivityuserid', None): - post.last_activity_by_id = uidmap[sxpost['lastactivityuserid']] - post.last_activity_at = readTime(sxpost['lastactivitydate']) - - if sxpost.get('posttypeid') == '1': #question - post.node_type = "question" - post.title = sxpost['title'] - - tagnames = sxpost['tags'].replace(u'ö', '-').replace(u'é', '').replace(u'à ', '') - post.tagnames = tagnames - - post.extra_count = sxpost.get('viewcount', 0) - - add_tags_to_post(post, tagmap) - all[int(post.id)] = int(post.id) - - else: - post.parent_id = sxpost['parentid'] - post.abs_parent_id = sxpost['parentid'] - all[int(post.id)] = int(sxpost['parentid']) - - post.save() - - create_and_activate_revision(post) - - del post - - readTable(dump, "Posts", callback) - - return all - -def comment_import(dump, uidmap, absparent_map): - posts = absparent_map.keys() - - currid = IdIncrementer(max(posts)) - mapping = {} - - def callback(sxc): - currid.inc() - oc = orm.Node( - id = currid.value, - node_type = "comment", - added_at = readTime(sxc['creationdate']), - author_id = uidmap[sxc.get('userid', 1)], - body = sxc['text'], - parent_id = sxc.get('postid'), - abs_parent_id = absparent_map.get(int(sxc.get('postid')), sxc.get('postid')) - ) - - if sxc.get('deletiondate', None): - delete_action = orm.Action( - action_type = "delete", - user_id = uidmap[sxc['deletionuserid']], - action_date = readTime(sxc['deletiondate']) - ) - - oc.author_id = uidmap[sxc['deletionuserid']] - oc.save() - - delete_action.node = oc - delete_action.save() - - add_post_state("deleted", oc, delete_action) - else: - oc.author_id = uidmap[sxc.get('userid', 1)] - oc.save() - - create_action = orm.Action( - action_type = "comment", - user_id = oc.author_id, - node = oc, - action_date = oc.added_at - ) - - create_and_activate_revision(oc) - - create_action.save() - oc.save() - - posts.append(int(oc.id)) - mapping[int(sxc['id'])] = int(oc.id) - - readTable(dump, "PostComments", callback) - return posts, mapping - - -def add_tags_to_post(post, tagmap): - tags = [tag for tag in [tagmap.get(name.strip()) for name in post.tagnames.split(u' ') if name] if tag] - post.tagnames = " ".join([t.name for t in tags]).strip() - post.tags = tags - - -def create_and_activate_revision(post): - rev = orm.NodeRevision( - author_id = post.author_id, - body = post.body, - node_id = post.id, - revised_at = post.added_at, - revision = 1, - summary = 'Initial revision', - tagnames = post.tagnames, - title = post.title, - ) - - rev.save() - post.active_revision_id = rev.id - post.save() - -def post_vote_import(dump, uidmap, posts): - close_reasons = {} - - def close_callback(r): - close_reasons[r['id']] = r['name'] - - readTable(dump, "CloseReasons", close_callback) - - user2vote = [] - - def callback(sxv): - action = orm.Action( - user_id=uidmap[sxv['userid']], - action_date = readTime(sxv['creationdate']), - ) - - if not int(sxv['postid']) in posts: return - node = orm.Node.objects.get(id=sxv['postid']) - action.node = node - - if sxv['votetypeid'] == '1': - answer = node - question = orm.Node.objects.get(id=answer.parent_id) - - action.action_type = "acceptanswer" - action.save() - - answer.marked = True - - question.extra_ref_id = answer.id - - answer.save() - question.save() - - elif sxv['votetypeid'] in ('2', '3'): - if not (action.node.id, action.user_id) in user2vote: - user2vote.append((action.node.id, action.user_id)) - - action.action_type = (sxv['votetypeid'] == '2') and "voteup" or "votedown" - action.save() - - ov = orm.Vote( - node_id = action.node.id, - user_id = action.user_id, - voted_at = action.action_date, - value = sxv['votetypeid'] == '2' and 1 or -1, - action = action - ) - ov.save() - else: - action.action_type = "unknown" - action.save() - - elif sxv['votetypeid'] in ('4', '12', '13'): - action.action_type = "flag" - action.save() - - of = orm.Flag( - node = action.node, - user_id = action.user_id, - flagged_at = action.action_date, - reason = '', - action = action - ) - - of.save() - - elif sxv['votetypeid'] == '5': - action.action_type = "favorite" - action.save() - - elif sxv['votetypeid'] == '6': - action.action_type = "close" - action.extra = dbsafe_encode(close_reasons[sxv['comment']]) - action.save() - - node.marked = True - node.save() - - elif sxv['votetypeid'] == '7': - action.action_type = "unknown" - action.save() - - node.marked = False - node.save() - - remove_post_state("closed", node) - - elif sxv['votetypeid'] == '10': - action.action_type = "delete" - action.save() - - elif sxv['votetypeid'] == '11': - action.action_type = "unknown" - action.save() - - remove_post_state("deleted", node) - - else: - action.action_type = "unknown" - action.save() - - if sxv.get('targetrepchange', None): - rep = orm.ActionRepute( - action = action, - date = action.action_date, - user_id = uidmap[sxv['targetuserid']], - value = int(sxv['targetrepchange']) - ) - - rep.save() - - if sxv.get('voterrepchange', None): - rep = orm.ActionRepute( - action = action, - date = action.action_date, - user_id = uidmap[sxv['userid']], - value = int(sxv['voterrepchange']) - ) - - rep.save() - - if action.action_type in ("acceptanswer", "delete", "close"): - state = {"acceptanswer": "accepted", "delete": "deleted", "close": "closed"}[action.action_type] - add_post_state(state, node, action) - - readTable(dump, "Posts2Votes", callback) - - -def comment_vote_import(dump, uidmap, comments): - user2vote = [] - comments2score = {} - - def callback(sxv): - if sxv['votetypeid'] == "2": - comment_id = comments[int(sxv['postcommentid'])] - user_id = uidmap[sxv['userid']] - - if not (comment_id, user_id) in user2vote: - user2vote.append((comment_id, user_id)) - - action = orm.Action( - action_type = "voteupcomment", - user_id = user_id, - action_date = readTime(sxv['creationdate']), - node_id = comment_id - ) - action.save() - - ov = orm.Vote( - node_id = comment_id, - user_id = user_id, - voted_at = action.action_date, - value = 1, - action = action - ) - - ov.save() - - if not comment_id in comments2score: - comments2score[comment_id] = 1 - else: - comments2score[comment_id] += 1 - - readTable(dump, "Comments2Votes", callback) - - for cid, score in comments2score.items(): - orm.Node.objects.filter(id=cid).update(score=score) - - -def badges_import(dump, uidmap, post_list): - - sxbadges = {} - - def sxcallback(b): - sxbadges[int(b['id'])] = b - - readTable(dump, "Badges", sxcallback) - - obadges = dict([(b.cls, b) for b in orm.Badge.objects.all()]) - user_badge_count = {} - - sx_to_osqa = {} - - for id, sxb in sxbadges.items(): - cls = "".join(sxb['name'].replace('&', 'And').split(' ')) - - if cls in obadges: - sx_to_osqa[id] = obadges[cls] - else: - osqab = orm.Badge( - cls = cls, - awarded_count = 0, - type = sxb['class'] - ) - osqab.save() - sx_to_osqa[id] = osqab - - osqaawards = [] - - def callback(sxa): - badge = sx_to_osqa[int(sxa['badgeid'])] - - user_id = uidmap[sxa['userid']] - if not user_badge_count.get(user_id, None): - user_badge_count[user_id] = 0 - - action = orm.Action( - action_type = "award", - user_id = user_id, - action_date = readTime(sxa['date']) - ) - - action.save() - - osqaa = orm.Award( - user_id = uidmap[sxa['userid']], - badge = badge, - node_id = post_list[user_badge_count[user_id]], - awarded_at = action.action_date, - action = action - ) - - osqaa.save() - badge.awarded_count += 1 - - user_badge_count[user_id] += 1 - - readTable(dump, "Users2Badges", callback) - - for badge in obadges.values(): - badge.save() - -def save_setting(k, v): - try: - kv = orm.KeyValue.objects.get(key=k) - kv.value = v - except: - kv = orm.KeyValue(key = k, value = v) - - kv.save() - - -def pages_import(dump, currid, owner): - currid = IdIncrementer(currid) - registry = {} - - def callback(sxp): - currid.inc() - page = orm.Node( - id = currid.value, - node_type = "page", - title = sxp['name'], - body = b64decode(sxp['value']), - extra = dbsafe_encode({ - 'path': sxp['url'][1:], - 'mimetype': sxp['contenttype'], - 'template': (sxp['usemaster'] == "true") and "default" or "none", - 'render': "html", - 'sidebar': "", - 'sidebar_wrap': True, - 'sidebar_render': "html", - 'comments': False - }), - author_id = owner - ) - - create_and_activate_revision(page) - - page.save() - registry[sxp['url'][1:]] = page.id - - create_action = orm.Action( - action_type = "newpage", - user_id = page.author_id, - node = page - ) - - create_action.save() - - if sxp['active'] == "true" and sxp['contenttype'] == "text/html": - pub_action = orm.Action( - action_type = "publish", - user_id = page.author_id, - node = page - ) - - pub_action.save() - add_post_state("published", page, pub_action) - - readTable(dump, "FlatPages", callback) - - save_setting('STATIC_PAGE_REGISTRY', dbsafe_encode(registry)) - -sx2osqa_set_map = { -u'theme.html.name': 'APP_TITLE', -u'theme.html.footer': 'CUSTOM_FOOTER', -u'theme.html.sidebar': 'SIDEBAR_UPPER_TEXT', -u'theme.html.sidebar-low': 'SIDEBAR_LOWER_TEXT', -u'theme.html.welcome': 'APP_INTRO', -u'theme.html.head': 'CUSTOM_HEAD', -u'theme.html.header': 'CUSTOM_HEADER', -u'theme.css': 'CUSTOM_CSS', -} - -html_codes = ( -('&', '&'), -('<', '<'), -('>', '>'), -('"', '"'), -(''', "'"), -) - -def html_decode(html): - html = force_unicode(html) - - for args in html_codes: - html = html.replace(*args) - - return html - - -def static_import(dump): - sx_unknown = {} - - def callback(set): - if unicode(set['name']) in sx2osqa_set_map: - save_setting(sx2osqa_set_map[set['name']], dbsafe_encode(html_decode(set['value']))) - else: - sx_unknown[set['name']] = html_decode(set['value']) - - readTable(dump, "ThemeTextResources", callback) - - save_setting('SXIMPORT_UNKNOWN_SETS', dbsafe_encode(sx_unknown)) - -def disable_triggers(): - from south.db import db - if db.backend_name == "postgres": - db.execute_many(PG_DISABLE_TRIGGERS) - db.commit_transaction() - db.start_transaction() - -def enable_triggers(): - from south.db import db - if db.backend_name == "postgres": - db.start_transaction() - db.execute_many(PG_ENABLE_TRIGGERS) - db.commit_transaction() - -def reset_sequences(): - from south.db import db - if db.backend_name == "postgres": - db.start_transaction() - db.execute_many(PG_SEQUENCE_RESETS) - db.commit_transaction() - -def reindex_fts(): - from south.db import db - if db.backend_name == "postgres": - db.start_transaction() - db.execute_many("UPDATE forum_noderevision set id = id WHERE TRUE;") - db.commit_transaction() - - -def sximport(dump, options): - try: - disable_triggers() - triggers_disabled = True - except: - triggers_disabled = False - - uidmap = userimport(dump, options) - tagmap = tagsimport(dump, uidmap) - gc.collect() - - posts = postimport(dump, uidmap, tagmap) - gc.collect() - - posts, comments = comment_import(dump, uidmap, posts) - gc.collect() - - post_vote_import(dump, uidmap, posts) - gc.collect() - - comment_vote_import(dump, uidmap, comments) - gc.collect() - - badges_import(dump, uidmap, posts) - - pages_import(dump, max(posts), uidmap.default) - static_import(dump) - gc.collect() - - from south.db import db - db.commit_transaction() - - reset_sequences() - - if triggers_disabled: - enable_triggers() - reindex_fts() - - -PG_DISABLE_TRIGGERS = """ -ALTER table auth_user DISABLE TRIGGER ALL; -ALTER table auth_user_groups DISABLE TRIGGER ALL; -ALTER table auth_user_user_permissions DISABLE TRIGGER ALL; -ALTER table forum_keyvalue DISABLE TRIGGER ALL; -ALTER table forum_action DISABLE TRIGGER ALL; -ALTER table forum_actionrepute DISABLE TRIGGER ALL; -ALTER table forum_subscriptionsettings DISABLE TRIGGER ALL; -ALTER table forum_validationhash DISABLE TRIGGER ALL; -ALTER table forum_authkeyuserassociation DISABLE TRIGGER ALL; -ALTER table forum_tag DISABLE TRIGGER ALL; -ALTER table forum_markedtag DISABLE TRIGGER ALL; -ALTER table forum_node DISABLE TRIGGER ALL; -ALTER table forum_nodestate DISABLE TRIGGER ALL; -ALTER table forum_node_tags DISABLE TRIGGER ALL; -ALTER table forum_noderevision DISABLE TRIGGER ALL; -ALTER table forum_node_tags DISABLE TRIGGER ALL; -ALTER table forum_questionsubscription DISABLE TRIGGER ALL; -ALTER table forum_vote DISABLE TRIGGER ALL; -ALTER table forum_flag DISABLE TRIGGER ALL; -ALTER table forum_badge DISABLE TRIGGER ALL; -ALTER table forum_award DISABLE TRIGGER ALL; -ALTER table forum_openidnonce DISABLE TRIGGER ALL; -ALTER table forum_openidassociation DISABLE TRIGGER ALL; -""" - -PG_ENABLE_TRIGGERS = """ -ALTER table auth_user ENABLE TRIGGER ALL; -ALTER table auth_user_groups ENABLE TRIGGER ALL; -ALTER table auth_user_user_permissions ENABLE TRIGGER ALL; -ALTER table forum_keyvalue ENABLE TRIGGER ALL; -ALTER table forum_action ENABLE TRIGGER ALL; -ALTER table forum_actionrepute ENABLE TRIGGER ALL; -ALTER table forum_subscriptionsettings ENABLE TRIGGER ALL; -ALTER table forum_validationhash ENABLE TRIGGER ALL; -ALTER table forum_authkeyuserassociation ENABLE TRIGGER ALL; -ALTER table forum_tag ENABLE TRIGGER ALL; -ALTER table forum_markedtag ENABLE TRIGGER ALL; -ALTER table forum_node ENABLE TRIGGER ALL; -ALTER table forum_nodestate ENABLE TRIGGER ALL; -ALTER table forum_node_tags ENABLE TRIGGER ALL; -ALTER table forum_noderevision ENABLE TRIGGER ALL; -ALTER table forum_node_tags ENABLE TRIGGER ALL; -ALTER table forum_questionsubscription ENABLE TRIGGER ALL; -ALTER table forum_vote ENABLE TRIGGER ALL; -ALTER table forum_flag ENABLE TRIGGER ALL; -ALTER table forum_badge ENABLE TRIGGER ALL; -ALTER table forum_award ENABLE TRIGGER ALL; -ALTER table forum_openidnonce ENABLE TRIGGER ALL; -ALTER table forum_openidassociation ENABLE TRIGGER ALL; -""" - -PG_SEQUENCE_RESETS = """ -SELECT setval('"auth_user_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "auth_user"; -SELECT setval('"auth_user_groups_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "auth_user_groups"; -SELECT setval('"auth_user_user_permissions_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "auth_user_user_permissions"; -SELECT setval('"forum_keyvalue_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_keyvalue"; -SELECT setval('"forum_action_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_action"; -SELECT setval('"forum_actionrepute_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_actionrepute"; -SELECT setval('"forum_subscriptionsettings_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_subscriptionsettings"; -SELECT setval('"forum_validationhash_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_validationhash"; -SELECT setval('"forum_authkeyuserassociation_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_authkeyuserassociation"; -SELECT setval('"forum_tag_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_tag"; -SELECT setval('"forum_markedtag_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_markedtag"; -SELECT setval('"forum_node_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_node"; -SELECT setval('"forum_nodestate_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_nodestate"; -SELECT setval('"forum_node_tags_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_node_tags"; -SELECT setval('"forum_noderevision_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_noderevision"; -SELECT setval('"forum_node_tags_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_node_tags"; -SELECT setval('"forum_questionsubscription_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_questionsubscription"; -SELECT setval('"forum_vote_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_vote"; -SELECT setval('"forum_flag_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_flag"; -SELECT setval('"forum_badge_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_badge"; -SELECT setval('"forum_award_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_award"; -SELECT setval('"forum_openidnonce_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_openidnonce"; -SELECT setval('"forum_openidassociation_id_seq"', coalesce(max("id"), 1) + 2, max("id") IS NOT null) FROM "forum_openidassociation"; -""" - - - - diff --git a/forum_modules/sximporter/.svn/text-base/urls.py.svn-base b/forum_modules/sximporter/.svn/text-base/urls.py.svn-base deleted file mode 100644 index 85fa636ffe627da635355efd9511655af3c2d013..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -from django.conf.urls.defaults import * -from django.views.generic.simple import direct_to_template -from django.utils.translation import ugettext as _ - -from views import sximporter - -urlpatterns = patterns('', - url(r'^%s%s$' % (_('admin/'), _('sximporter/')), sximporter, name='sximporter'), -) \ No newline at end of file diff --git a/forum_modules/sximporter/.svn/text-base/views.py.svn-base b/forum_modules/sximporter/.svn/text-base/views.py.svn-base deleted file mode 100644 index ebaed2133e8c2957c814b991524e646a5202a780..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/.svn/text-base/views.py.svn-base +++ /dev/null @@ -1,38 +0,0 @@ -from django.shortcuts import render_to_response -from django.template import RequestContext -from forum.http_responses import HttpResponseUnauthorized -from forum.models import User -import importer -from zipfile import ZipFile -import os - -def sximporter(request): - if (not User.objects.exists()) or (request.user.is_authenticated() and request.user.is_superuser): - list = [] - if request.method == "POST" and "dump" in request.FILES: - dump = ZipFile(request.FILES['dump']) - members = [f for f in dump.namelist() if f.endswith('.xml')] - extract_to = os.path.join(os.path.dirname(__file__), 'tmp') - - if not os.path.exists(extract_to): - os.makedirs(extract_to) - - for m in members: - f = open(os.path.join(extract_to, m), 'w') - f.write(dump.read(m)) - f.close() - - #dump.extractall(extract_to, members) - dump.close() - - options = dict([(k, v) for k, v in request.POST.items()]) - options['authenticated_user'] = (request.user.is_authenticated() and (request.user,) or (None,))[0] - - importer.sximport(extract_to, options) - - return render_to_response('modules/sximporter/page.html', { - 'names': list - }, context_instance=RequestContext(request)) - else: - return HttpResponseUnauthorized(request) - diff --git a/forum_modules/sximporter/templates/.svn/all-wcprops b/forum_modules/sximporter/templates/.svn/all-wcprops deleted file mode 100644 index e6d6e7bd72832a1194b5fb9cf5bd4a1ee0a0ca28..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/988/osqa/trunk/forum_modules/sximporter/templates -END -page.html -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/!svn/ver/988/osqa/trunk/forum_modules/sximporter/templates/page.html -END diff --git a/forum_modules/sximporter/templates/.svn/entries b/forum_modules/sximporter/templates/.svn/entries deleted file mode 100644 index 8ef5b6d6b31039f1c49a3cef77ddad3d8e1aeaf4..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/sximporter/templates -http://svn.osqa.net/svnroot - - - -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -page.html -file - - - - -2012-06-22T20:34:38.442548Z -8ff80f3b57c189a36d20727ddb7a2d59 -2011-04-18T17:28:53.317602Z -988 -jordan - - - - - - - - - - - - - - - - - - - - - -806 - diff --git a/forum_modules/sximporter/templates/.svn/text-base/page.html.svn-base b/forum_modules/sximporter/templates/.svn/text-base/page.html.svn-base deleted file mode 100644 index 42de46d82e97dd1fa26eacb7810bc3a10c65d7e9..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/templates/.svn/text-base/page.html.svn-base +++ /dev/null @@ -1,28 +0,0 @@ -{% extends "osqaadmin/base.html" %} - -{% load i18n %} -{% load user_tags %} - -{% block subtitle %} - {% trans "SX Importer" %} -{% endblock %} -{% block description %} - {% trans "Welcome to Stack Exchange dump importer." %} -{% endblock %} - -{% block admincontent %} - <form method="post" action="" enctype="multipart/form-data"> - {% csrf_token %} - <input type="file" name="dump" /><br> - {% trans "Your user id in stack exchange" %} - <input type="test" name="owneruid" size="3" value="2" /><br /> - - <input type="checkbox" checked="checked" name="mergesimilar" /> - {% trans "Merge users with same user name and email" %}<br /> - - <input type="submit" value="submit" /> - </form> - {% for n in names %} - <p>{{ n }}</p> - {% endfor %} -{% endblock %} \ No newline at end of file diff --git a/forum_modules/sximporter/tmp/.svn/all-wcprops b/forum_modules/sximporter/tmp/.svn/all-wcprops deleted file mode 100644 index 7ea9dd5d0a2e58c9b41c202cf2f67bc58e87a10d..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/tmp/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 61 -/svnroot/!svn/ver/401/osqa/trunk/forum_modules/sximporter/tmp -END diff --git a/forum_modules/sximporter/tmp/.svn/entries b/forum_modules/sximporter/tmp/.svn/entries deleted file mode 100644 index e006597ceb26a106742038585caea793acb0e4f6..0000000000000000000000000000000000000000 --- a/forum_modules/sximporter/tmp/.svn/entries +++ /dev/null @@ -1,28 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/sximporter/tmp -http://svn.osqa.net/svnroot - - - -2010-06-09T22:21:48.554129Z -401 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - diff --git a/forum_modules/updates/.svn/all-wcprops b/forum_modules/updates/.svn/all-wcprops deleted file mode 100644 index 15be31945d1d98f20d427f0c4377b7ce63f8e0bd..0000000000000000000000000000000000000000 --- a/forum_modules/updates/.svn/all-wcprops +++ /dev/null @@ -1,41 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1134/osqa/trunk/forum_modules/updates -END -startup.py -K 25 -svn:wc:ra_dav:version-url -V 66 -/svnroot/!svn/ver/1123/osqa/trunk/forum_modules/updates/startup.py -END -urls.py -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/1123/osqa/trunk/forum_modules/updates/urls.py -END -base.py -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/1134/osqa/trunk/forum_modules/updates/base.py -END -views.py -K 25 -svn:wc:ra_dav:version-url -V 64 -/svnroot/!svn/ver/1126/osqa/trunk/forum_modules/updates/views.py -END -__init__.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1123/osqa/trunk/forum_modules/updates/__init__.py -END -settings.py -K 25 -svn:wc:ra_dav:version-url -V 67 -/svnroot/!svn/ver/1123/osqa/trunk/forum_modules/updates/settings.py -END diff --git a/forum_modules/updates/.svn/entries b/forum_modules/updates/.svn/entries deleted file mode 100644 index 8989b2d2e7d8851ebd17456ecdb48192558f4140..0000000000000000000000000000000000000000 --- a/forum_modules/updates/.svn/entries +++ /dev/null @@ -1,235 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/updates -http://svn.osqa.net/svnroot - - - -2011-07-30T17:55:28.133951Z -1134 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -startup.py -file - - - - -2012-06-22T20:34:38.090724Z -7deac30bdd506d5eec28491d8c14cabe -2011-04-25T16:27:49.313450Z -1004 -jordan - - - - - - - - - - - - - - - - - - - - - -2278 - -urls.py -file - - - - -2012-06-22T20:34:38.090724Z -89acf3601dc5d08d4f485855338c68dd -2011-04-20T14:07:16.290267Z -995 -jordan - - - - - - - - - - - - - - - - - - - - - -332 - -templates -dir - -base.py -file - - - - -2012-06-22T20:34:38.082728Z -36284b422871f7c80a79afcccc7b35d3 -2011-07-30T17:55:28.133951Z -1134 -jordan - - - - - - - - - - - - - - - - - - - - - -6352 - -views.py -file - - - - -2012-06-22T20:34:38.082728Z -1a21fc3f03d949f67d6e85b3d5874378 -2011-07-20T12:43:08.871343Z -1126 -jordan - - - - - - - - - - - - - - - - - - - - - -476 - -__init__.py -file - - - - -2012-06-22T20:34:38.082728Z -d41d8cd98f00b204e9800998ecf8427e -2011-04-19T14:57:02.073916Z -990 -jordan - - - - - - - - - - - - - - - - - - - - - -0 - -settings.py -file - - - - -2012-06-22T20:34:38.090724Z -900ea4943b6a064f4bbf81b831904f67 -2011-07-18T11:11:44.638470Z -1123 -jordan - - - - - - - - - - - - - - - - - - - - - -773 - diff --git a/forum_modules/updates/.svn/text-base/__init__.py.svn-base b/forum_modules/updates/.svn/text-base/__init__.py.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/forum_modules/updates/.svn/text-base/base.py.svn-base b/forum_modules/updates/.svn/text-base/base.py.svn-base deleted file mode 100644 index ce5bc8b23599c23a003df229bdee17b4e398ca29..0000000000000000000000000000000000000000 --- a/forum_modules/updates/.svn/text-base/base.py.svn-base +++ /dev/null @@ -1,187 +0,0 @@ -# -*- coding: utf-8 -*- - -import os -import sys -import platform -import bz2 -import urllib2, urllib -import binascii -import string -import random -import re -import urllib2 -import settings -import datetime -import logging - - -from xml.dom.minidom import parse, parseString -from forum.base import get_database_engine -from forum.models import Question, Answer, Comment, User -from forum.settings import APP_URL, SVN_REVISION, APP_TITLE, APP_DESCRIPTION -from django import VERSION as DJANGO_VERSION -from django.utils import simplejson -from django.utils.html import escape -from django.utils.encoding import smart_unicode -from django.conf import settings as django_settings -from django.utils.translation import ugettext as _ - - -def generate_installation_key(): - gen = lambda length: "".join( [random.choice(string.digits+string.letters) for i in xrange(length)]) - return '%s-%s-%s-%s' % (gen(4), gen(4), gen(4), gen(4)) - -# To get the site views count we get the SUM of all questions views. -def get_site_views(): - views = 0 - - # Go through all questions and increase the views count - for question in Question.objects.all(): - views += question.view_count - - return views - -# Gets the active users count since the last visit -def get_active_users(): - users_count = 0 - - try: - if settings.LATEST_UPDATE_DATETIME: - users_count = User.objects.filter(last_login__gt=settings.LATEST_UPDATE_DATETIME).count() - except: - pass - - return users_count - -def get_server_name(): - url = '%s/' % APP_URL - - try: - # Make the request - request = urllib2.Request(url) - response = urllib2.urlopen(request) - - # Get the response information - response_info = response.info() - - server_name = re.findall("Server: (?P<server_name>.*)$", str(response_info))[0] - server_name = ''.join(server_name.splitlines()) - - return server_name - except: - return 'Unknown' - -def get_admin_emails(): - emails = [] - - for user in User.objects.filter(is_superuser=True): - emails.append(user.email) - - return emails - -def check_for_updates(): - # Get the SVN Revision - try: - svn_revision = int(SVN_REVISION.replace('SVN-', '')) - except ValueError: - # Here we'll have to find another way of getting the SVN revision - svn_revision = 0 - - admin_emails_xml = '<emails>' - for email in get_admin_emails(): - admin_emails_xml += '<email value="%s" />' % email - admin_emails_xml += '</emails>' - - database_type = get_database_engine() - - statistics = u"""<check> - <key value="%(site_key)s" /> - <app_url value="%(app_url)s" /> - <app_title value="%(app_title)s" /> - <app_description value="%(app_description)s" /> - <svn_revision value="%(svn_revision)d" /> - <views value="%(site_views)d" /> - <questions_count value="%(questions_count)d" /> - <answers_count value="%(answers_count)d" /> - <comments_count value="%(comments_count)d" /> - <active_users value="%(active_users)d" /> - <server value="%(server_name)s" /> - <python_version value="%(python_version)s" /> - <django_version value="%(django_version)s" /> - <database value="%(database)s" /> - <os value="%(os)s" /> - %(emails)s -</check> """ % { - 'site_key' : settings.SITE_KEY, - 'app_url' : APP_URL, - 'app_title' : escape(APP_TITLE.value), - 'app_description' : escape(APP_DESCRIPTION.value), - 'svn_revision' : svn_revision, - 'site_views' : get_site_views(), - 'server_name' : get_server_name(), - 'questions_count' : Question.objects.filter_state(deleted=False).count(), - 'answers_count' : Answer.objects.filter_state(deleted=False).count(), - 'comments_count' : Comment.objects.filter_state(deleted=False).count(), - 'active_users' : get_active_users(), - 'python_version' : ''.join(sys.version.splitlines()), - 'django_version' : str(DJANGO_VERSION), - 'database' : database_type, - 'os' : str(platform.uname()), - 'emails' : admin_emails_xml, - } - - # Compress the statistics XML dump - statistics = statistics.encode('ascii', 'xmlcharrefreplace') - statistics_compressed = bz2.compress(statistics) - - # Pass the compressed statistics to the update server - post_data = { - 'statistics' : binascii.b2a_base64(statistics_compressed), - } - data = urllib.urlencode(post_data) - - # We simulate some browser, otherwise the server can return 403 response - user_agent = 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_8; en-us) AppleWebKit/531.21.8 (KHTML, like Gecko) Version/4.0.4 Safari/5' - headers={ 'User-Agent' : user_agent,} - - try: - check_request = urllib2.Request('%s%s' % (settings.UPDATE_SERVER_URL, '/site_check/'), data, headers=headers) - check_response = urllib2.urlopen(check_request) - content = check_response.read() - except urllib2.HTTPError, error: - content = error.read() - except: - return _("Wasn't able to check to the update server.") - - # Read the messages from the Update Server - try: - messages_xml_url = '%s%s' % (settings.UPDATE_SERVER_URL, '/messages/xml/') - messages_request = urllib2.Request(messages_xml_url, headers=headers) - messages_response = urllib2.urlopen(messages_request) - messages_xml = messages_response.read() - except: - return _("Wasn't able to retreive the update messages.") - - # Store the messages XML in a Setting object - settings.UPDATE_MESSAGES_XML.set_value(messages_xml) - - messages_dom = parseString(messages_xml) - messages_count = len(messages_dom.getElementsByTagName('message')) - - # Set the latest update datetime to now. - now = datetime.datetime.now() - settings.LATEST_UPDATE_DATETIME.set_value(now) - - return _('%d update messages have been downloaded.') % messages_count - -def update_trigger(): - # Trigger the update process - now = datetime.datetime.now() - if (now - settings.LATEST_UPDATE_DATETIME) > datetime.timedelta(days=1): - try: - update_status = check_for_updates() - logging.log(logging.INFO, smart_unicode("Update process has been triggered: %s" % update_status)) - except Exception, e: - logging.errror(smart_unicode(e)) - finally: - settings.LATEST_UPDATE_DATETIME.set_value(now) diff --git a/forum_modules/updates/.svn/text-base/settings.py.svn-base b/forum_modules/updates/.svn/text-base/settings.py.svn-base deleted file mode 100644 index 6f683107b479f5a3245d4a9cd157bf38d91ec377..0000000000000000000000000000000000000000 --- a/forum_modules/updates/.svn/text-base/settings.py.svn-base +++ /dev/null @@ -1,24 +0,0 @@ -import datetime - -from forum.settings.base import Setting, SettingSet -from django.utils.translation import ugettext_lazy as _ - -from base import generate_installation_key - -UPDATER_SET = SettingSet('updater', _('Updater Settings'), _("OSQA Update Checker Settings."), 100) - -CHECK_FOR_UPDATES = Setting('CHECK_FOR_UPDATES', True, UPDATER_SET, dict( -label = "Check for updates", -help_text = _(""" -Use the OSQA update server recieve notifications about the latest updates. -"""), -required=False)) - -SITE_KEY = Setting('SITE_KEY', generate_installation_key()) - -UPDATE_MESSAGES_XML = Setting('UPDATE_MESSAGES_XML', '') - -LATEST_UPDATE_DATETIME = Setting('LATEST_UPDATES_DATETIME', datetime.datetime.now()) - -# Update server. Do not edit. -UPDATE_SERVER_URL = 'https://updater.osqa.net' diff --git a/forum_modules/updates/.svn/text-base/startup.py.svn-base b/forum_modules/updates/.svn/text-base/startup.py.svn-base deleted file mode 100644 index f49d10697696c91c059b23d14572d247411b186b..0000000000000000000000000000000000000000 --- a/forum_modules/updates/.svn/text-base/startup.py.svn-base +++ /dev/null @@ -1,53 +0,0 @@ -import datetime -import views -import logging -import settings - -from xml.dom.minidom import parse, parseString -from xml.parsers.expat import ExpatError -from forum.modules import ui, decorate -from forum.settings import SVN_REVISION -from django.contrib.auth.middleware import AuthenticationMiddleware -from django.core.exceptions import ObjectDoesNotExist -from django.utils.encoding import smart_str - -from base import update_trigger - -# Update the user messages -@decorate.result(AuthenticationMiddleware.process_request, needs_params=True) -def process_request(result, self, request): - # Call the update trigger on every request - update_trigger() - - try: - messages_dom = parseString(smart_str(settings.UPDATE_MESSAGES_XML.value)) - messages = messages_dom.getElementsByTagName('message') - - for message in messages: - # Get the SVN Revision - try: - svn_revision = int(SVN_REVISION.replace('SVN-', '')) - except ValueError: - # Here we'll have to find another way of getting the SVN revision - svn_revision = 0 - - message_body = message.getElementsByTagName('body')[0].firstChild.nodeValue - message_revision = int(message.getElementsByTagName('revision')[0].firstChild.nodeValue) - - # Add the message to the user messages set only if the Message Revision number is greater than the - # current installation SVN Revision number and only if the current user is a super user. - if message_revision >= svn_revision and request.user.is_superuser: - # We do not want to repeat ourselves. If the message already exists in the message list, we're not going to - # add it. That's why first of all we're going the check if it is there. - try: - # If the message doesn't exist in the RelatedManager ObjectsDoesNotExist is going to be raised. - request.user.message_set.all().get(message=message_body) - except ObjectDoesNotExist: - # Let's create the message. - request.user.message_set.create(message=message_body) - except: - pass - except ExpatError: - pass - - return result \ No newline at end of file diff --git a/forum_modules/updates/.svn/text-base/urls.py.svn-base b/forum_modules/updates/.svn/text-base/urls.py.svn-base deleted file mode 100644 index c3a6c4caf890e473da58c0baf8188078d0b6bfcf..0000000000000000000000000000000000000000 --- a/forum_modules/updates/.svn/text-base/urls.py.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -from django.conf.urls.defaults import * -from django.views.generic.simple import direct_to_template -from django.utils.translation import ugettext as _ - -from views import updater_index, updater_check - -urlpatterns = patterns('', - url(r'^%s%s%s$' % (_('admin/'), _('updater/'), _('check/')), updater_check, name='updater_check'), -) diff --git a/forum_modules/updates/.svn/text-base/views.py.svn-base b/forum_modules/updates/.svn/text-base/views.py.svn-base deleted file mode 100644 index 27008f250497f54610801ada1274f3fddf386bd7..0000000000000000000000000000000000000000 --- a/forum_modules/updates/.svn/text-base/views.py.svn-base +++ /dev/null @@ -1,20 +0,0 @@ -from django.http import HttpResponse -from django.utils.translation import ugettext as _ - -from base import check_for_updates - -from forum.views.admin import admin_tools_page, admin_page - -@admin_tools_page(_('updater'), _('Update Checker')) -def updater_index(request): - return ( - 'modules/updates/index.html', - { - - }, - ) - -def updater_check(request): - update_status = check_for_updates() - - return HttpResponse(update_status, mimetype='text/html') diff --git a/forum_modules/updates/templates/.svn/all-wcprops b/forum_modules/updates/templates/.svn/all-wcprops deleted file mode 100644 index f55667bb528cbbb6ec4314317e3c47ba81467e9a..0000000000000000000000000000000000000000 --- a/forum_modules/updates/templates/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1123/osqa/trunk/forum_modules/updates/templates -END -index.html -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/!svn/ver/1123/osqa/trunk/forum_modules/updates/templates/index.html -END diff --git a/forum_modules/updates/templates/.svn/entries b/forum_modules/updates/templates/.svn/entries deleted file mode 100644 index fd74449fc4d0e61dfcaf3ec53bc03aba2fb32e32..0000000000000000000000000000000000000000 --- a/forum_modules/updates/templates/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/forum_modules/updates/templates -http://svn.osqa.net/svnroot - - - -2011-04-23T16:29:40.842118Z -998 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -index.html -file - - - - -2012-06-22T20:34:38.078730Z -c431962f5f118a383aa75ca6736093a0 -2011-04-23T16:29:40.842118Z -998 -jordan - - - - - - - - - - - - - - - - - - - - - -1193 - diff --git a/forum_modules/updates/templates/.svn/text-base/index.html.svn-base b/forum_modules/updates/templates/.svn/text-base/index.html.svn-base deleted file mode 100644 index aed0d016d6fff035804f76e581084442a5fcb644..0000000000000000000000000000000000000000 --- a/forum_modules/updates/templates/.svn/text-base/index.html.svn-base +++ /dev/null @@ -1,49 +0,0 @@ -{% extends basetemplate %} - -{% load i18n extra_tags %} - -{% block adminjs %} -{{ block.super }} - -<style type="text/css"> -#update_check_status { - margin-top: 5px; - padding: 5px 0; - display: none; -} -</style> - -<script type="text/javascript"> -$(function() { - - $('#check_for_updates').live('click', function() { - var update_check_url = $(this).attr('href') - var update_check_status = $('#update_check_status') - update_check_status.html('{% trans "Checking for updates" %}') - update_check_status.show('slow') - - $.get(update_check_url, function(data) { - update_check_status.hide('slow', function() { - update_check_status.html(data) - update_check_status.show('slow'); - }) - }) - return false; - }) -}); -</script> -{% endblock %} - -{% block subtitle %} - {% trans "Update Checker" %} -{% endblock %} -{% block description %} - {% trans "Use the OSQA update server to check for updates" %} -{% endblock %} - -{% block admincontent %} - -<a href="{% url updater_check %}" id="check_for_updates" class="button">{% trans "Check for Updates" %}</a> -<div id="update_check_status"></div> - -{% endblock %} diff --git a/locale/.svn/all-wcprops b/locale/.svn/all-wcprops deleted file mode 100644 index c31eddd050fb61ef564639275cfb39bc69884de7..0000000000000000000000000000000000000000 --- a/locale/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 40 -/svnroot/!svn/ver/1239/osqa/trunk/locale -END -phrases.py -K 25 -svn:wc:ra_dav:version-url -V 51 -/svnroot/!svn/ver/1077/osqa/trunk/locale/phrases.py -END diff --git a/locale/.svn/entries b/locale/.svn/entries deleted file mode 100644 index c9da1c41eec0d4b1dd33a183de320b523caf55c9..0000000000000000000000000000000000000000 --- a/locale/.svn/entries +++ /dev/null @@ -1,98 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -ja -dir - -l -dir - -phrases.py -file - - - - -2012-06-22T20:34:49.049256Z -c0f2ac98fa8fb112f7580efd6564d6fd -2011-06-25T03:50:15.766114Z -1077 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -75 - -fi -dir - -cn -dir - -zh_CN -dir - -en -dir - -pt -dir - -ru -dir - -es -dir - -fr -dir - -bg -dir - -de -dir - diff --git a/locale/.svn/prop-base/phrases.py.svn-base b/locale/.svn/prop-base/phrases.py.svn-base deleted file mode 100644 index bdbd30518a93c6da39a5bf7881d27398c18cbd6c..0000000000000000000000000000000000000000 --- a/locale/.svn/prop-base/phrases.py.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:eol-style -V 6 -native -END diff --git a/locale/.svn/text-base/phrases.py.svn-base b/locale/.svn/text-base/phrases.py.svn-base deleted file mode 100644 index be378cc2d28ae6c68d9ac0577f46bcfe252b7954..0000000000000000000000000000000000000000 --- a/locale/.svn/text-base/phrases.py.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -_("Test Phrase 1") -_("Test Phrase 2") -_("Test Phrase 3") -_("Test Phrase n") \ No newline at end of file diff --git a/locale/bg/.svn/all-wcprops b/locale/bg/.svn/all-wcprops deleted file mode 100644 index 13ebb9119eac02b063124ee363627ad3fe8f485b..0000000000000000000000000000000000000000 --- a/locale/bg/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/bg -END diff --git a/locale/bg/.svn/entries b/locale/bg/.svn/entries deleted file mode 100644 index d209c8f88bc2a8959203bfb85683190255f0fc04..0000000000000000000000000000000000000000 --- a/locale/bg/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/bg -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/bg/LC_MESSAGES/.svn/all-wcprops b/locale/bg/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 8eecae59dad0349f7a0d4422f0f7bc437eadb6b1..0000000000000000000000000000000000000000 --- a/locale/bg/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/bg/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/bg/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/bg/LC_MESSAGES/django.po -END diff --git a/locale/bg/LC_MESSAGES/.svn/entries b/locale/bg/LC_MESSAGES/.svn/entries deleted file mode 100644 index e1c0b2956c416dc4c959092b7dba3eb0565e00b4..0000000000000000000000000000000000000000 --- a/locale/bg/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/bg/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.po -file - - - - -2012-06-22T20:34:48.521519Z -2068fce820231304b6cbcfc5160ece2f -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -303087 - -django.mo -file - - - - -2012-06-22T20:34:48.521519Z -d09344c54f0e2dae839b084d6064c9b7 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -70227 - diff --git a/locale/bg/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/bg/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index dbc918b06c1c8d7c24f3b9fa6b1d1e424817309d..0000000000000000000000000000000000000000 --- a/locale/bg/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,9 +0,0 @@ -K 14 -svn:executable -V 1 -* -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/bg/LC_MESSAGES/.svn/prop-base/django.po.svn-base b/locale/bg/LC_MESSAGES/.svn/prop-base/django.po.svn-base deleted file mode 100644 index 869ac71cf7e4d72d9ab52f86d630c1c3f0c017ce..0000000000000000000000000000000000000000 --- a/locale/bg/LC_MESSAGES/.svn/prop-base/django.po.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -svn:executable -V 1 -* -END diff --git a/locale/bg/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/bg/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 3abcd9da89542795cf718d31d5bbaf78c63d4ac2..0000000000000000000000000000000000000000 Binary files a/locale/bg/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/bg/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/bg/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 93b8e36dafb639daa5da96e12545de25b6d0e330..0000000000000000000000000000000000000000 --- a/locale/bg/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9579 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:14-0700\n" -"PO-Revision-Date: 2011-04-05 02:28\n" -"Last-Translator: <jordan@gape.bg>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Translated-Using: django-rosetta 0.6.0\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "Ñтраница" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "подреди" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "Отговори на %s" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "Отговори от %s" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "Коментар от %(cauthor)s на %(pauthor)s %(qora)s" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "отговор" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "въпроÑ" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "чзв" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "за наÑ" - -#: forum/registry.py:28 -msgid "logout" -msgstr "изход" - -#: forum/registry.py:28 -msgid "login" -msgstr "вход" - -#: forum/registry.py:41 -msgid "administration" -msgstr "админиÑтрациÑ" - -#: forum/registry.py:54 -msgid "contact" -msgstr "Ñъдържание" - -#: forum/registry.py:57 -msgid "support" -msgstr "поддръжка" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "privacy" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "Ð ÐµÐ´Ð°ÐºÑ†Ð¸Ñ Ð½Ð° профила" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "Опции за оторизиране" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "Опции за оторизиране" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "други предпочитаниÑ" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "МодераторÑки инÑтрументи" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "оттгели задържането" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "Ñпри този потребител" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "дай/вземи карма" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "премахване на модераторÑки Ñтатут" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "дай модераторÑки Ñтатут" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "премахване на Ñупер потребителÑкото ÑÑŠÑтоÑние" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "предоÑтавÑне на Ñтатут Ñупер потребител" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "ЧЗВ" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "За наÑ" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "Подобни въпроÑи" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "" - -#: forum/urls.py:71 -#, fuzzy -msgid "convert_comment/" -msgstr "post a comment" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -#, fuzzy -msgid "answer_link/" -msgstr "отговор" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -#, fuzzy -msgid "user/" -msgstr "потребители" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "" - -#: forum/urls.py:85 -#, fuzzy -msgid "convert_to_question/" -msgstr "Подобни въпроÑи" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -msgid "award/" -msgstr "" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -#, fuzzy -msgid "test_email_settings/" -msgstr "Опции за оторизиране" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "подкрепен" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "отхвърлен" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "хареÑан" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "Без да изтъква причини" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "%(user)s отбелÑза %(post_desc)s: %(reason)s" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "твой" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "негов" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "%(user)s прие %(answerer)s отговор на %(asker)s Ð²ÑŠÐ¿Ñ€Ð¾Ñ %(question)s" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "%(user)s отбелÑза %(post_desc)s като любим" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "%(user)s изтри %(post_desc)s" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "отбелÑзан от нÑколко потребителÑ:" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "Първоначална верÑиÑ" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "зададен" - -#: forum/actions/node.py:34 -#, fuzzy, python-format -msgid "%(user)s asked %(question)s" -msgstr "%(user)s попита %(question)s" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "отговорено" - -#: forum/actions/node.py:55 -#, fuzzy, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "%(user)s отговори %(asker)s на %(question)s" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "коментира" - -#: forum/actions/node.py:70 -#, fuzzy, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "Ðов коментар на %(question_title)s" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "редактиран" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "%(user)s редактира %(post_desc)s" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "претагнато" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "Ðов таг" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "%(user)s ретагна %(post_desc)s" - -#: forum/actions/node.py:119 -#, fuzzy -msgid "reverted" -msgstr "претагнато" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" -"%(user)s върна %(post_desc)s от Ñ€ÐµÐ²Ð¸Ð·Ð¸Ñ %(initial)d (%(initial_sum)s) до " -"Ñ€ÐµÐ²Ð¸Ð·Ð¸Ñ %(final)d (%(final_sum)s)" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "затворен" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "%(user)s затвори %(post_desc)s: %(reason)s" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "конвертиран" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "%(user)s превърна отговора на %(question)s в коментар" - -#: forum/actions/node.py:201 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "%(user)s превърна отговора на %(question)s в коментар" - -#: forum/actions/node.py:225 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "%(user)s превърна отговора на %(question)s в коментар" - -#: forum/actions/node.py:231 -#, fuzzy -msgid "converted to question" -msgstr "ÑпиÑък на вÑички въпроÑи" - -#: forum/actions/node.py:256 -#, fuzzy, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "%(user)s превърна отговора на %(question)s в коментар" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "уикифицира" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "%(user)s отбелÑза %(node)s като чаÑÑ‚ от уийки общноÑÑ‚.\t" - -#: forum/actions/page.py:6 -#, fuzzy -msgid "created" -msgstr "Ñъздаден" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "%(user)s Ñъздаде нова Ñтраница озаглавена %(page)s" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "%(user)s редактира Ñтраницата озаглавена %(page)s" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "публикувано" - -#: forum/actions/page.py:55 -#, fuzzy, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "%(username)s е нов потребител на %(app_name)s" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "приÑъедини" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "%(user)s %(have_has)s Ñе приÑъедини към %(app_name)s Q&A общноÑтта" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "има" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "има" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, fuzzy, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "%(user)s %(have_has)s Ñе приÑъедини към %(app_name)s Q&A общноÑтта" - -#: forum/actions/user.py:36 -#, fuzzy -msgid "validated e-mail" -msgstr "How to validate email and why?" - -#: forum/actions/user.py:46 -#, fuzzy, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "%(user)s %(have_has)s Ñе приÑъедини към %(app_name)s Q&A общноÑтта" - -#: forum/actions/user.py:53 -#, fuzzy -msgid "edited profile" -msgstr "редактиран потребителÑки профил" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "%(user)s редактира %(hes_or_your)s %(profile_link)s" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "профил" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "даде бонуÑ" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "ПоздравлениÑ, вие Ñте наградени Ñ Ð´Ð¾Ð¿ÑŠÐ»Ð½Ð¸Ñ‚ÐµÐ»Ð½Ð¸ %s точки." - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "БлагодарÑ" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "Вие Ñте били Ñанкционирани Ñ %s точки." - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "неизвеÑтен" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "%(user)s награди Ñ %(value)s точки %(users)s: %(message)s\t" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "%(user)s наказа %(users)s Ñ %(value)s точки: %(message)s\t" - -#: forum/actions/user.py:101 -#, fuzzy -msgid "gave reputation points" -msgstr "karma" - -#: forum/actions/user.py:114 -#, fuzzy, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "ПоздравлениÑ, вие Ñте наградени Ñ Ð´Ð¾Ð¿ÑŠÐ»Ð½Ð¸Ñ‚ÐµÐ»Ð½Ð¸ %s точки." - -#: forum/actions/user.py:116 -#, fuzzy -msgid "point" -msgid_plural "points" -msgstr[0] "Точки" -msgstr[1] "Точки" - -#: forum/actions/user.py:125 -#, fuzzy, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "%(user)s награди Ñ %(value)s точки %(users)s: %(message)s\t" - -#: forum/actions/user.py:130 -#, fuzzy, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "%(user)s наказа %(users)s Ñ %(value)s точки: %(message)s\t" - -#: forum/actions/user.py:138 -#, fuzzy -msgid "was awarded" -msgstr "вÑички награди" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" -"ЧеÑтито! Получихте значка '%(badge_name)s'. Проверете във <a href=" -"\"%(profile_url)s\">профила Ñи</a>. " - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "%(user)s %(were_was)s Ñпечели %(badge_name)s значка" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "бÑха" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "беше" - -#: forum/actions/user.py:195 -#, fuzzy -msgid "suspended" -msgstr "обновено" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "Вашата забрана беше отменена." - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "за %s дена" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "неопределено" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "Лошо поведение" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "Въведете поне един IP адреÑ" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "Ðевалиден IP адреÑ: %s" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "МолÑ, използвайте квантовата Ð½Ð¾Ñ‚Ð°Ñ†Ð¸Ñ Ñ Ñ‚Ð¾Ñ‡ÐºÐ¸ за IP адреÑ" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "Съобщение" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -#, fuzzy -msgid "None" -msgstr "бронз" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "Markdown Ñъвети" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "Заглавие" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "URL Ð°Ð´Ñ€ÐµÑ Ð½Ð° Ñтраницата" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "Съдържание" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "Mime Тип" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "Render Mode" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "Шаблон" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "Разреши коментарите" - -#: forum/forms/admin.py:99 -#, fuzzy -msgid "send validation email" -msgstr "Stop Email" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "Имейл Ð°Ð´Ñ€ÐµÑ (не го ÑподелÑме)" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "" -"<strong>Ðов имейл:</strong> (нÑма да бъде ÑподелÑн, Ñ‚Ñ€Ñбва да бъде " -"дейÑтвителен)" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "Ðе можете да оÑтавите това поле празно" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "въведете дейÑтвителен имейл адреÑ" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "За Ñъжаление този имейл не е в нашата база данни." - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "Текуща парола" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "Текущата парола не е вÑрна. МолÑ, въведете иÑтинÑката парола." - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "Това поле е задължително" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "Изберете потребителÑко име" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "потребителÑко име е необходимо" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "За Ñъжаление, това име е взето, Ð¼Ð¾Ð»Ñ Ð¸Ð·Ð±ÐµÑ€ÐµÑ‚Ðµ друго" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "За Ñъжаление, това име не е позволено, Ð¼Ð¾Ð»Ñ Ð¸Ð·Ð±ÐµÑ€ÐµÑ‚Ðµ друго" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "За Ñъжаление, нÑма потребител Ñ Ñ‚Ð¾Ð²Ð° име" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" -"За Ñъжаление, ние имаме една Ñериозна грешка - потребителÑко име Ñе взема от " -"нÑколко потребители" - -#: forum/forms/general.py:52 -#, fuzzy -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" -"потребителÑкото име може да Ñе ÑÑŠÑтои Ñамо от букви, празно мÑÑто и " -"подчертаване" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "потребителÑкото име е прекалено кратко, използвайте поне %d Ñимвола" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "Ð’Ð°ÑˆÐ¸Ñ Ð¸Ð¼ÐµÐ¹Ð» <i>(не Ñе ÑподелÑ)</i>" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "имейл адреÑа Ñе изиÑква" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "този имейл вече Ñе използва от нÑкой друг, Ð¼Ð¾Ð»Ñ Ð¸Ð·Ð±ÐµÑ€ÐµÑ‚Ðµ друг" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "Изберете парола" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "ИзиÑква Ñе парола" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "Парола <i>(напишете отново)</i>" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "МолÑ, въведете отново паролата Ñи" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "СъжалÑваме, впиÑаните пароли не Ñъвпадат, опитайте отново" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "заглавие" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "въведете опиÑателно заглавие на въпроÑа" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "Ñъдържание" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "тагове" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" -"Таговете Ñа кратки ключови думи, без разÑтоÑние между Ñ‚ÑÑ…. Можете да " -"използвате от %(min)s до %(max)s тага." - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "Ð¼Ð¾Ð»Ñ Ð¸Ð·Ð¿Ð¾Ð»Ð·Ð²Ð°Ð¹Ñ‚Ðµ от %(min)s до %(max)s тага" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "използвайте от %(min)s до %(max)s Ñимвола в таговете" - -#: forum/forms/qanda.py:108 -#, fuzzy -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "за таговете използвайте Ñимволите a-z, а-Ñ, чиÑла, знаци и '.-_#'" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" -"Вие не разполагат Ñ Ð´Ð¾Ñтатъчно репутациÑ, за да Ñъздавате нови тагове. " -"Следните бележки не ÑъщеÑтвуват още: %s" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "уики общноÑÑ‚" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" -"ако изберете уики общноÑÑ‚, въпроÑа и отговора не генерират точки и името на " -"автора нÑма да бъде показвано" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "оÑновна Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° обновÑването:" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" -"въведете кратко заключение на новата Ñ€ÐµÐ²Ð¸Ð·Ð¸Ñ (редактиран правопиÑ, " -"граматика, подобрен Ñтил, това поле не е задължително)" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "Вашето Ñъобщение:" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "Вашето име:" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "Имейл (не Ñе ÑÐ¿Ð¾Ð´ÐµÐ»Ñ Ñ Ð½Ð¸ÐºÐ¾Ð¹):" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "този имейл не е нужно да бъде Ñвързан Ñ gravatar" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "ИÑтинÑко име" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "Уеб Ñайт" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "МеÑтоположение" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "Дата на раждане" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" -"нÑма да бъде показвано, използва Ñе за изчиÑлÑване на възраÑтта, формат: " -"YYYY-MM-DD" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "Профил" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "Публично име" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "този имейл вече е използван, молÑ, въведете друг" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "Моментално" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "Без извеÑтиÑ" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -#, fuzzy -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question containing " -"<strong><span class=\"darkred\">%(searchtitle)s</span></strong></p>" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "За първи път тук? Проверете <a href=\"%s\">ЧЗВ</a>." - -#: forum/models/action.py:216 -msgid "You" -msgstr "Вие" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "в %(link)s" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "коментар" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "ÐеизвеÑтен" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "ÐÑма опиÑание" - -#: forum/models/node.py:250 -#, fuzzy -msgid "post" -msgstr "добавено" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "[Ðепубликувани] %s" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "[изтрит]" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "[затворен]" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "интереÑно" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "игнорирано" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "зададен от" - -#: forum/models/user.py:248 forum/views/readers.py:147 -#, fuzzy -msgid "answered-by" -msgstr "отговорено" - -#: forum/models/user.py:254 forum/views/readers.py:150 -#, fuzzy -msgid "subscribed-by" -msgstr "абонирай ме" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "ÐаÑтройка на значките" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -#, fuzzy -msgid "Accepting answers" -msgstr "oldest" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -#, fuzzy -msgid "Disallow answers to be accepted" -msgstr "answer accepted" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -#, fuzzy -msgid "Maximum accepted answers per question" -msgstr "не е отговор на въпроÑа" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -#, fuzzy -msgid "Users an accept own answer" -msgstr "oldest" - -#: forum/settings/accept.py:22 -#, fuzzy -msgid "Are normal users allowed to accept their own answers.." -msgstr "" -"Дали обикновените потребители могат да Ñе приемат ÑобÑтвените Ñи отговори" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "ОÑновни наÑтройки" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "ОÑновните наÑтройки за вашето приложение" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "Лого" - -#: forum/settings/basic.py:13 -#, fuzzy -msgid "Your site main logo." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "ОпиÑание на приложението" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "ТеÑÑ‚ на Имейл наÑтройките" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -#, fuzzy -msgid "Site 'from' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -#, fuzzy -msgid "Email Subject Prefix" -msgstr "Welcome to the Q&A forum" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -#, fuzzy -msgid "General settings for the OSQA forms." -msgstr "Поздрави от Zapprotect Q&A" - -#: forum/settings/form.py:8 -#, fuzzy -msgid "Enable community wiki" -msgstr "уики общноÑÑ‚" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -#, fuzzy -msgid "Limit tag creation" -msgstr "karma" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -#, fuzzy -msgid "Empty question content" -msgstr "коментар на въпроÑа" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -#, fuzzy -msgid "context" -msgstr "Ñъдържание" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -#, fuzzy -msgid "Change this:" -msgstr "Change Email" - -#: forum/settings/minrep.py:4 -#, fuzzy -msgid "Minimum reputation config" -msgstr "karma" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -#, fuzzy -msgid "Minimum reputation to vote down" -msgstr "user karma" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -#, fuzzy -msgid "Minimum reputation to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -#, fuzzy -msgid "Minimum reputation to like a comment" -msgstr "user karma" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -#, fuzzy -msgid "Minimum reputation to create tags" -msgstr "user karma" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -#, fuzzy -msgid "Minimum reputation to mark post as community wiki" -msgstr "user karma" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -#, fuzzy -msgid "Minimum reputation to delete comments" -msgstr "user karma" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -#, fuzzy -msgid "Minimum reputation to convert answers to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -#, fuzzy -msgid "Minimum reputation to convert comments to answers" -msgstr "user karma" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -#, fuzzy -msgid "Minimum reputation to convert answers to questions" -msgstr "user karma" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -#, fuzzy -msgid "Moderation settings" -msgstr "Опции за оторизиране" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "Отговори и Коментари" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "post a comment" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -#, fuzzy -msgid "Initial reputation" -msgstr "karma" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -#, fuzzy -msgid "Sitemap settings" -msgstr "Опции за оторизиране" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -#, fuzzy -msgid "Questions Sitemap Limit" -msgstr "ВъпроÑи" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -#, fuzzy -msgid "Your custom footer." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "ПотребителÑки наÑтройки" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "Общни наÑтройки за потребителите." - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "karma" - -#: forum/settings/users.py:11 -#, fuzzy -msgid "Check if you want to allow negative user reputations in the community." -msgstr "user karma" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "Публично име" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "задник" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "ÑекÑ" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "добави" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "редактирай" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "запази" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "изтрий" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "управлÑвай" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "обнови" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "премахни" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -#, fuzzy -msgid "Disabled usernames" -msgstr "Choose screen name" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -#, fuzzy -msgid "Truncate long usernames" -msgstr "подредено по потребителÑко име" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -#, fuzzy -msgid "Show user accept rate" -msgstr "приеми отговори" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -#, fuzzy -msgid "Freeze accept rate" -msgstr "приеми отговори" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -#, fuzzy -msgid "Force unique email" -msgstr "" -"<strong>Ðов имейл:</strong> (нÑма да бъде ÑподелÑн, Ñ‚Ñ€Ñбва да бъде " -"дейÑтвителен)" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "ask questions" -msgstr "задай въпроÑ" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "provide answers" -msgstr "най-Ñтарите" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "make comments" -msgstr "post a comment" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "report posts" -msgstr "karma" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -#, fuzzy -msgid "Gravatar rating" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -#, fuzzy -msgid "Gravatar default" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -#, fuzzy -msgid "Recent awards block size" -msgstr "Recent badges" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -#, fuzzy -msgid "Limit related tags block" -msgstr "Tags" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -#, fuzzy -msgid "Add reputation to max votes per day" -msgstr "user karma" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "тук" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "Забранено" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "СъжалÑвам, но нÑмате право да разглеждате тази Ñтраница." - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "Това може да е Ñтанало поради Ñледните причини:" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" -"използвахте линк от имейл, но в момента Ñте влезнали като друг потребител" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "има грешки в адреÑа, Ð¼Ð¾Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐµÑ‚Ðµ го;" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -#, fuzzy -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "ако ÑмÑтате, че тази Ñтраница 404 не е Ñ‚Ñ€Ñбвало да Ñе показва" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "оповеÑтете за проблема" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "към началната Ñтраница" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "вижте вÑички въпроÑи" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "вижте вÑички тагове" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "Грешка 404" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "404 Ðищо не беше намерено" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "За Ñъжаление Ñ‚ÑŠÑ€Ñената Ñтраница не беше намерена." - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "този Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ð¸Ð»Ð¸ отговор е бил изтрит;" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "адреÑа има грешка -- проверете го;" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "ако ÑмÑтате, че тази Ñтраница 404 не е Ñ‚Ñ€Ñбвало да Ñе показва" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "върнете Ñе на предишната Ñтраница" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "ÑъжалÑваме, ÑиÑтемна грешка" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "ÑиÑÑ‚ÐµÐ¼Ð½Ð¸Ñ Ð»Ð¾Ð³ е запиÑан, грешката ще бъде оправена възможно най-Ñкоро" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "молÑ, Ñподелете грешката Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтраторите на Ñайта" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "вижте поÑледните въпроÑи" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "виж таговете" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "Функции на профила" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "СмÑна на паролата" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "ПредоÑтавете нова парола за профила Ñи." - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "Редактирай отговора" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "Ñкрий прегледа" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "покажи прегледа" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "назад" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "ревизиÑ" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "изберете ревизиÑ" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "Покажи Ð²Ð¸Ð·ÑƒÐ°Ð»Ð½Ð¸Ñ Ñ‚ÐµÐºÑтов редактор" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "покажи прегледа" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "Запази промените" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "Откажи" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "Съвети" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "направете отговора подходÑщ за общноÑтта" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "опитайте Ñе да отговорите, а не изиÑквайте диÑкуÑиÑ" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "опитайте Ñе да предоÑтавите детайлна информациÑ" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "бъдете кратки и ÑÑни" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "вижте чеÑто задаваните въпроÑи" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "Задайте въпроÑ" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "Изпрати ми връзка за валидиране." - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "(задължително)" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "Оторизирайте Ñе за да публикувате" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "Задайте Ð’Ð°ÑˆÐ¸Ñ Ð²ÑŠÐ¿Ñ€Ð¾Ñ" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "Значка" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "ÐŸÐ¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ðµ награден Ñ Ñ‚Ð¾Ñ‡ÐºÐ¸:" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "Обобщение за точките" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "Значки" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" -"Ðко Вашите отговори Ñа ползотворни, общноÑтта ще Ви Ñе отблагодари Ñ Ñ‚Ð¾Ñ‡ÐºÐ¸." - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "Следва ÑпиÑък Ñ Ð²Ñички значки и колко пъти те Ñа били предоÑтавени." - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "Значки на общноÑтта" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "злато" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" -"Златото е най-голÑма награда в тази общноÑÑ‚. За да Ñ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚Ðµ, Ñ‚Ñ€Ñбва да " -"комбинирате задълбочени Ð¿Ð¾Ð·Ð½Ð°Ð½Ð¸Ñ Ð² Ñферата, както и активноÑÑ‚." - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "Ñребро" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" -"Получаването на тази значка е признание за неуморима упоритоÑÑ‚. Това показва " -"колко много Ñте допринеÑли за общноÑтта." - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "бронз" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "Ðко Ñте активен, нÑма как да не Ñе отличите Ñ Ñ‚Ð°Ð·Ð¸ значка." - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -#, fuzzy -msgid "Message:" -msgstr "Вашето Ñъобщение:" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "Затвори" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -msgid "word" -msgstr "дума" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "думи" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -msgid "character" -msgstr "Ñимвол" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "Затвори въпроÑ" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "Затвори въпроÑа" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "Причини" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "OK за да затворите" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "обратно на началната Ñтраница" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "задай въпроÑ" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "Ñ‚ÑŠÑ€Ñене" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "въпроÑа" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "потребители" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "добре дошли на" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "Изход" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" -"<p>ÐатиÑкането на бутона <strong>Изход</strong> ще Ви изведе от ÑиÑтемата, " -"но не и от OpenID доÑтавчика.</p>\n" -"<p>Ðко иÑкатед а излезнете напълно, молÑ, уверете Ñе, че Ñте напуÑнали и " -"OpenID.</p>" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "Излез Ñега" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "Markdown Ñъвети" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -#, fuzzy -msgid "Markdown Syntax" -msgstr "Markdown Ñъвети" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" -"Този документ опиÑва нÑкои от по-важните оÑобеноÑти на Markdown ÑинтакÑиÑа. " -"Така или иначе има много повече оÑобеноÑти в ÑинтакÑиÑа, които не Ñа опиÑани " -"тук. За да ги разберете вÑички, можете да отидете на Ñтраницата на <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown</a>." - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "ЗаглавиÑ" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" -"За Ð·Ð°Ð³Ð»Ð°Ð²Ð¸Ñ Ð¾Ñ‚ първо ниво подчертайте текÑта Ñ Ð·Ð½Ð°Ñ†Ð¸ за равенÑтво. За второ " -"ниво използвайте тирета." - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" -"Ðко предпочитате, можете да използвате знака \"диеÑ\" за тази цел. " -"КоличеÑтвото знаци преди текÑта Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ñ Ð½ÐµÐ³Ð¾Ð²Ð°Ñ‚Ð° нотациÑ." - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" -"Ð’ÑŠÐ¿Ñ€Ð¾Ñ Ð½Ð° Ñтил е какво ще изберете. Използвайте това, което миÑлите, че " -"изглежда по-добре в текÑтов документ. Във вÑеки Ñлучай ÐºÑ€Ð°Ð¹Ð½Ð¸Ñ Ñ€ÐµÐ·ÑƒÐ»Ñ‚Ð°Ñ‚ е " -"един и Ñъщи." - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "Параграфи" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "Параграфите Ñе отделÑÑ‚ Ñ Ð¿Ñ€Ð°Ð·Ð½Ð¸ редове." - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "Връзки" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" -"\n" -"Ð’ÑÑка връзка има две чаÑти. Първата е текÑта, който вижда потребителÑ, той " -"Ñе Ð¾Ñ‚Ð´ÐµÐ»Ñ Ñ ÐºÐ²Ð°Ð´Ñ€Ð°Ñ‚Ð½Ð¸ Ñкобки. Втората е адреÑа на Ñтраницата, до коÑто " -"иÑкате да води и Ñе Ð¾Ñ‚Ð´ÐµÐ»Ñ Ð² Ñкобки." - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "Форматиране" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" -"За да отбележете удебелен текÑÑ‚ заобиколете текÑта Ñ Ð´Ð²Ðµ звезди (*) или две " -"долни черти (_):" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" -"За да отбележете наклонен текÑÑ‚ го заобиколете Ñ ÐµÐ´Ð½Ð° звезда (*) или долна " -"черта (_):" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" -"За да отбележете наклонен и удебелен текÑÑ‚ го заобиколете Ñ Ñ‚Ñ€Ð¸ звезди (*) " -"или три долни черти (_):" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "Блокови цитати" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" -"За да Ñъздавате блокови отделÑÐ½Ð¸Ñ Ð¸Ð·Ð¿Ð¾Ð»Ð·Ð²Ð°Ð¹Ñ‚Ðµ знака за повече (>) преди " -"вÑÑка линиÑ, коÑто иÑкате да бъде включена в отделÑнето." - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" -"ВмеÑто да поÑтавÑте знака преди вÑÑка линиÑ, можете да го поÑтавите Ñамо на " -"Ð¿ÑŠÑ€Ð²Ð¸Ñ Ñ€ÐµÐ´ от отделÑнето и да завършите Ñ Ð¿Ñ€Ð°Ð·ÐµÐ½ ред." - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "СпиÑъци" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" -"За да Ñъздадете нумериран ÑпиÑък в Markdown, вÑеки елемент от ÑпиÑъка Ñ‚Ñ€Ñбва " -"да започва Ñ Ñ‡Ð¸Ñло, поÑледвано от точка и разÑтоÑние." - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" -"За да Ñъздадете подреден ÑпиÑък, поÑтавете звезда (*) и разÑтоÑние преди " -"вÑеки елемент." - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "Много повече" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" -"Има още много неща, които не Ñа Ñпоменати за Markdown на тази Ñтраница." - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "МолÑ, покажете, че Ñте Човек" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "Ðз Ñъм Човек" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "ТърÑене" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "публикации на Ñтраница" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "предишна" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "текуща Ñтраница" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "номер на Ñтраницата " - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "Ñледваща Ñтраница" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "Ð”ÐµÐºÐ»Ð°Ñ€Ð°Ñ†Ð¸Ñ Ð·Ð° поверителноÑÑ‚" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" -"Respecting users privacy is an important core principle of this Q&A " -"forum. Information on this page details how this forum protects your " -"privacy, and what type of information is collected." - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" -"Information on question views, revisions of questions and answers - both " -"times and content are recorded for each user in order to correctly count " -"number of views, maintain data integrity and report relevant updates." - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" -"Members of this community may choose to display personally identifiable " -"information in their profiles. Forum will never display such information " -"without a request from the user." - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" -"None of the data that is not openly shown on the forum by the choice of the " -"user is shared with any third party." - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" -"Forum software relies on the internet cookie technology to keep track of " -"user sessions. Cookies must be enabled in your browser so that forum can " -"work for you." - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" -"These policies may be adjusted to improve protection of user's privacy. " -"Whenever such changes occur, users will be notified via the internal " -"messaging system. " - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "още въпроÑи Ñ Ñ‚Ð°Ð³ '%(tagname)s'" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "ВъпроÑа беше затворен поради \"%(close_reason)s\" от" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "Един отговор:" -msgstr[1] "%(counter)s Отговори" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "Ð’Ð°ÑˆÐ¸Ñ Ð¾Ñ‚Ð³Ð¾Ð²Ð¾Ñ€" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "Бъдете Ð¿ÑŠÑ€Ð²Ð¸Ñ Ð¾Ñ‚Ð³Ð¾Ð²Ð¾Ñ€Ð¸Ð» на този въпроÑ!" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "Оторизирайте Ñе за да добавите Ð’Ð°ÑˆÐ¸Ñ Ð¾Ñ‚Ð³Ð¾Ð²Ð¾Ñ€" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "Отговорете на Ð’Ð°ÑˆÐ¸Ñ Ð²ÑŠÐ¿Ñ€Ð¾Ñ" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "Отговори на въпроÑа" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "Тагове" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "виж въпроÑите по тагове" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "използва тагове" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "Зададен въпроÑ" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "ВъпроÑа е видÑн" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "пъти" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "ПоÑледно обновен" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "Подобни въпроÑи" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "Редактирай въпроÑа" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "Съвети за заглавието" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "Какво Ñа таговете" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "Промени таговете" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "Защо да използваме тагове?" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "таговете ни помагат да организираме въпроÑите" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "редакторите на тагове получават Ñпециални награди от общноÑтта" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "отговора" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "глаÑове" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "видÑно" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "абонирай Ñе към RSS на този въпроÑ" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "Отвори отново въпроÑа" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "Отвори преди Ð·Ð°Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð¸Ñ Ð²ÑŠÐ¿Ñ€Ð¾Ñ" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "ВъпроÑа е бил затворен поради Ñледната причина " - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "причина - оÑтави празно" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "на " - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "дата на затварÑне" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "Отвори отново този въпроÑ" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð½Ð° ревизиите" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "Ñкрий/покажи ревизиите" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "Следвай този въпроÑ" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "По Имейл" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "Вие бÑхте автоматично абониран за този въпроÑ." - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "Вие Ñте абониран за този въпроÑ." - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "Вие не Ñте абониран за този въпроÑ." - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "махни абонамента ми" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "абонирай ме" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" -"\n" -"(можете да наÑтроите извеÑтиÑта Ñи от <a href=\"%(subscriptions_url)s" -"\">профила</a>)" - -#: forum/skins/default/templates/subscription_status.html:30 -#, fuzzy -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" -"<span class='strong'>Тук</span> (Ñлед като Ñе оторизирате) ще можете да Ñе " -"абонирате за периодични извеÑÑ‚ÑÐ²Ð°Ð½Ð¸Ñ Ð¿Ð¾ този въпроÑ." - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "По RSS" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "абонамент за отговорите" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "Отговори" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "абонирай ме за коментари и отговори" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "Отговори и Коментари" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "СпиÑък тагове" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "Ð’Ñички тагове отговарÑщи на заÑвката" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "Ðищо не беше намерено" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "Опции за оторизиране" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "Това Ñа външни оторизатори Ñвързани Ñ Ð’Ð°ÑˆÐ¸Ñ Ð°ÐºÐ°ÑƒÐ½Ñ‚" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "Ð’ момента нÑмате външни оторизатори Ñвързани Ñ Ð’Ð°ÑˆÐ¸Ñ Ð°ÐºÐ°ÑƒÐ½Ñ‚." - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "Добави нов оторизатор" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" -"<span class='strong'>За да промените паролата</span> попълнете и изпратете " -"формата." - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" -"Можете да зададете парола за Ð’Ð°ÑˆÐ¸Ñ Ð°ÐºÐ°ÑƒÐ½Ñ‚, така че да използвате Ñтандартно " -"потребителÑко име и парола!" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "Парола <i>(напишете отново)</i>" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "Свържете OpenID към този Ñайт" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "Ðова потребителÑка региÑтрациÑ" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "Вие Ñте тук за пръв път от " - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" -"МолÑ, изберете потребителÑко име и подтвърдете имейл адреÑа Ñи. Ðеобходим е " -"валиден имейл адреÑ, той ще бъде необходим за да получавате извеÑÑ‚Ð¸Ñ Ð¾Ñ‚Ð½Ð¾Ñно " -"темите, които Ви интереÑуват и ще Ви направÑÑ‚ ангажиран учаÑтник в общноÑтта." - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "Този акаунт вече ÑъщеÑтвува, изплозвайте друг." - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "РегиÑтрациÑ" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -#, fuzzy -msgid "This e-mail has already been validated" -msgstr "този имейл вече е използван, молÑ, въведете друг" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -#, fuzzy -msgid "Already validated" -msgstr "не е проверено" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "Използването на поÑÐ¾Ñ‡ÐµÐ½Ð¸Ñ Ð»Ð¸Ð½Ðº ще потвърди Ð’Ð°ÑˆÐ¸Ñ Ð¸Ð¼ÐµÐ¹Ð»." - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "Валидирай имейл адреÑа ми" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "Вход" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "ПотребителÑки вход" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "Или..." - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" -"\n" -"Външните уÑлуги за Ð¾Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð¸Ð·Ð¿Ð¾Ð»Ð·Ð²Ð°Ñ‚ <b><a href=\"http://openid.net/" -"\">OpenID</a></b> технологиÑ, като цÑлата Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ клиента и Ñървъра " -"оÑтава защитена. " - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "Потвърди Ð¼Ð¾Ñ Ð¸Ð¼ÐµÐ¹Ð» Ñлед като влезна." - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "Кликнете" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "ако имате проблеми Ñ Ð²Ð»Ð¸Ð·Ð°Ð½ÐµÑ‚Ð¾." - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "Въведете Ð’Ð°ÑˆÐ¸Ñ " - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "Защо да използваме OpenID?" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "Използвайки OpenID не е нужно да Ñъздавате нов потребител." - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "" -"Можете Ñпокойно да използвате ÑÑŠÑ‰Ð¸Ñ OpenID профил за оÑтаналите Ñайтове, " -"поддържащи технологиÑта." - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" -"Има повече от 200 000 000 OpenID профила и повече от 15 000 Ñайта поддържащи " -"технологиÑта." - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "OpenID е базиран на отворен Ñтандарт, поддържан от много компании." - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "Разбери повече" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "Вземи OpenID" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "%(prefix)s Временен линк за вход" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" -"Ð¡Ð»ÐµÐ´Ð½Ð¸Ñ Ð»Ð¸Ð½Ðº предоÑÑ‚Ð°Ð²Ñ Ð²ÑŠÐ·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑ‚ за еднократна Ð¾Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° %(app_name)s" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "Отидете на профила Ñи" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" -"Ð¡Ð»ÐµÐ´Ð½Ð¸Ñ Ð°Ð´Ñ€ÐµÑ Ð¿Ñ€ÐµÐ´Ð¾ÑÑ‚Ð°Ð²Ñ Ð¿Ñ€Ð°Ð²Ð° за еднократна Ð¾Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð²ÑŠÐ² Ð’Ð°ÑˆÐ¸Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð» на " -"%(app_name)s" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "ПоиÑкай временен ключ за доÑтъп" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "Профил: поиÑкай временен ключ за доÑтъп" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" -"\n" -"Ðко изпитвате проблеми Ñ Ð´Ð¾Ñтъпа до Ð’Ð°ÑˆÐ¸Ñ Ð°ÐºÐ°ÑƒÐ½Ñ‚ или Ñте забравили паролата " -"Ñи, тук можете да поиÑкате временен код за доÑтъп. Попълнете Ð’Ð°ÑˆÐ¸Ñ Ð¸Ð¼ÐµÐ¹Ð» " -"Ð°Ð´Ñ€ÐµÑ Ð¸ ние ще изпратим временна връзка, предоÑтавÑща доÑтъп до профила. " -"Това ще Ви даде ÑˆÐ°Ð½Ñ Ð´Ð° получите доÑтъп до профила Ñи. Този код е доÑтъпен " -"Ñамо веднъж и за определен интервал от време. " - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "Изпрати връзка" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, fuzzy, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "%(prefix)s Добре дошли на %(app_name)s" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" -"Добре дошли на %(app_name)s. Знаем, че Ñте заети, за това обещаваме вÑичко " -"да бъде макÑимално проÑто." - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "Това е Вашата Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° логин (запазете Ñ Ð½Ð° Ñигурно мÑÑто):" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "ПотребителÑко име: " - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "Парола: " - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "Използването на поÑÐ¾Ñ‡ÐµÐ½Ð¸Ñ Ð»Ð¸Ð½Ðº ще потвърди Ð’Ð°ÑˆÐ¸Ñ Ð¸Ð¼ÐµÐ¹Ð»." - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "Отговор от %(author)s" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "%(who)s избра този отговор за верен" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "отбележи този отговор като приет" - -#: forum/skins/default/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "sorry, file uploading requires karma >60" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -#, fuzzy -msgid "Points:" -msgstr "Точки" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "необходими Ñимволи" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "оÑтаващи Ñимволи" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr " коментар" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "откажи" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "Редактирай коментара" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "Изтрий коментара" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -#, fuzzy -msgid "Convert comment to answer" -msgstr "коментиран отговор" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "току що" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "Ðз хареÑвам този коментар" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "ÑпиÑък на вÑички въпроÑи" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "показани %(showing)s от %(total)s" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "добави нов коментар" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "ПоÑтави коментара под:" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -msgid "Convert to question" -msgstr "Превърни във въпроÑ" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "отбележи въпроÑа като любим" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -#, fuzzy -msgid "Permanent link" -msgstr "link" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "повече" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "Изберете нÑÐºÐ¾Ñ Ð¾Ñ‚ поÑочените причини или използвайте поле." - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "Ðз хареÑвам тази публикациÑ" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "количеÑтво глаÑове" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "Ðз не хареÑвам тази публикациÑ" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "Този %(post_type)s е маркиран като \"уики общноÑÑ‚\"" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "ЧуÑтвайте Ñе Ñвободни да <a href=\"%(edit_url)s\">редактирате</a>" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" -"\n" -" %(accepted_by_link)s току що прие %(answer_author_link)s's " -"отговор на Ð½ÐµÐ³Ð¾Ð²Ð¸Ñ Ð²ÑŠÐ¿Ñ€Ð¾Ñ\n" -" %(question_link)s.\n" -" " - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "Здравейте" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "Поздрави" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "P.S. Винаги можете да изберете кои извеÑÑ‚Ð¸Ñ Ð´Ð° получавате" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "P.S. Винаги можете да изберете кои извеÑÑ‚Ð¸Ñ Ð´Ð° получавате тук:" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "%(prefix)s Дневен бюлетин" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -"Ðакратко какво Ñтава на %(app_name)s Ñлед поÑледното ни обновÑване." - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, fuzzy, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" -"\n" -"Има %(new_member_count)s нови потребители в общноÑтта. %(new_member_links)s " -"Ñа били най-активни до Ñега. " - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, fuzzy, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>тагнати въпроÑа</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, fuzzy, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" -"\n" -"(един коментар)" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -#, fuzzy -msgid "We think you might like the following questions:" -msgstr "Това може да е Ñтанало поради Ñледните причини:" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" -"Тези въпроÑи не Ñа предизвикали много внимание в общноÑтта, но ние ÑмÑтаме, " -"че Вие бихте могли да помогнете:" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" -"Междувременно, нÑкои от Вашите %(subscriptions_link)s абонаменти имат " -"обновÑÐ²Ð°Ð½Ð¸Ñ Ñлед като поÑледно Ñте ги прегледали:" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, fuzzy, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" -"\n" -"Ðакратко какво Ñтава на %(app_name)s Ñлед поÑледното ни обновÑване." - -#: forum/skins/default/templates/notifications/digest.html:112 -#, fuzzy, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" -"\n" -"Има %(new_member_count)s нови потребители в общноÑтта. %(new_member_links)s " -"Ñа били най-активни до Ñега. " - -#: forum/skins/default/templates/notifications/digest.html:114 -#, fuzzy, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>тагнати въпроÑа</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, fuzzy, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" -"\n" -"(един коментар)" - -#: forum/skins/default/templates/notifications/digest.html:134 -#, fuzzy -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" -"Междувременно, нÑкои от Вашите %(subscriptions_link)s абонаменти имат " -"обновÑÐ²Ð°Ð½Ð¸Ñ Ñлед като поÑледно Ñте ги прегледали:" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, fuzzy, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "%(prefix)s Ñъобщение за Обратна Връзка от %(app_name)s" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "Изпратил" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "анонимен" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "имейл" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "Съдържание:" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, fuzzy, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "%(prefix)s Ðов отговор до: %(question_title)s" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, fuzzy, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -" %(author_link)s току що публикува нов отговор в %(app_name)s на " -"въпроÑа \n" -" %(question_link)s:\n" -" " - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "Ðе пропуÑкайте да Ñе поÑвите и да глаÑувате." - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, fuzzy, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "Ðов коментар на %(question_title)s" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, fuzzy, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, fuzzy, python-format -msgid "the question %(question_link)s" -msgstr "Ðов коментар на %(question_title)s" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, fuzzy, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, fuzzy, python-format -msgid "the question \"%(question_title)s\"" -msgstr "Ðов коментар на %(question_title)s" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, fuzzy, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "%(username)s е нов потребител на %(app_name)s" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, fuzzy, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "Ðов Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ð½Ð° %(app_name)s" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -#, fuzzy -msgid "Site Administration" -msgstr "админиÑтрациÑ" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -#, fuzzy -msgid "Create User" -msgstr "Парола <i>(напишете отново)</i>" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -#, fuzzy -msgid "Quick creation of a new user" -msgstr "answer" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -#, fuzzy -msgid "Save" -msgstr "Запази промените" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "ÐдминиÑтративна Зона" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "Добре дошли," - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -#, fuzzy -msgid "Back to home page" -msgstr "обратно на началната Ñтраница" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -#, fuzzy -msgid "Log out" -msgstr "Изход" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -#, fuzzy -msgid "Static content" -msgstr "Ñъдържание" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -#, fuzzy -msgid "Custom Pages" -msgstr "Тагове" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -#, fuzzy -msgid "Other settings" -msgstr "Опции за оторизиране" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -#, fuzzy -msgid "Editing page" -msgstr "Редактирай отговора" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -#, fuzzy -msgid "Creating page" -msgstr "текуща Ñтраница" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -#, fuzzy -msgid "New page" -msgstr "Ñледваща Ñтраница" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -#, fuzzy -msgid "Edit" -msgstr "редактирай" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, fuzzy, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "%(prefix)s Добре дошли на %(app_name)s" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "Регулиране на наÑтройките" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -#, fuzzy -msgid "Open site" -msgstr "Уеб Ñайт" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "Затвори за поддръжка" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -#, fuzzy -msgid "Moderation" -msgstr "МеÑтоположение" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -#, fuzzy -msgid "newer users" -msgstr "най-новите" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -#, fuzzy -msgid "older users" -msgstr "най-Ñтарите" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -#, fuzzy -msgid "Email" -msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -#, fuzzy -msgid "Validated" -msgstr "обновено" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -#, fuzzy -msgid "Reputation:" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -#, fuzzy -msgid "Reputation" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -#, fuzzy -msgid "Cheating score" -msgstr "СмÑна на паролата" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -#, fuzzy -msgid "Possible fake accounts" -msgstr "Изтрий профила" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -#, fuzzy -msgid "out of" -msgstr "Излез Ñега" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -#, fuzzy -msgid "uses" -msgstr "потребители" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -#, fuzzy -msgid "Node manager" -msgstr "най-Ñтарите" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -#, fuzzy -msgid "Filter" -msgstr "Ñребро" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -#, fuzzy -msgid "By tag(s)" -msgstr "тагове" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -#, fuzzy -msgid "Filter name..." -msgstr "потребителÑко име" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -#, fuzzy -msgid "Action" -msgstr "МеÑтоположение" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "Отбележи като изтрит" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "Премахни изтриването" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "Окончателно изтриване" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "Затвори (Ñамо въпроÑи)" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -#, fuzzy -msgid "State" -msgstr "заглавие" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -#, fuzzy -msgid "Tags" -msgstr "тагове" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "Преглед" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -#, fuzzy -msgid "Pages" -msgstr "Точки" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "изтрий" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#, fuzzy -msgid "next" -msgstr "текÑÑ‚" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "глаÑ" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "гледане" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "Tags" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "виж въпроÑите Ñ Ñ‚Ð°Ð³ '%(tag_name)s'" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "поÑледно обновÑваните въпроÑи" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "поÑледно задавани въпроÑи" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "поÑледни" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "горещи въпроÑи" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "горещи" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "въпроÑи Ñ Ð½Ð°Ð¹-много глаÑове" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "Ñ Ð½Ð°Ð¹-много глаÑове" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -#, fuzzy -msgid "Unsubscribe" -msgstr "махни абонамента ми" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "ИнтереÑни тагове" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "премахни '%(tag_name)s' от ÑпиÑъка Ñ Ð¸Ð½Ñ‚ÐµÑ€ÐµÑни тагове" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "Добави" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "Игнорирани тагове" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "премахни '%(tag_name)s' от ÑпиÑъка Ñ Ð¸Ð³Ð½Ð¾Ñ€Ð¸Ñ€Ð°Ð½Ð¸ тагове" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "Tagged questions" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "ВъпроÑи без отговор" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "Ð’Ñички ВъпроÑи" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "Markdown Ñъвети" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "*италик* или __италик__" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "**дебел** или __дебел__" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "връзка" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "текÑÑ‚" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "Ñнимка" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "подреден лиÑÑ‚:" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" -"за да добавите минаване на нов ред проÑто добавете две разÑтоÑÐ½Ð¸Ñ Ð½Ð° мÑÑтото " -"където иÑкате да бъде прекъÑването" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "оÑновни HTML тагове Ñъщо Ñе поддържат" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "научете повече отноÑно Markdown" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "ПоÑледни точки" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "вÑички точки" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "ПоÑледни тагове" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "популÑрни тагове" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "Редактирай потребителÑÐºÐ¸Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -#, fuzzy -msgid "gravatar" -msgstr "Какво е Gravatar?" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "РегиÑтриран потребител" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "Публично име" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "Обнови" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "репутациÑ" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -#, fuzzy -msgid "Suspended" -msgstr "ПреоÑтановено" - -#: forum/skins/default/templates/users/info.html:42 -#, fuzzy -msgid "Administrator" -msgstr "админиÑтрациÑ" - -#: forum/skins/default/templates/users/info.html:45 -#, fuzzy -msgid "Moderator" -msgstr "МеÑтоположение" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "ИÑтинÑко име" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "member since" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "поÑледно видÑн" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "потребителÑки Ñайт" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "меÑтоположение" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "възраÑÑ‚" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "years old" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "не е проверено" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "неизползвани глаÑове днеÑ" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "оÑтанали глаÑове" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "Точки" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "ПотребителÑки инÑтрументи" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -#, fuzzy -msgid "Users Online" -msgstr "ПотребителÑки вход" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "Тук можете да направите нÑкои лични наÑтройки." - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -#, fuzzy -msgid "Always remember the sort order I apply to the lists I view" -msgstr "ЗапомнÑй подреждането на ÑпиÑъците, които гледам." - -#: forum/skins/default/templates/users/questions.html:11 -#, fuzzy -msgid "No favorite questions to display." -msgstr "въпроÑи Ñ Ð½Ð°Ð¹-много глаÑове" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "точки" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question without an " -"accepted answer</p>" -msgstr[1] "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>questions without an " -"accepted answer</p>" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "отоговора е глаÑуван %(vote_count)s пъти" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -"\n" -"<span class=\"count\">%(cnt)s</span> ГлаÑ" -msgstr[1] "" -"\n" -"<span class=\"count\">%(cnt)s</span> ГлаÑа" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ðµ глаÑувал положително толкова пъти" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ðµ глаÑувал отрицателно толкова пъти" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -#, fuzzy -msgid "show auto-subscribe" -msgstr "махни абонамента ми" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "ÐаÑтройки на извеÑтиÑта и абонаментите" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "ИзвеÑÑ‚Ñвай ме когато:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "Се приÑъединÑва нов потребител" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "Се публикува нов въпроÑ" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "Се публикува нов Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ñъдържащ таг на моите интереÑи" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "ВъпроÑи които гледам" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "Ð’Ñички въпроÑи отговарÑщи на моите тагове" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "Ð’Ñички въпроÑи" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "Публикуван е отговор" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "Приет е отговор" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "Дневен бюлетин:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "ИзвеÑти ме когато ме обÑъждат" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" -"Уведоми ме, когато нÑкой отговори на един от моите коментари по вÑеки поÑÑ‚ " -"използвайки <pre>@ПотребителÑко име</pre> нотациÑта" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "Задръж потребителÑ" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -#, fuzzy -msgid "Indefinitely" -msgstr "Indefinitely" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "дена" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "Публично Ñъобщение" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "Лично Ñъобщение" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "Потребители" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "положителен вот" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "отрицателен вот" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "Един отговор:" -msgstr[1] "%(counter)s Отговори" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "таговете Ñа задължителни" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, fuzzy, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question with title " -"containing <strong><span class=\"darkred\">%(searchtitle)s</span></strong></" -"p>" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, fuzzy, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" -"\n" -"(можете да наÑтроите извеÑтиÑта Ñи от <a href=\"%(subscriptions_url)s" -"\">профила</a>)" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "Ñкривай игнорираните въпроÑи" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "sorry, file uploading requires karma >60" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "покажи вÑички" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -#, fuzzy -msgid "*italic* or __italic__" -msgstr "*италик* или __италик__" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -#, fuzzy -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "ЗапомнÑй подреждането на ÑпиÑъците, които гледам." - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "karma" - -#: forum/templatetags/extra_tags.py:114 -#, fuzzy, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:120 -#, fuzzy, python-format -msgid "%s has one accepted answer" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:126 -#, fuzzy, python-format -msgid "%s has no accepted answers" -msgstr "приеми отговори" - -#: forum/templatetags/extra_tags.py:132 -#, fuzzy -msgid "accept rate" -msgstr "приеми отговори" - -#: forum/templatetags/extra_tags.py:133 -#, fuzzy -msgid "Rate of the user's accepted answers" -msgstr "отбележи този отговор като приет" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "преди 2 дена" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "вчера" - -#: forum/templatetags/extra_tags.py:170 -msgid "hour ago" -msgstr "Ñ‡Ð°Ñ Ð½Ð°Ð·Ð°Ð´" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "чаÑа назад" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "минута назад" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "минути назад" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "Ñекунда" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "Ñекунди" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "link" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "затвори" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "премахни изтриването" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "виж верÑиите" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "отбележи като уики" - -#: forum/templatetags/node_tags.py:167 -#, fuzzy -msgid "cancel community wiki" -msgstr "уики общноÑÑ‚" - -#: forum/templatetags/node_tags.py:171 -#, fuzzy -msgid "convert to comment" -msgstr "post a comment" - -#: forum/templatetags/node_tags.py:175 -msgid "convert to question" -msgstr "превърни във въпроÑ" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "добавено" - -#: forum/views/admin.py:141 -#, fuzzy -msgid "Questions Graph" -msgstr "ВъпроÑи" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "ПотребителÑки График" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "Create new user" -msgstr "Парола <i>(напишете отново)</i>" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, fuzzy, python-format -msgid "See %s profile" -msgstr "завършен потребителÑки профил" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -#, fuzzy -msgid "filter" -msgstr "Ñребро" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "едновременно затварÑне" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "Избраните въпроÑи Ñа затворени" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "Ð’Ñички избрани елементи Ñа изтрити" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -#, fuzzy -msgid "New password set" -msgstr "Recover password" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "Добре дошли обратно %s, Ñега Ñте влезнали" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -#, fuzzy -msgid "save it" -msgstr "Запази промените" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "преглед" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -#, fuzzy -msgid "cancel" -msgstr "Откажи" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, fuzzy, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" -"За Ñъжаление нÑмате доÑтатъчно Ñ€ÐµÐ¿ÑƒÑ‚Ð°Ñ†Ð¸Ñ Ð·Ð° да извършите Ñледното дейÑтвие: " -"%(action)s.<br />МолÑ, проверете <a href='%(faq_url)s'>ЧЗВ</a>" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"За Ñъжаление нÑмате доÑтатъчно Ñ€ÐµÐ¿ÑƒÑ‚Ð°Ñ†Ð¸Ñ Ð·Ð° да извършите Ñледното дейÑтвие: " -"%(action)s.<br />МолÑ, проверете <a href='%(faq_url)s'>ЧЗВ</a>" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" -"За Ñъжаление не можете да %(action)s ÑобÑтвената Ñи публикациÑ.<br />МолÑ, " -"прочетете <a href='%(faq_url)s'>ЧЗВ</a>" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" -"Ðнонимните потребители не могат да %(action)s.<br />Влезте или Ñи Ñъздайте " -"профил <a href='%(signin_url)s'>тук</a>." - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" -"За Ñъжаление не можете да %(action)s два пъти една и Ñъща публикациÑ.<br /" -">МолÑ, прочетете <a href='%(faq_url)s'>ЧЗВ</a>" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" -"За Ñъжаление не можете да отмените вот Ñлед %(ndays)d %(tdays)s от " -"първоначалното глаÑуване" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "ден" -msgstr[1] "дни" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -#, fuzzy -msgid "Reason is empty" -msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð½Ð° ревизиите" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -#, fuzzy -msgid "like comments" -msgstr "post a comment" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "изтрий коментарите" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "Ðе може да има повече от %d Ñимвола в Ñ‚Ñлото на коментара." - -#: forum/views/commands.py:267 -#, fuzzy -msgid "edit comments" -msgstr "post a comment" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "приеми отговори" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "За Ñъжаление не можете да приемете отговора" - -#: forum/views/commands.py:332 -#, fuzzy -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "въпроÑа е отговорен, приет е верен отговор" -msgstr[1] "въпроÑа е отговорен, приет е верен отговор" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -"(one comment)" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "изтрий публикациите" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "затвори въпроÑите" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "Отвори отново въпроÑа" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -#, fuzzy -msgid "mark posts as community wiki" -msgstr "уики общноÑÑ‚" - -#: forum/views/commands.py:425 -#, fuzzy -msgid "cancel a community wiki post" -msgstr "уики общноÑÑ‚" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "превърни отговори в коментари" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -#, fuzzy -msgid "Question" -msgstr "ВъпроÑи" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -msgid "convert comments to answers" -msgstr "превърни коментари в отговори" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -#, fuzzy -msgid "award" -msgstr "Ðагради" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, fuzzy, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "sorry, file uploading requires karma >60" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr " Ðай-много <strongобновÑваните напоÑледък</strong> въпроÑи" - -#: forum/views/readers.py:40 -#, fuzzy -msgid "most <strong>recently asked</strong> questions" -msgstr "вижте чеÑто задаваните въпроÑи" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr " <strong>най-активните</strong> въпроÑи за поÑледните 24 чаÑа" - -#: forum/views/readers.py:42 -#, fuzzy -msgid "mostvoted" -msgstr "отхвърлен" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "въпроÑи Ñ <strong>най-много глаÑове</strong>" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "най-Ñтарите" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "най-Ñтари отговори" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "първо ще бъдат показани най-Ñтарите отговори" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "поÑледни отговори" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "най-новите отговори ще бъдат показани първи" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "популÑрни отговори" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "отговорите Ñ Ð½Ð°Ð¹-много глаÑове ще бъдат показани първи" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "име" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "по име" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "Ñортирай по азбучен ред" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "използван" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "по популÑрноÑÑ‚" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "поÑледни въпроÑи" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "неотговорени" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "отворени въпроÑа без приет отговор" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "Ðеотговорени ВъпроÑи" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "въпроÑи Ñ Ñ‚Ð°Ð³ <span class=\"tag\">%(tag)s</span>" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "ВъпроÑи Ñ Ñ‚Ð°Ð³ '%(tag)s'" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "ВъпроÑи зададени от %s" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "ВъпроÑи отговорени от %s" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "ВъпроÑи към които Ñте абониран %s" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "ВъпроÑи абонирани от %s" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "ВъпроÑи" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "най-подходÑщите въпроÑи" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "въпроÑи Ñъвпадащи Ñ '%(keywords)s'" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "подредба по репутациÑ" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "поÑледно" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "поÑледни потребители" - -#: forum/views/users.py:40 -msgid "last" -msgstr "поÑледно" - -#: forum/views/users.py:40 -#, fuzzy -msgid "oldest members" -msgstr "най-Ñтарите" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "по потребителÑко име" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "подредено по потребителÑко име" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "Онлайн Потребители" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "Обновен профил." - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "преглед" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "потребителÑки преглед" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "поÑледна активноÑÑ‚" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "поÑледна потребителÑка дейноÑÑ‚" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "иÑÑ‚Ð¾Ñ€Ð¸Ñ Ð½Ð° репутациÑта" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "график на потребителÑката репутациÑ" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "любими" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "абонамент" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "абонаменти" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "Ðовите наÑтройки на извеÑтиÑта Ñа вече запазени" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "наÑтройки" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "за да качвате Ñнимки Ви Ñ‚Ñ€Ñбват поне 60 точки" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -#, fuzzy -msgid "validate your email" -msgstr "How to validate email and why?" - -#: forum/views/writers.py:129 -#, fuzzy -msgid "Converted to question" -msgstr "ÑпиÑък на вÑички въпроÑи" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -#, fuzzy -msgid "Minimum reputation to not have your posts checked" -msgstr "user karma" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "СъжалÑваме, но Akismet ÑмÑта, че Ð’Ð°ÑˆÐ¸Ñ %s е Ñпам." - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" -"\n" -"СъжалÑваме, но Akismet ÑмÑта, че %(action_name)s е Ñпам.<br />\n" -"Ðко ÑмÑтате, че това е грешка, Ñвържете Ñе Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратор.\n" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "Зададе Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ñ Ð¿Ð¾Ð½Ðµ %s преглежданиÑ" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "ПопулÑрен ВъпроÑ" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "ИзвеÑтен ВъпроÑ" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "ПопулÑрен ВъпроÑ" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "Ð’ÑŠÐ¿Ñ€Ð¾Ñ ÑƒÐ´Ð¾Ð±Ñ€ÐµÐ½ %s пъти" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "Хубав ВъпроÑ" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "Добър ВъпроÑ" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "Страхотен ВъпроÑ" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "Отговор одобрен %s пъти" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "Хубав Отговор" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "Добър Отговор" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "Страхотен Отговор" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "Ð’ÑŠÐ¿Ñ€Ð¾Ñ Ð´Ð¾Ð±Ð°Ð²ÐµÐ½ в любими от %s потребителÑ" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "Любим ВъпроÑ" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "Звезден ВъпроÑ" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "ДиÑциплиниран" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "Изтри ÑобÑтвена Ð¿ÑƒÐ±Ð»Ð¸ÐºÐ°Ñ†Ð¸Ñ Ñ Ñ€ÐµÐ¹Ñ‚Ð¸Ð½Ð³ %s или повече" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "ÐатиÑк" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "Изтри ÑобÑтвена Ð¿ÑƒÐ±Ð»Ð¸ÐºÐ°Ñ†Ð¸Ñ Ñ Ñ€ÐµÐ¹Ñ‚Ð¸Ð½Ð³ %s или по-малко" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "Критичен" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "Първи отрицателен вот" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "ПодкрепÑщ" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "Първи положителен вот" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "ГражданÑки Патрул" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "Първа маркирана публикациÑ" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "Организатор" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "Първи ретаг" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "Редактор" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "Първа редакциÑ" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "Учен" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "Първи приет отговор на Ð’Ð°ÑˆÐ¸Ñ ÑобÑтвен въпроÑ" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "ПочиÑтване" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "Първо почиÑтване" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "ÐвтобиографиÑÑ‚" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "Попълнил е вÑички полета на потребителÑÐºÐ¸Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "ГражданÑки Дълг" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "ГлаÑувал %s пъти" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "Учена глава" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "ОÑтават %s коментара" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "Самоучка" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "Отговорил на ÑобÑÑ‚Ð²ÐµÐ½Ð¸Ñ Ñи Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ñ Ð¿Ð¾Ð½Ðµ %s положителни глаÑа" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "БÑл & Пухкав" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "Редактира %s елемента" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "Студент" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "Зададе Ð¿ÑŠÑ€Ð²Ð¸Ñ Ñи Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ñ Ð¿Ð¾Ð½Ðµ един положителен вот" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "Учител" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "Отговори първи на Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ñ Ð¿Ð¾Ð½Ðµ едно удобрение." - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "ПроÑветен" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "ÐŸÑŠÑ€Ð²Ð¸Ñ Ð¾Ñ‚Ð³Ð¾Ð²Ð¾Ñ€ е бил приет Ñ Ð¿Ð¾Ð½Ðµ %s глаÑа" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "Гуру" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "Приет отговор и удобрен поне %s пъти" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "МагьоÑник" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" -"Отговори на Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ð½Ð° поне %(dif_days)s Ñ Ð½Ðµ по-малко от %(up_votes)s глаÑа" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "ТакÑономиÑÑ‚" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "Създаде таг използван от %s въпроÑа" - -#: forum_modules/default_badges/badges.py:326 -#, fuzzy -msgid "Validated Email" -msgstr "How to validate email and why?" - -#: forum_modules/default_badges/badges.py:327 -#, fuzzy -msgid "User who has validated email associated to the account" -msgstr "Променете OpenID Ñвързан Ñ Ð’Ð°ÑˆÐ¸Ñ Ð°ÐºÐ°ÑƒÐ½Ñ‚" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -#, fuzzy -msgid "Nice Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -#, fuzzy -msgid "Good Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -#, fuzzy -msgid "Great Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -#, fuzzy -msgid "Starting" -msgstr "интереÑно" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "Ðаправено" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "Елементи" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "ДейÑтвиÑ" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "Ðагради" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -#, fuzzy -msgid "tar.gz" -msgstr "тагове" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -#, fuzzy -msgid "download/" -msgstr "отхвърлен" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -#, fuzzy -msgid "Skipped" -msgstr "обратно на началната Ñтраница" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "Въведете потребителÑко име и парола" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "или изберете външен доÑтавчик" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "Име за вход" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "Парола" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "Създаване на нов акаунт" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "Забравена парола?" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "Грешка, Auth Token не е на Ñървъра" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "Ðещо Ñе обърка! Auth Ñимволите не Ñъвпадат" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "За Ñъжаление Ð²Ð°ÑˆÐ¸Ñ Ð²Ñ…Ð¾Ð´ не е валиден OpenID" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "УдоÑтоверÑването Ñ OpenID беше отменено" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "УдоÑтоверÑването Ñ OpenID Ñе провали:" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, fuzzy, python-format -msgid "user-%(id)s" -msgstr "потребители" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "Updater Settings" -msgstr "ПотребителÑки наÑтройки" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "OSQA Update Checker Settings." -msgstr "Опции за оторизиране" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -#, fuzzy -msgid "updater/" -msgstr "обнови" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -#, fuzzy -msgid "updater" -msgstr "обнови" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -#, fuzzy -msgid "Update Checker" -msgstr "Обнови" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" - -#~ msgid "Change email " -#~ msgstr "ПромÑна на имейла " - -#~ msgid "Add or update the email address associated with your account." -#~ msgstr "Добавете или променете имейла аÑоцииран Ñ Ð’Ð°ÑˆÐ¸Ñ Ð°ÐºÐ°ÑƒÐ½Ñ‚." - -#~ msgid "Change OpenID" -#~ msgstr "Промени OpenID" - -#~ msgid "Delete account" -#~ msgstr "Изтрий профила" - -#~ msgid "Erase your username and all your data from website" -#~ msgstr "Изтрий Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ð¸ цÑлата Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ñ‚ Ñайта" - -#~ msgid "You can answer anonymously and then login." -#~ msgstr "" -#~ "<span class='strong big'>Започнете да добавÑте анонимно</span> - Ð’Ð°ÑˆÐ¸Ñ " -#~ "отговор ще бъда запазен в ÑеÑиÑта докато влезнете или Ñи направите " -#~ "акаунт. ÐœÐ¾Ð»Ñ Ð¸Ð·Ð¿Ð¾Ð»Ð·Ð²Ð°Ð¹Ñ‚Ðµ <strong>неутрални отговори</strong>, за " -#~ "диÑкуÑиÑ, <strong>използвайте Ñамо коментарите</strong> и <strong>молÑ, " -#~ "глаÑувайте</strong> (Ñлед като Ñе оторизирате)!" - -#~ msgid "Answer your own question only to give an answer." -#~ msgstr "" -#~ "<span class='big strong'>Вие можете да отговорите на Ð’Ð°ÑˆÐ¸Ñ Ð²ÑŠÐ¿Ñ€Ð¾Ñ</span>, " -#~ "но Ñе уверете че предоÑтавÑте <strong>отговор</strong>. Запомнете, че " -#~ "винаги можете <strong>да промените Ð¿ÑŠÑ€Ð²Ð¾Ð½Ð°Ñ‡Ð°Ð»Ð½Ð¸Ñ Ð²ÑŠÐ¿Ñ€Ð¾Ñ</strong>. ÐœÐ¾Ð»Ñ " -#~ "<strong>използвайте коментари за диÑкутиране</strong> и <strong>не " -#~ "забравÑйте да глаÑувате</strong> за отговорите, които хареÑвате (или не " -#~ "хареÑвате)" - -#~ msgid "Please only give an answer, no discussions." -#~ msgstr "" -#~ "<span class='big strong'>Отговора Ñ‚Ñ€Ñбва да Ñъдържа Ñамо ÑъщеÑтвена " -#~ "информациÑ</span>. Ðко иÑкате да коментирате, проÑто <strong>използвайте " -#~ "опциÑта за коментиране</strong>. Запомнете, че винаги можете да " -#~ "<strong>промените Вашите отговори</strong> - не е нужно да отговарÑте на " -#~ "Ñъщите въпроÑи два пъти. Защо така <strong>не забравÑйте да глаÑувате</" -#~ "strong> - наиÑтина помага да бъдат избрани най-добрите въпроÑи и отговори!" - -#~ msgid "Existing account" -#~ msgstr "СъщеÑтвуващ акаунт" - -#~ msgid "user name" -#~ msgstr "потребителÑко име" - -#~ msgid "password" -#~ msgstr "парола" - -#~ msgid "Register" -#~ msgstr "РегиÑтрациÑ" - -#~ msgid "Sorry, your Facebook session has expired, please try again" -#~ msgstr "СъжалÑваме, но Facebook ÑеÑиÑта е изтекла." - -#~ msgid "" -#~ "The authentication with Facebook connect failed, cannot find " -#~ "authentication tokens" -#~ msgstr "" -#~ "ОторизациÑта през Facebook не беше уÑпешна, не може да намери ключовете." - -#~ msgid "okay, let's try!" -#~ msgstr "добре, ще опитам" - -#~ msgid "no OSQA community email please, thanks" -#~ msgstr "не иÑкам имейли от Zapprotect" - -#~ msgid "please choose one of the options above" -#~ msgstr "изберете нÑÐºÐ¾Ñ Ð¾Ñ‚ Ñледните опции" - -#~ msgid "" -#~ "\n" -#~ " ask a question relevant to the %(app_title)s community \n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "задайте Ð²ÑŠÐ¿Ñ€Ð¾Ñ Ð¾Ñ‚Ð½Ð°ÑÑщ Ñе към %(app_title)s" - -#~ msgid "please try provide enough details" -#~ msgstr "уверете Ñе, че уточнÑвате вÑички аÑпекти" - -#~ msgid "" -#~ "Please create your screen name and save your email address. Saved email " -#~ "address will let you subscribe for the updates on the most interesting " -#~ "questions and will be used to create and retrieve your unique avatar " -#~ "image. " -#~ msgstr "" -#~ "Създайте Вашето публично име и запазете имейла Ñи. Запазените имейл " -#~ "адреÑи ще можете да използвате за да Ñе абонирате за извеÑÑ‚Ð¸Ñ Ð·Ð° най-" -#~ "интереÑните въпроÑи." - -#~ msgid "receive updates motivational blurb" -#~ msgstr "" -#~ "<strong>Получавайте ъпдейти по имейл</strong> - това ще помогне на нашата " -#~ "общноÑÑ‚ да помогне и да Ñтане по-ползотворна.<br/>По подразбиране, Ñе " -#~ "изпраща Ñамо един имейл на Ñедмица Ñ Ñ†Ñлата най-важна информациÑ.<br/>Ðко " -#~ "желаете, можете да промените тази Ð¾Ð¿Ñ†Ð¸Ñ Ñега или по вÑÑко едно време през " -#~ "наÑтройките на Ð’Ð°ÑˆÐ¸Ñ Ð°ÐºÐ°ÑƒÐ½Ñ‚." - -#~ msgid "please select one of the options above" -#~ msgstr "изберете една от поÑочените опции" - -#~ msgid "Tag filter tool will be your right panel, once you log in." -#~ msgstr "" -#~ "ИнÑтромент за филтриране на тагове, намира Ñе отдÑÑно Ñлед оторизациÑ." - -#~ msgid "Questions I ask" -#~ msgstr "Tags" - -#~ msgid "Questions I answer" -#~ msgstr "answer" - -#~ msgid "Questions I comment" -#~ msgstr "question comment" - -#~ msgid "karma history" -#~ msgstr "karma history" - -#~ msgid "Application" -#~ msgstr "Приложение" - -#~ msgid "Progress" -#~ msgstr "ПрогреÑ" - -#~ msgid "Messages" -#~ msgstr "СъобщениÑ" - -#~ msgid "Translated" -#~ msgstr "Преведено" - -#~ msgid "File" -#~ msgstr "Файл" - -#~ msgid "duplicate question" -#~ msgstr "повтарÑщ Ñе въпроÑ" - -#~ msgid "question is off-topic or not relevant" -#~ msgstr "въпроÑа е извън темата или е нерелевантен" - -#~ msgid "too subjective and argumentative" -#~ msgstr "прекалено Ñубективен и Ñпорен" - -#~ msgid "received award" -#~ msgstr "получена награда" - -#~ msgid "marked best answer" -#~ msgstr "маркиран за най-добър отговор" - -#~ msgid "upvote canceled" -#~ msgstr "поддръжката е отменена" - -#~ msgid "downvote canceled" -#~ msgstr "отхвърлÑнето е отменено" - -#~ msgid "deleted answer" -#~ msgstr "изтрит отговор" - -#~ msgid "marked offensive" -#~ msgstr "маркирано за обидно" - -#~ msgid "updated tags" -#~ msgstr "обновени тагове" - -#~ msgid "selected favorite" -#~ msgstr "избрано за любимо" - -#~ msgid "email update sent to user" -#~ msgstr "изпратено е имейл извеÑÑ‚Ñване до потребителÑ" - -#~ msgid "question_answered" -#~ msgstr "отговор" - -#~ msgid "answer_accepted" -#~ msgstr "приет отговор" - -#~ msgid "initial version" -#~ msgstr "първоначална верÑиÑ" - -#~ msgid "Weekly" -#~ msgstr "Седмично" - -#~ msgid "please use 5 tags or less" -#~ msgstr "молÑ, използвайте до 5 тага" - -#~ msgid "tags must be shorter than 20 characters" -#~ msgstr "таговете Ñ‚Ñ€Ñбва да Ñа по-кратки от 20 Ñимвола" - -#~ msgid "Automatically accept user's contributions for the email updates" -#~ msgstr "Ðвтоматично приемай потребителÑките добавÑÐ½Ð¸Ñ Ð·Ð° имейл ъпдейтите" - -#~ msgid "marked an answer" -#~ msgstr "маркирано като прочетено" - -#~ msgid "edited an answer" -#~ msgstr "най-Ñтарите" - -#~ msgid "received badge" -#~ msgstr "получена точка" - -#~ msgid "" -#~ "the page you tried to visit is protected or you don't have sufficient " -#~ "points, see" -#~ msgstr "" -#~ "Ñтраницата е защитена или нÑмате подходÑщите права за да Ñ Ð¿Ñ€ÐµÐ³Ð»ÐµÐ¶Ð´Ð°Ñ‚Ðµ" - -#~ msgid "this answer has been accepted to be correct" -#~ msgstr "този въпроÑ" - -#~ msgid "login to post question info" -#~ msgstr "" -#~ "<span class=\"strong big\">Вие Ñте Ñвободни да задавате Вашите въпроÑи " -#~ "анонимно</span>. Когато изберете да изпратите публикациÑта, Ñ‚Ñ Ñ‰Ðµ бъде " -#~ "запазена в ÑеÑиÑта и Ñлед като Ñе оторизирате ще можете да продължите " -#~ "добавÑнето. ПроцеÑа на региÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ð¸ оторизиране е много проÑÑ‚. Отнема по-" -#~ "малко от минута." - -#~ msgid "" -#~ "must have valid %(email)s to post, \n" -#~ " see %(email_validation_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<span class='strong big'>Изглежда, че имейла Ви, %(email)s не е бил " -#~ "потвърден.</span> За да добавÑте информациÑ, Ñ‚Ñ€Ñбва да потвърдите имейла " -#~ "Ñи, можете да намерите повече Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð½Ð° <a " -#~ "href='%(email_validation_faq_url)s'>Ñтраницата за потвърждение на имейла</" -#~ "a>.<br>Можете да изпратите Ñъобщението Ñи и да потвърдите имейла Ñлед " -#~ "това, но Ñъобщението нÑма да бъде визуализирано. " - -#~ msgid "" -#~ "Before asking the question - please make sure to use search to see " -#~ "whether your question has alredy been answered." -#~ msgstr "" -#~ "Before you ask - please make sure to search for a similar question. You " -#~ "can search questions by their title or tags." - -#~ msgid "What questions should I avoid asking?" -#~ msgstr "What kinds of questions should be avoided?" - -#~ msgid "" -#~ "is a Q&A site, not a discussion group. Therefore - please avoid having " -#~ "discussions in your answers, comment facility allows some space for brief " -#~ "discussions." -#~ msgstr "" -#~ "is a <strong>question and answer</strong> site - <strong>it is not a " -#~ "discussion group</strong>. Please avoid holding debates in your answers " -#~ "as they tend to dilute the essense of questions and answers. For the " -#~ "brief discussions please use commenting facility." - -#~ msgid "" -#~ "The reputation system allows users earn the authorization to perform a " -#~ "variety of moderation tasks." -#~ msgstr "" -#~ "Karma system allows users to earn rights to perform a variety of " -#~ "moderation tasks" - -#~ msgid "How does reputation system work?" -#~ msgstr "How does karma system work?" - -#~ msgid "Rep system summary" -#~ msgstr "" -#~ "When a question or answer is upvoted, the user who posted them will gain " -#~ "some points, which are called \"karma points\". These points serve as a " -#~ "rough measure of the community trust to him/her. Various moderation tasks " -#~ "are gradually assigned to the users based on those points." - -#~ msgid "use tags" -#~ msgstr "използвай тагове" - -#~ msgid "" -#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)" -#~ "s" -#~ msgstr "" -#~ "<form style='margin:0;padding:0;' action='%(send_email_key_url)" -#~ "s'><p><span class=\"bigger strong\">How?</span> If you have just set or " -#~ "changed your email address - <strong>check your email and click the " -#~ "included link</strong>.<br>The link contains a key generated specifically " -#~ "for you. You can also <button style='display:inline' " -#~ "type='submit'><strong>get a new key</strong></button> and check your " -#~ "email again.</p></form><span class=\"bigger strong\">Why?</span> Email " -#~ "validation is required to make sure that <strong>only you can post " -#~ "messages</strong> on your behalf and to <strong>minimize spam</strong> " -#~ "posts.<br>With email you can <strong>subscribe for updates</strong> on " -#~ "the most interesting questions. Also, when you sign up for the first time " -#~ "- create a unique <a href='%(gravatar_faq_url)s'><strong>gravatar</" -#~ "strong></a> personal image.</p>" - -#~ msgid "" -#~ "Please ask your question at %(ask_question_url)s, help make our community " -#~ "better!" -#~ msgstr "" -#~ "Please <a href='%(ask_question_url)s'>ask</a> your question, help make " -#~ "our community better!" - -#~ msgid "give feedback" -#~ msgstr "оÑтави отзив" - -#~ msgid "close date %(closed_at)s" -#~ msgstr "дата на затварÑне %(closed_at)s" - -#~ msgid "question tips" -#~ msgstr "Съвети" - -#~ msgid "up to 5 tags, less than 20 characters each" -#~ msgstr "до 5 тага, Ñ Ð´ÑŠÐ»Ð¶Ð¸Ð½Ð° до 20 Ñимвола вÑеки" - -#~ msgid "all tags - make this empty in english" -#~ msgstr "вÑички тагове" - -#~ msgid "Sorry, looks like we have some errors:" -#~ msgstr "Изглежда е Ñтанала грешка:" - -#~ msgid "Screen name label" -#~ msgstr "" -#~ "<strong>Публично име</strong> (<i>ще бъде показано на оÑтаналите</i>)" - -#~ msgid "Email address label" -#~ msgstr "" -#~ "<strong>Имейл адреÑ</strong> (<i><strong>нÑма<strong> да бъде ÑподелÑно Ñ " -#~ "никой, Ñ‚Ñ€Ñбва да бъде валиден</i>)" - -#~ msgid "To make use of the Forum, please follow the link below:" -#~ msgstr "За да използвате Zapprotect Q&A, използвайте ÑÐ»ÐµÐ´Ð½Ð¸Ñ Ð»Ð¸Ð½Ðº:" - -#~ msgid "" -#~ "Sincerely,<br />\n" -#~ " Forum Administrator" -#~ msgstr "" -#~ "Sincerely,\n" -#~ "Q&A Forum Administrator" - -#~ msgid "Click to sign in through any of these services." -#~ msgstr "" -#~ "<p><span class=\"big strong\">Please select your favorite login method " -#~ "below.</span></p><p><font color=\"gray\">External login services use <a " -#~ "href=\"http://openid.net\"><b>OpenID</b></a> technology, where your " -#~ "password always stays confidential between you and your login provider " -#~ "and you don't have to remember another one. CNPROG option requires your " -#~ "login name and password entered here.</font></p>" - -#~ msgid "Traditional signup info" -#~ msgstr "" -#~ "<span class='strong big'>If you prefer, create your forum login name and " -#~ "password here. However</span>, please keep in mind that we also support " -#~ "<strong>OpenID</strong> login method. With <strong>OpenID</strong> you " -#~ "can simply reuse your external login (e.g. Gmail or AOL) without ever " -#~ "sharing your login details with anyone and having to remember yet another " -#~ "password." - -#~ msgid "On question " -#~ msgstr "Tips" - -#~ msgid "" -#~ "\n" -#~ " %(comment_count)s new comment" -#~ "%(comment_count_pluralize)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(one comment)" - -#~ msgid "" -#~ "\n" -#~ " Posted by %(author_name)s in %(question_time)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" - -#~ msgid "avatar, see %(gravatar_faq_url)s" -#~ msgstr "<a href='%(gravatar_faq_url)s'>gravatar</a>" - -#~ msgid "casted votes" -#~ msgstr "votes" - -#~ msgid "Questions sorted by <strong>number of responses</strong>." -#~ msgstr "Questions sorted by the <strong>number of answers</strong>." - -#~ msgid "profile - user reputation" -#~ msgstr "Profile - User's Karma" - -#~ msgid "profile - subscriptions" -#~ msgstr "Profile - User's Karma" - -#~ msgid "email update message subject" -#~ msgstr "news from Q&A forum" - -#~ msgid "%(name)s, this is an update message header for a question" -#~ msgid_plural "" -#~ "%(name)s, this is an update message header for %(num)d questions" -#~ msgstr[0] "" -#~ "<p>Dear %(name)s,</p></p>The following question has been updated on the " -#~ "Q&A forum:</p>" -#~ msgstr[1] "" -#~ "<p>Dear %(name)s,</p><p>The following %(num)d questions have been updated " -#~ "on the Q&A forum:</p>" - -#~ msgid "" -#~ "go to %(link)s to change frequency of email updates or %(email)s " -#~ "administrator" -#~ msgstr "" -#~ "<p>Please remember that you can always <a href='%(link)s'>adjust</a> " -#~ "frequency of the email updates or turn them off entirely.<br/>If you " -#~ "believe that this message was sent in an error, please email about it the " -#~ "forum administrator at %(email)s.</p><p>Sincerely,</p><p>Your friendly " -#~ "Q&A forum server.</p>" - -#~ msgid "Account: change password" -#~ msgstr "Change your password" - -#~ msgid "list of unanswered questions" -#~ msgstr "unanswered questions" - -#~ msgid "Notify me once a day when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> once a day by email when there are any new " -#~ "answers or updates" - -#~ msgid "Notify me weekly when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> weekly when there are any new answers or " -#~ "updates" - -#~ msgid "" -#~ "\n" -#~ " You can always adjust frequency of email updates from " -#~ "your %(profile_url)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(note: you can always <a href='%(profile_url)s?" -#~ "sort=email_subscriptions'>adjust frequency</a> of email updates)" - -#~ msgid "Most recently answered ones are shown first." -#~ msgstr "<strong>Most recently answered</strong> questions are shown first." - -#~ msgid "change %(email)s info" -#~ msgstr "" -#~ "<span class=\"strong big\">Enter your new email into the box below</span> " -#~ "if you'd like to use another email for <strong>update subscriptions</" -#~ "strong>.<br>Currently you are using <strong>%(email)s</strong>" - -#~ msgid "here is why email is required, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<span class='strong big'>Please enter your email address in the box below." -#~ "</span> Valid email address is required on this Q&A forum. If you " -#~ "like, you can <strong>receive updates</strong> on interesting questions " -#~ "or entire forum via email. Also, your email is used to create a unique <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for your " -#~ "account. Email addresses are never shown or otherwise shared with anybody " -#~ "else." - -#~ msgid "validate %(email)s info or go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">An email with a validation link has been sent " -#~ "to %(email)s.</span> Please <strong>follow the emailed link</strong> with " -#~ "your web browser. Email validation is necessary to help insure the proper " -#~ "use of email on <span class=\"orange\">Q&A</span>. If you would like " -#~ "to use <strong>another email</strong>, please <a href='%(change_email_url)" -#~ "s'><strong>change it again</strong></a>." - -#~ msgid "old %(email)s kept, if you like go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">Your email address %(email)s has not been " -#~ "changed.</span> If you decide to change it later - you can always do it " -#~ "by editing it in your user profile or by using the <a " -#~ "href='%(change_email_url)s'><strong>previous form</strong></a> again." - -#~ msgid "your current %(email)s can be used for this" -#~ msgstr "" -#~ "<span class='big strong'>Your email address is now set to %(email)s.</" -#~ "span> Updates on the questions that you like most will be sent to this " -#~ "address. Email notifications are sent once a day or less frequently - " -#~ "only when there are any news." - -#~ msgid "thanks for verifying email" -#~ msgstr "" -#~ "<span class=\"big strong\">Thank you for verifying your email!</span> Now " -#~ "you can <strong>ask</strong> and <strong>answer</strong> questions. Also " -#~ "if you find a very interesting question you can <strong>subscribe for the " -#~ "updates</strong> - then will be notified about changes <strong>once a " -#~ "day</strong> or less frequently." - -#~ msgid "email key not sent" -#~ msgstr "Validation email not sent" - -#~ msgid "email key not sent %(email)s change email here %(change_link)s" -#~ msgstr "" -#~ "<span class='big strong'>Your current email address %(email)s has been " -#~ "validated before</span> so the new key was not sent. You can <a " -#~ "href='%(change_link)s'>change</a> email used for update subscriptions if " -#~ "necessary." - -#~ msgid "register new %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span> Please create your <strong>screen name</" -#~ "strong> and save your <strong>email</strong> address. Saved email address " -#~ "will let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "" -#~ "%(username)s already exists, choose another name for \n" -#~ " %(provider)s. Email is required too, see " -#~ "%(gravatar_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<p><span class='strong big'>Oops... looks like screen name %(username)s " -#~ "is already used in another account.</span></p><p>Please choose another " -#~ "screen name to use with your %(provider)s login. Also, a valid email " -#~ "address is required on the <span class='orange'>Q&A</span> forum. " -#~ "Your email is used to create a unique <a href='%(gravatar_faq_url)" -#~ "s'><strong>gravatar</strong></a> image for your account. If you like, you " -#~ "can <strong>receive updates</strong> on the interesting questions or " -#~ "entire forum by email. Email addresses are never shown or otherwise " -#~ "shared with anybody else.</p>" - -#~ msgid "" -#~ "register new external %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span></p><p>You can either keep your <strong>screen " -#~ "name</strong> the same as your %(provider)s login name or choose some " -#~ "other nickname.</p><p>Also, please save a valid <strong>email</strong> " -#~ "address. With the email you can <strong>subscribe for the updates</" -#~ "strong> on the most interesting questions. Email address is also used to " -#~ "create and retrieve your unique avatar image - <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" - -#~ msgid "register new Facebook connect account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "Facebook login.</span> Please create your <strong>screen name</strong> " -#~ "and save your <strong>email</strong> address. Saved email address will " -#~ "let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "password recovery information" -#~ msgstr "" -#~ "<span class='big strong'>Forgot you password? No problems - just get a " -#~ "new one!</span><br/>Please follow the following steps:<br/>• submit " -#~ "your user name below and check your email<br/>• <strong>follow the " -#~ "activation link</strong> for the new password - sent to you by email and " -#~ "login with the suggested password<br/>• at this you might want to " -#~ "change your password to something you can remember better" - -#~ msgid "Reset password" -#~ msgstr "Send me a new password" - -#~ msgid "" -#~ "email explanation how to use new %(password)s for %(username)s\n" -#~ "with the %(key_link)s" -#~ msgstr "" -#~ "To change your password, please follow these steps:\n" -#~ "* visit this link: %(key_link)s\n" -#~ "* login with user name %(username)s and password %(password)s\n" -#~ "* go to your user profile and set the password to something you can " -#~ "remember" - -#~ msgid "" -#~ "\n" -#~ " Your answer to %(title)s %(summary)s will be posted once " -#~ "you log in\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<span class=\"strong big\">Your answer to </span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "" -#~ "Your question \n" -#~ " %(title)s %(summary)s will be posted once you log in\n" -#~ " " -#~ msgstr "" -#~ "<span class=\"strong big\">Your question</span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "Enter your <span id=\"enter_your_what\">Provider user name</span>" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your </span><span id=\"enter_your_what\" " -#~ "class='big strong'>Provider user name</span><br/><span class='grey'>(or " -#~ "select another login method above)</span>" - -#~ msgid "" -#~ "Enter your <a class=\"openid_logo\" href=\"http://openid.net\">OpenID</a> " -#~ "web address" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your <a class=\"openid_logo\" href=" -#~ "\"http://openid.net\">OpenID</a> web address</span><br/><span " -#~ "class='grey'>(or choose another login method above)</span>" - -#~ msgid "subscription saved, %(email)s needs validation, see %(details_url)s" -#~ msgstr "" -#~ "Your subscription is saved, but email address %(email)s needs to be " -#~ "validated, please see <a href='%(details_url)s'>more details here</a>" - -#~ msgid "Incorrect username." -#~ msgstr "sorry, there is no such user name" - -#~ msgid "your email needs to be validated see %(details_url)s" -#~ msgstr "" -#~ "Your email needs to be validated. Please see details <a " -#~ "id='validate_email_alert' href='%(details_url)s'>here</a>." - -#~ msgid "Email verification subject line" -#~ msgstr "Verification Email from Q&A forum" - -#~ msgid "first time greeting with %(url)s" -#~ msgstr "Hello and welcome to OSQA - <a href='%(url)s'>please join us</a>!" - -#~ msgid "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgid_plural "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgstr[0] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" -#~ msgstr[1] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>questions</p>" diff --git a/locale/cn/.svn/all-wcprops b/locale/cn/.svn/all-wcprops deleted file mode 100644 index 610d59f676838959f0cc199899fdc3b1f131ac46..0000000000000000000000000000000000000000 --- a/locale/cn/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/cn -END diff --git a/locale/cn/.svn/entries b/locale/cn/.svn/entries deleted file mode 100644 index 74d458e79438c172c0e30ac01b47daa2c0b56353..0000000000000000000000000000000000000000 --- a/locale/cn/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/cn -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/cn/LC_MESSAGES/.svn/all-wcprops b/locale/cn/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 7ce1d911686ca63c5e936ff94075d2b5e7951035..0000000000000000000000000000000000000000 --- a/locale/cn/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/cn/LC_MESSAGES -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/cn/LC_MESSAGES/django.po -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/cn/LC_MESSAGES/django.mo -END diff --git a/locale/cn/LC_MESSAGES/.svn/entries b/locale/cn/LC_MESSAGES/.svn/entries deleted file mode 100644 index 33d9f96e50ef275c1303b7d559457fbd5f03cadb..0000000000000000000000000000000000000000 --- a/locale/cn/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/cn/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.017771Z -b9ac5690798421d40c242da6c4d48a00 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -145359 - -django.po -file - - - - -2012-06-22T20:34:48.001779Z -8dc540bf043227a97f409c2a43b48e00 -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -287187 - diff --git a/locale/cn/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/cn/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/cn/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/cn/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/cn/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 6097661e05f8f0150eddb17c8c847e6c4ca7848f..0000000000000000000000000000000000000000 Binary files a/locale/cn/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/cn/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/cn/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 93131b0f0be9ff56494ad5676f6e525ac1af78d5..0000000000000000000000000000000000000000 --- a/locale/cn/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9089 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: OSQA 完全汉化 1.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:15-0700\n" -"PO-Revision-Date: 2011-09-08 15:07+0800\n" -"Last-Translator: Deng Fei <duke8253@gmail.com>\n" -"Language-Team: Deng Fei <duke8253@gmail.com>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=1\n" -"X-Poedit-Language: Chinese\n" -"X-Poedit-Country: CHINA\n" -"X-Poedit-SourceCharset: utf-8\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "页é¢" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "æ¯é¡µ" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "排åº" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "ç»™%s回ç”çš„" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "ç”±%s回ç”çš„" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "ç”±%(cauthor)s评论的%(pauthor)sçš„%(qora)s" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "回ç”" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "问题" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "常è§é—®é¢˜" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "关于站点" - -#: forum/registry.py:28 -msgid "logout" -msgstr "注销" - -#: forum/registry.py:28 -msgid "login" -msgstr "登录" - -#: forum/registry.py:41 -msgid "administration" -msgstr "管ç†ç«™ç‚¹" - -#: forum/registry.py:54 -msgid "contact" -msgstr "è”系我们" - -#: forum/registry.py:57 -msgid "support" -msgstr "支æŒ" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "éšç§ä¿æŠ¤" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "编辑个人信æ¯" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "验è¯è®¾ç½®" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "邮件通知设置" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "其他设置" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "管ç†å·¥å…·" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "撤销ç¦è¨€" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "ç¦è¨€è¯¥ç”¨æˆ·" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "åŠ /å‡ä¿¡èª‰ç‚¹æ•°" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "移除版主æƒé™" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "赋予版主æƒé™" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "移除超级用户æƒé™" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "赋予超级用户æƒé™" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "nimda/" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "upfiles/" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "faq/" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "常è§é—®é¢˜" - -#: forum/urls.py:46 -msgid "about/" -msgstr "about/" - -#: forum/urls.py:46 -msgid "About" -msgstr "关于站点" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "markdown_help/" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "privacy/" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "logout/" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "answers/" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "edit/" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "revisions/" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "questions/" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "ask/" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "related_questions/" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "unanswered/" - -#: forum/urls.py:62 -msgid "close/" -msgstr "close/" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "reopen/" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "answer/" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "pending-data/" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "vote/" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "like_comment/" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "comment/" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "delete_comment/" - -#: forum/urls.py:71 -msgid "convert_comment/" -msgstr "convert_comment/" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "accept_answer/" - -#: forum/urls.py:73 -msgid "answer_link/" -msgstr "answer_link/" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "mark_favorite/" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "award_points/" - -#: forum/urls.py:75 -msgid "user/" -msgstr "user/" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "flag/" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "delete/" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "subscribe/" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "matching_tags/" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "matching_users/" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "node_markdown/" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "convert/" - -#: forum/urls.py:85 -msgid "convert_to_question/" -msgstr "convert_to_question/" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "wikify/" - -#: forum/urls.py:88 -msgid "question/" -msgstr "question/" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "tags/" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "mark-tag/" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "interesting/" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "ignored/" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "unmark-tag/" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "users/" - -#: forum/urls.py:104 -msgid "award/" -msgstr "award/" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "suspend/" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "powers/" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "subscriptions/" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "preferences/" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "favorites/" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "reputation/" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "votes/" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "recent/" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "badges/" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "upload/" - -#: forum/urls.py:119 -msgid "search/" -msgstr "search/" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "contact/" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "account/" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "signin/" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "signout/" - -#: forum/urls.py:127 -msgid "done/" -msgstr "done/" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "register/" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "validate/" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "tempsignin/" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "authsettings/" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "providers/" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "remove/" - -#: forum/urls.py:134 -msgid "add/" -msgstr "add/" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "send-validation/" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "admin/" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "switch_interface/" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "statistics/" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "denormalize/" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "go_bootstrap/" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "go_defaults/" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "settings/" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "maintenance/" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "flagged_posts/" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "static_pages/" - -#: forum/urls.py:149 -msgid "new/" -msgstr "new/" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "tools/" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "test_email_settings/" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "%(user)s%(vote_desc)s%(post_desc)s" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "投票支æŒ" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "投票å对" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "喜欢" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "æ²¡æœ‰åŽŸå› " - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "%(user)s举报了%(post_desc)s:%(reason)s" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "ä½ " - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "ä»–" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "%(user)s采纳了%(answerer)s回ç”çš„%(asker)sçš„%(question)s" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "%(user)s收è—了%(post_desc)s" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "%(user)såˆ é™¤äº†%(post_desc)s" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "被多个用户举报:" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "åˆæ¬¡ä¿®è®¢" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "æ问了" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "%(user)sæ问了%(question)s" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "已回ç”" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "%(user)s回ç”了%(asker)sçš„%(question)s" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "已评论" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "%(user)s评论了%(post_desc)s" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "已编辑" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "%(user)s编辑了%(post_desc)s" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "å·²é‡æ–°æ ‡ç¾" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "é‡æ–°æ ‡ç¾" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "%(user)så·²é‡æ–°æ ‡ç¾%(post_desc)s" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "已还原" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" -"%(user)så°†%(post_desc)s从版本å·%(initial)d(%(initial_sum)s)还原到版本" -"å·%(final)d(%(final_sum)s)" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "已关é—" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "%(user)så…³é—了%(post_desc)s:%(reason)s" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "已转æ¢" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "%(user)så°†%(question)s的一个回ç”转æ¢ä¸ºè¯„论" - -#: forum/actions/node.py:201 -#, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "%(user)så°†%(question)s的一个评论转æ¢ä¸ºå›žç”" - -#: forum/actions/node.py:225 -#, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "%(user)så°†%(question)s的一个评论转æ¢ä¸ºä¸€ä¸ªæ–°é—®é¢˜" - -#: forum/actions/node.py:231 -msgid "converted to question" -msgstr "转æ¢ä¸ºé—®é¢˜" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "%(user)så°†%(question)s的一个回ç”转æ¢ä¸ºä¸€ä¸ªæ–°é—®é¢˜" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "å·²æ ‡è®°ä¸ºç¤¾åŒºç»´åŸº" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "%(user)så°†%(node)sæ ‡è®°ä¸ºç¤¾åŒºç»´åŸº" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "已创建" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "%(user)såˆ›å»ºäº†ä¸€ä¸ªæ ‡é¢˜ä¸º%(page)s的页é¢" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "%(user)sç¼–è¾‘äº†ä¸€ä¸ªæ ‡é¢˜ä¸º%(page)s的页é¢" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "å·²å‘布" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "%(user)så‘å¸ƒäº†ä¸€ä¸ªæ ‡é¢˜ä¸º%(page)s的页é¢" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "å·²åŠ å…¥" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "%(user)s%(have_has)såŠ å…¥äº†%(app_name)sé—®ç”社区" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "å·²ç»" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "å·²ç»" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "已登录" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "%(user)s%(have_has)s登录" - -#: forum/actions/user.py:36 -msgid "validated e-mail" -msgstr "已验è¯çš„邮箱" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "%(user)s%(have_has)s验è¯äº†é‚®ç®±%(email)s" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "已编辑的个人信æ¯" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "%(user)s编辑了%(hes_or_your)s%(profile_link)s" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "个人信æ¯" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "给予奖励" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "æå–œï¼Œä½ è¢«å¥–åŠ±äº†%s点信誉。" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "谢谢" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "ç”±äºŽè¢«å¤„ç½šï¼Œä½ æŸå¤±äº†%s点信誉。" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "未知" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "%(user)s奖励了%(users)s%(value)s点信誉:%(message)s" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "%(user)s扣除了%(users)s%(value)s点信誉:%(message)s" - -#: forum/actions/user.py:101 -msgid "gave reputation points" -msgstr "给予信誉点数" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" -"æ喜,由于<a href=\"%(answer_url)s\">这个回ç”</a>ï¼Œä½ èŽ·å¾—äº†%(points)s点信" -"誉%(points_label)s。" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "点数" -msgstr[1] "点数" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "%(user)s奖励了%(users)s%(value)s点信誉" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "%(user)s扣除了%(users)s%(value)s点信誉" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "被授予" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" -"æå–œï¼Œä½ èŽ·å¾—äº†ä¸€ä¸ªå‹‹ç« \"%(badge_name)s\"。请查看<a href=\"%(profile_url)s\">" -"ä½ çš„ä¸ªäººä¿¡æ¯</a>。" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "%(user)s%(were_was)s授予了\"%(badge_name)s\"å‹‹ç« " - -#: forum/actions/user.py:190 -msgid "were" -msgstr "被" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "被" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "å·²ç¦è¨€" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "ä½ çš„ç¦è¨€å·²è¢«è§£é™¤ã€‚" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "%s天" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "永久" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "%(user)sç¦è¨€äº†%(users)s%(suspension)s:%(msg)s" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "ä¸è‰¯è¡Œä¸º" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "请至少输入一个IP地å€" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "错误的IP地å€ï¼š%s" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "请使用点分å进制æ¥è¡¨ç¤ºIP地å€" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "å…许访问IP" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "一个以英文逗å·åˆ†å‰²çš„IP地å€åˆ—表,这些IP地å€å¯ä»¥åœ¨ç«™ç‚¹ç»´æŠ¤æ—¶è¿›è¡Œè®¿é—®ã€‚" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "ä¿¡æ¯" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "当站点处于维护状æ€æ—¶æ˜¾ç¤ºç»™ç”¨æˆ·çš„ä¿¡æ¯ã€‚" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "默认" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "默认带有边æ " - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "æ— " - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "Markdown" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "HTML" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "Escaped" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "æ ‡é¢˜" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "页é¢åœ°å€" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "页é¢å†…容" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "Mime类型" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "编译模å¼" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "模版" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "è¾¹æ 内容" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "è¾¹æ ä½¿ç”¨æ ·å¼" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "è¾¹æ 编译模å¼" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "å…许评论" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "å‘é€éªŒè¯é‚®ä»¶" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "邮件地å€" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "ä½ çš„é‚®ä»¶åœ°å€" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "这个å—段是必填项" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "请输入一个æ£ç¡®çš„邮件地å€" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "抱æ‰ï¼Œè¿™ä¸ªé‚®ä»¶åœ°å€ä¸åœ¨æˆ‘们的数æ®åº“ä¸ã€‚" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "当å‰å¯†ç " - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "旧密ç 输入错误。 请输入æ£ç¡®çš„密ç 。" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "这个å—段是必填项" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "用户å" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "请输入用户å" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "抱æ‰ï¼Œè¯¥ç”¨æˆ·å已被注册,请更æ¢ä¸€ä¸ª" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "抱æ‰ï¼Œè¯¥ç”¨æˆ·åä¸å…许使用,请更æ¢ä¸€ä¸ª" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "抱æ‰ï¼Œæ²¡æœ‰è¯¥ç”¨æˆ·" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "抱æ‰ï¼Œå‡ºçŽ°ä¸¥é‡é”™è¯¯ï¼Œç”¨æˆ·å被é‡å¤æ³¨å†Œ" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "用户ååªèƒ½å«æœ‰ä¸è‹±æ–‡å—ç¬¦ï¼Œç©ºæ ¼ï¼ŒçŸæ¨ªçº¿ä»¥åŠä¸‹åˆ’线" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "用户å过çŸï¼Œè¯·è‡³å°‘输入%d个å—" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "邮件地å€" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "请输入邮件地å€" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "抱æ‰ï¼Œè¯¥é‚®ä»¶åœ°å€å·²è¢«æ³¨å†Œï¼Œè¯·æ›´æ¢ä¸€ä¸ª" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "密ç " - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "请输入密ç " - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "é‡å¤å¯†ç " - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "请å†è¾“入一次密ç " - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "抱æ‰ï¼Œè¾“入的密ç ä¸åŒ¹é…,请é‡æ–°è¾“å…¥" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "æ ‡é¢˜" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "请输入一个能æè¿°ä½ é—®é¢˜çš„æ ‡é¢˜" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "æ ‡é¢˜å¿…é¡»è‡³å°‘å«æœ‰%s个å—" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "内容" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "问题内容必须至少å«æœ‰%s个å—" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "回ç”内容必须至少å«æœ‰%s个å—" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "æ ‡ç¾" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" -"æ ‡ç¾æ˜¯ä¸€ç§ç®€çŸçš„关键å—,其ä¸ä¸å…è®¸å‡ºçŽ°ç©ºæ ¼ã€‚æ ‡ç¾çš„æ•°é‡æœ€å°‘为%(min)s个,最多" -"为%(max)s个。" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "æ ‡ç¾æ•°å¿…须大于%(min)s且å°äºŽ%(max)s" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "æ ‡ç¾å—数必须大于%(min)s且å°äºŽ%(max)s" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "æ ‡ç¾ä¸åªèƒ½å«æœ‰ä»¥ä¸‹å—符:ä¸è‹±æ–‡å—符,数å—以åŠä»¥ä¸‹ç¬¦å·\".#-_\"" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "ä½ æ²¡æœ‰è¶³å¤Ÿçš„ä¿¡èª‰ç‚¹æ•°æ¥åˆ›å»ºæ–°çš„æ ‡ç¾ã€‚ä»¥ä¸‹æ ‡ç¾ä¸Šä¸å˜åœ¨ï¼š%s" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "社区维基" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" -"å¦‚æžœä½ é€‰æ‹©äº†ç¤¾åŒºç»´åŸºé€‰é¡¹ï¼Œæ问和回ç”å°†ä¸ä¼šèŽ·å¾—信誉点数且作者å称将ä¸ä¼šæ˜¾ç¤º" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "更新记录:" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "è¾“å…¥ä½ çš„ä¿®è®¢çš„ç®€ä»‹ï¼ˆå¦‚å›ºå®šçš„æ‹¼å†™ï¼Œè¯æ³•ï¼Œæ”¹è¿›ä½œé£Žï¼Œæ¤å—段是å¯é€‰é¡¹ï¼‰" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "ä½ çš„ä¿¡æ¯:" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "ä½ çš„å§“å:" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "邮件地å€ï¼ˆä»…自己å¯è§ï¼‰ï¼š" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "该邮件地å€æ²¡æœ‰å…³è”任何个性头åƒ" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "真实姓å" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "个人主页" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "æ¥è‡ªå“ªé‡Œ" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "出生日期" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "ä¸ä¼šæ˜¾ç¤ºï¼Œåªç”¨æ¥è®¡ç®—å¹´é¾„ï¼Œæ ¼å¼ï¼šYYYY-MM-DD" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "个人信æ¯" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "显示昵称" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "该邮件地å€å·²è¢«æ³¨å†Œï¼Œè¯·æ›´æ¢ã€‚" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "ç«‹å³é€šçŸ¥" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "ä¸é€šçŸ¥" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" -"\n" -" 社区的邮件设置还没有完æˆã€‚æˆ‘ä»¬å¼ºçƒˆå»ºè®®ä½ \n" -" 尽快å‰å¾€<a href=\"%(email_settings_url)s\">邮件设置</a>页" -"é¢ã€‚\n" -" " - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" -"\n" -" 请到设置文件ä¸å¡«å†™ä½ 的网站域å。\n" -" " - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "第一次æ¥è¿™é‡Œï¼Ÿè¯·æŸ¥çœ‹<a href=\"%s\">常è§é—®é¢˜</a>ï¼" - -#: forum/models/action.py:216 -msgid "You" -msgstr "ä½ " - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "%(link)s" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "%(user)s%(node_name)s%(node_desc)s" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "评论" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "未知" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "æ— å¯ç”¨ç®€ä»‹" - -#: forum/models/node.py:250 -msgid "post" -msgstr "å‘表" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "[未å‘布]%s" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "[å·²åˆ é™¤]" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "[已关é—]" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "感兴趣" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "已忽略" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "æ问者" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "回ç”者" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "订阅者" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "å‹‹ç« è®¾ç½®" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "è®¾ç½®ç«™ç‚¹çš„å‹‹ç« " - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "回ç”采纳" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "调整在采纳回ç”时的一些设置" - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "ä¸å…许回ç”被采纳" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" -"ç¦ç”¨é‡‡çº³å›žç”功能。如果将æ¥é‡æ–°å¯ç”¨ï¼Œç›®å‰å·²è¢«é‡‡çº³çš„回ç”å°†ä»ç„¶è¢«æ ‡è®°ä¸ºå·²é‡‡çº³ã€‚" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "æ¯ä¸ªé—®é¢˜æœ€å¤šå¯ä»¥é‡‡çº³çš„回ç”æ•°" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "æ¯ä¸ªé—®é¢˜è¢«å…许采纳的最大回ç”数。输入0代表没有é™åˆ¶ã€‚" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "æ¯ä¸ªç”¨æˆ·åœ¨å•ä¸€é—®é¢˜æœ€å¤šå¯ä»¥è¢«é‡‡çº³çš„回ç”æ•°" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" -"如果å•ä¸€é—®é¢˜å¯ä»¥é‡‡çº³å¤šä¸ªå›žç”,则本选项将é™åˆ¶æ¯ä¸ªç”¨æˆ·åœ¨å•ä¸€é—®é¢˜ä¸å¯ä»¥è¢«é‡‡çº³çš„" -"回ç”数。" - -#: forum/settings/accept.py:21 -msgid "Users an accept own answer" -msgstr "采纳自己的回ç”" - -#: forum/settings/accept.py:22 -#, fuzzy -msgid "Are normal users allowed to accept their own answers.." -msgstr "普通用户是å¦å¯ä»¥ä¸ºè‡ªå·±çš„问题采纳自己的回ç”。" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "基本设置" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "ä½ ç«™ç‚¹çš„åŸºæœ¬è®¾ç½®" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "ç«™ç‚¹å›¾æ ‡" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "ç«™ç‚¹çš„å›¾æ ‡ã€‚" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "收è—å¤¹å›¾æ ‡" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "站点的收è—å¤¹å›¾æ ‡ã€‚" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "ç«™ç‚¹æ ‡é¢˜" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "显示在æµè§ˆå™¨æ ‡é¢˜æ ä¸Šçš„ç«™ç‚¹æ ‡é¢˜ã€‚" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "站点çŸå称" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "站点关键è¯" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "在HTMLçš„metaæ ‡ç¾ä¸å¯ç”¨çš„meta关键è¯ã€‚" - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "站点æè¿°" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "站点的æè¿°ä¿¡æ¯ã€‚" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "版æƒå£°æ˜Ž" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "版æƒå£°æ˜Žæ˜¯å¦åœ¨é¡µè„šæ˜¾ç¤ºã€‚" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "支æŒåœ°å€" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" -"æ供给用户æ¥èŽ·å¾—支æŒçš„æ–¹å¼ã€‚å¯ä»¥æ˜¯http也å¯ä»¥æ˜¯mailtoæˆ–ä»»ä½•ä½ å¸Œæœ›çš„æ ¼å¼ã€‚" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "è”系地å€" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "æ供给用户æ¥è”ç³»ä½ çš„æ–¹å¼ã€‚å¯ä»¥æ˜¯http也å¯ä»¥æ˜¯mailtoæˆ–ä»»ä½•ä½ å¸Œæœ›çš„æ ¼å¼ã€‚" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "邮件设置" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "邮件æœåŠ¡å™¨ä»¥åŠå…¶ä»–邮件相关设置" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "邮件设置测试" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "测试当å‰çš„邮件设置。" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "邮件æœåŠ¡å™¨" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "站点将通过该SMTPæœåŠ¡å™¨å‘é€é‚®ä»¶ã€‚" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "邮件端å£" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "SMTPæœåŠ¡å™¨çš„端å£ï¼Œé€šå¸¸ä¸º25。" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "邮件用户" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "登录SMTPæœåŠ¡å™¨çš„用户å。" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "邮件密ç " - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "登录SMTPæœåŠ¡å™¨çš„密ç 。" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "使用TLS" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "是å¦åœ¨SMTPæœåŠ¡å™¨ä¸Šä½¿ç”¨TLS验è¯ã€‚" - -#: forum/settings/email.py:42 -msgid "Site 'from' Email Address" -msgstr "站点'å‘é€è‡ª'邮件地å€" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "由站点å‘é€çš„邮件的'å‘é€è‡ª'å—段内容。" - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "站点'å‘é€è‡ª'邮件地å€" - -#: forum/settings/email.py:48 -#, fuzzy -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "由站点å‘é€çš„邮件的'å‘é€è‡ª'å—段内容。" - -#: forum/settings/email.py:52 -msgid "Email Subject Prefix" -msgstr "邮件主题å‰ç¼€" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" -"æ¯ä¸€å°ä»Žä½ 站点å‘é€å‡ºçš„邮件主题都会带有这个å‰ç¼€ã€‚通常æ¥è¯´ä½¿ç”¨å‰ç¼€å¯ä»¥å¾ˆæ–¹ä¾¿çš„" -"æ˜¯ä½ çš„ç”¨æˆ·åœ¨é‚®ä»¶å®¢æˆ·ç«¯ä¸Šè®¾ç½®è¿‡æ»¤ã€‚" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "邮件页脚文本" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" -"邮件页脚文本,通常为\"å¯ä»¥æ£€æŸ¥åžƒåœ¾ä¿¡æ¯\"的相关承诺,或是è¿è¡Œç«™ç‚¹çš„组织的真实" -"地å€ã€‚详情请è§<a href=\"http://en.wikipedia.org/wiki/CAN-SPAM_Act_of_2003\">" -"è¿™æ¡ç»´åŸºç™¾ç§‘è¯æ¡</a>。" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "邮件边框颜色" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "邮件基础模版的外部边框颜色" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "邮件段è½æ ·å¼" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "一个有效的CSS代ç 用以调整邮件段è½æ ·å¼ï¼ˆPæ ‡ç¾ï¼‰" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "é‚®ä»¶é“¾æŽ¥æ ·å¼" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "一个有效的CSS代ç ç”¨ä»¥è°ƒæ•´é‚®ä»¶é“¾æŽ¥æ ·å¼ï¼ˆAæ ‡ç¾ï¼‰" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "ä»…å‘é€æ‘˜è¦ç»™æ£å¸¸ç”¨æˆ·" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "如果选ä¸æœ¬é€‰é¡¹ï¼Œåˆ™è¢«ç¦è¨€çš„用户将ä¸ä¼šæ”¶åˆ°æ¯æ—¥æ‘˜è¦ã€‚" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "ä»…å‘é€æ‘˜è¦ç»™å·²éªŒè¯ç”¨æˆ·" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "如果选ä¸æœ¬é€‰é¡¹ï¼Œåˆ™è¢«æ²¡æœ‰éªŒè¯é‚®ç®±çš„用户将ä¸ä¼šæ”¶åˆ°æ¯æ—¥æ‘˜è¦ã€‚" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "外部接å£" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "站点å¯ä»¥é€‰æ‹©ä½¿ç”¨çš„å„ç§å¤–部接å£" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "Google站点地图" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" -"è¿™é‡Œå¡«å†™ä½ å°†ç«™ç‚¹åœ¨<a href='https://www.google.com/webmasters/tools/'>Google网" -"站管ç†å‘˜å·¥å…·</a>注册åŽèŽ·å¾—的代ç 。" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "Google分æžä»£ç " - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" -"ä½ çš„Google分æžä»£ç ,å¯ä»¥åœ¨<a href='http://www.google.com/analytics/'>Google分" -"æžå®˜æ–¹ç½‘ç«™</a>获å–。" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "站点设置" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "OSQA站点通用设置" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "å¯ç”¨ç¤¾åŒºç»´åŸº" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "是å¦å…许问题和ç”æ¡ˆè¢«æ ‡è®°ä¸ºç¤¾åŒºç»´åŸºã€‚" - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "æ ‡ç¾åˆ›å»ºé™åˆ¶" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "è¶…çº§ç”¨æˆ·ï¼Œå·¥ä½œäººå‘˜æˆ–æ™®é€šç”¨æˆ·åˆ›å»ºæ ‡ç¾çš„信誉点数é™åˆ¶ã€‚" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "é—®é¢˜æ ‡é¢˜æœ€å°‘å—æ•°" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "当用户æé—®æ—¶æ ‡é¢˜æœ€å°‘è¦æœ‰å¤šå°‘å—。" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "问题内容最少å—æ•°" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "当用户æ问时内容最少è¦æœ‰å¤šå°‘å—。" - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "空问题内容" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "问题的内容是å¦å¯ä»¥ä¸ºç©ºã€‚" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "æœ€å°‘æ ‡ç¾æ•°" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "问题最少è¦æœ‰å¤šå°‘ä¸ªæ ‡ç¾ã€‚" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "æœ€å¤§æ ‡ç¾æ•°" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "é—®é¢˜æœ€å¤šèƒ½æœ‰å¤šå°‘ä¸ªæ ‡ç¾ã€‚" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "æ ‡ç¾æœ€å°‘å—æ•°" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "æ ‡ç¾æœ€å°‘è¦æœ‰å¤šå°‘å—。" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "æ ‡ç¾æœ€å¤§å—æ•°" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "æ ‡ç¾æœ€å¤šèƒ½æœ‰å¤šå°‘å—。" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "评论内容最少å—æ•°" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "用户å‘表评论时最少è¦è¾“入多少å—。" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "评论内容最大å—æ•°" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "用户å‘表评论时最多能输入多少å—。" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "评论ä¸å…许使用Markdown" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "是å¦å…许用湖在评论ä¸ä½¿ç”¨Markdown。" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "评论ä¸æ˜¾ç¤ºä½œè€…头åƒ" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "是å¦åœ¨è¯„论ä¸æ˜¾ç¤ºä½œè€…的个性头åƒã€‚" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "å—段" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "默认" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "æ›´æ¢" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "信誉é™åˆ¶è®¾ç½®" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "设置完æˆæŸäº›ç‰¹å®šæ“作最少需è¦æ‹¥æœ‰çš„信誉点数" - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "验è¯ç 显示é™åˆ¶" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥åœ¨æ·»åŠ 内容时ä¸æ˜¾ç¤ºéªŒè¯ç 。" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "投票支æŒé™åˆ¶" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥æŠ•ç¥¨æ”¯æŒã€‚" - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "投票å对é™åˆ¶" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥æŠ•ç¥¨å对。" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "举报帖åé™åˆ¶" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥ä¸¾æŠ¥å¸–å。" - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "å‘表评论é™åˆ¶" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥å‘表评论。" - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "喜欢评论é™åˆ¶" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥\"喜欢\"评论。" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "ä¸Šä¼ æ–‡ä»¶é™åˆ¶" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥ä¸Šä¼ 文件。" - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "åˆ›å»ºæ ‡ç¾é™åˆ¶" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥åˆ›å»ºæ ‡ç¾ã€‚" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "å…³é—问题é™åˆ¶" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "最少è¦æœ‰å¤šå°‘信誉点数用户æ‰å¯ä»¥å…³é—自己的问题。" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "统一关é—å’Œé‡æ–°å¼€å¯é™åˆ¶" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "如果选ä¸æœ¬é€‰é¡¹ï¼Œåˆ™é‡æ–°å¼€å¯é—®é¢˜çš„é™åˆ¶å°†ä¸Žå…³é—问题的é™åˆ¶ä¸€æ ·ã€‚" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "é‡æ–°å¼€å¯é—®é¢˜é™åˆ¶" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥é‡æ–°å¼€å¯è‡ªå·±çš„问题。" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "é‡æ–°æ ‡ç¾é™åˆ¶" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥ç»™å…¶ä»–用户的问题é‡æ–°æ·»åŠ æ ‡ç¾ã€‚" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "编辑维基é™åˆ¶" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥ç¼–辑社区维基。" - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "æ·»åŠ ç»´åŸºé™åˆ¶" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥å°†å¸–åæ ‡è®°ä¸ºç¤¾åŒºç»´åŸºã€‚" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "编辑他人帖åé™åˆ¶" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥ç¼–辑其他用户的帖å。" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "å…³é—他人帖åé™åˆ¶" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥å…³é—其他用户的帖å。" - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "åˆ é™¤è¯„è®ºé™åˆ¶" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥åˆ 除评论。" - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "回ç”转æ¢ä¸ºè¯„论é™åˆ¶" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥å°†å›žç”转æ¢ä¸ºè¯„论。" - -#: forum/settings/minrep.py:80 -msgid "Minimum reputation to convert comments to answers" -msgstr "评论转æ¢ä¸ºå›žç”é™åˆ¶" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥å°†è¯„论转æ¢ä¸ºå›žç”。" - -#: forum/settings/minrep.py:84 -msgid "Minimum reputation to convert answers to questions" -msgstr "回ç”转æ¢ä¸ºé—®é¢˜é™åˆ¶" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥å°†å›žç”转æ¢ä¸ºé—®é¢˜ã€‚" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "æµè§ˆä¸¾æŠ¥é™åˆ¶" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "最少需è¦å¤šå°‘信誉点数用户æ‰å¯ä»¥æµè§ˆè¢«ä¸¾æŠ¥çš„帖å。" - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "管ç†è®¾ç½®" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "设置站点的一些管ç†é€‰é¡¹" - -#: forum/settings/moderation.py:11 -msgid "Use canned comments" -msgstr "使用预置评论" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" -"如果勾选本选项,预置评论功能将被激活,这å¯ä»¥ä½¿ç®¡ç†å‘˜ä½¿ç”¨è¿™äº›é¢„置的评论模版æ¥" -"进行评论。" - -#: forum/settings/moderation.py:20 -msgid "Canned comments" -msgstr "预置评论模版" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" -"\n" -"<p>创建一些预置的评论模版æ¥æ–¹ä¾¿ç®¡ç†ã€‚ä½ å¯ä»¥ä½¿ç”¨{{ post }}å’Œ{{ settings }}å˜" -"é‡ã€‚</p>\n" -"<p>å¦‚æžœä½ æƒ³èŽ·å–当å‰å¸–å的作者å称,å¯ä»¥ä½¿ç”¨{{ post.author }},è¦èŽ·å–帖åçš„æ ‡" -"题,å¯ä»¥ä½¿ç”¨{{ post.title }}。</p>\n" -"<p>å¦‚æžœä½ æƒ³èŽ·å–当å‰ç«™ç‚¹çš„å称,å¯ä»¥ä½¿ç”¨{{ settings.APP_TITLE }}。所有的设置都" -"å¯ä»¥é€šè¿‡\"settings\"对象获得。</p>\n" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "ä¸¾æŠ¥åŽŸå› " - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "为举报帖åæ示窗å£åˆ›å»ºä¸€äº›ä¸¾æŠ¥åŽŸå› 。" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "å…³é—åŽŸå› " - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "为关é—问题æ示窗å£åˆ›å»ºä¸€äº›å…³é—åŽŸå› ã€‚" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "信誉增长与æŸå¤±è®¾ç½®" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "è®¾ç½®ä¼šæ ¹æ®ç”¨æˆ·çš„哪些æ“作而获得或失去信誉点数" - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "åˆå§‹ä¿¡èª‰" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "用户第一次登录时获得的信誉点数。" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "用户æ¯æ—¥ç”±äºŽè¢«æŠ•ç¥¨æ”¯æŒè€ŒèŽ·å¾—的信誉点数上é™ã€‚" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "验è¯é‚®ç®±èŽ·å¾—信誉" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "用户验è¯é‚®ç®±æˆåŠŸåŽæ‰€èŽ·å¾—的信誉点数。" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "被投票支æŒèŽ·å¾—信誉" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "用户被投票支æŒåŽæ‰€èŽ·å¾—的信誉点数。" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "被投票å对æŸå¤±ä¿¡èª‰" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "用户被投票å对åŽæ‰€æŸå¤±çš„信誉点数。" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "投票å对æŸå¤±ä¿¡èª‰" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "用户投票å对其他帖ååŽæ‰€æŸå¤±çš„信誉点数。" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "被采纳回ç”获得信誉" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "用户的一个回ç”被采纳åŽæ‰€èŽ·å¾—的信誉点数。" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "采纳回ç”获得信誉" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "用户为自己的问题采纳了一个回ç”所获得的信誉点数。" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "被举报æŸå¤±ä¿¡èª‰" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "用户的一个帖å被举报åŽæ‰€æŸå¤±çš„信誉点数。" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "被举报至éšè—æŸå¤±ä¿¡èª‰" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" -"用户的一个最终修订的帖å被举报的次数达到使帖å被éšè—时所æŸå¤±çš„信誉点数。" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "è¢«ä¸¾æŠ¥è‡³åˆ é™¤æŸå¤±ä¿¡èª‰" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" -"用户的一个最终修订的帖å被举报的次数达到使帖åè¢«åˆ é™¤æ—¶æ‰€æŸå¤±çš„信誉点数。" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "显示欢迎信æ¯" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "是å¦åœ¨ç”¨æˆ·ç¬¬ä¸€æ¬¡è®¿é—®ç«™ç‚¹æ—¶æ˜¾ç¤ºæ¬¢è¿Žä¿¡æ¯ã€‚" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "è¾¹æ æ˜¾ç¤ºæ„Ÿå…´è¶£çš„æ ‡ç¾" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "是å¦åœ¨è¾¹æ æ˜¾ç¤ºæ„Ÿå…´è¶£çš„æ ‡ç¾ã€‚" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "站点介ç»" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "对匿å用户å¯è§çš„一个ä½äºŽè¾¹æ 的介ç»é¡µé¢ã€‚" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "顶部模å—编译模å¼" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "采用何ç§æ–¹å¼æ¥ç¼–译顶部模å—代ç 。" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "底部模å—编译模å¼" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "采用何ç§æ–¹å¼æ¥ç¼–译底部模å—代ç 。" - -#: forum/settings/sitemaps.py:5 -msgid "Sitemap settings" -msgstr "站点地图设置" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "与站点地图相关的一些设置" - -#: forum/settings/sitemaps.py:8 -msgid "Questions Sitemap Limit" -msgstr "站点地图问题显示数" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "站点地图æ¯é¡µçš„问题显示数。" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "站点地图å˜åŒ–频率" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "在站点地图的<changefreq>æ ‡ç¾ä¸ä½¿ç”¨ï¼Œå¹¶ç”¨ä»¥ç¡®å®šç«™ç‚¹åœ°å›¾çš„å˜åŒ–频率。" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "使用自定义CSSæ ·å¼" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "是å¦ä½¿ç”¨è‡ªå®šä¹‰CSSæ ·å¼ã€‚" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "自定义CSSæ ·å¼" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "ä½ çš„è‡ªå®šä¹‰CSSæ ·å¼ã€‚" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "使用自定义页头" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "是å¦ä½¿ç”¨è‡ªå®šä¹‰é¡µå¤´ã€‚" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "自定义页头" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "ä½ çš„è‡ªå®šä¹‰é¡µå¤´ã€‚" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "自定义页头编译模å¼" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "采用何ç§æ–¹å¼æ¥ç¼–译页头代ç 。" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "显示公告æ " - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "显示在æœç´¢æ 之下的一些内容,å¯ä»¥ç”¨äºŽå‘布公告ç‰ã€‚" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "公告æ " - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "公告æ 内容。" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "公告æ 编译模å¼" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "采用何ç§æ–¹å¼æ¥ç¼–译公告æ 代ç 。" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "使用自定义页脚" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "是å¦ä½¿ç”¨è‡ªå®šä¹‰é¡µè„šã€‚" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "自定义页脚" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "ä½ çš„è‡ªå®šä¹‰é¡µè„šã€‚" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "自定义页脚编译模å¼" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "采用何ç§æ–¹å¼æ¥ç¼–译页脚代ç 。" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "替æ¢é»˜è®¤é¡µè„š" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "置于默认页脚之上" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "置于默认页脚之下" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "自定义页脚模å¼" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "ä½ çš„é¡µè„šå°†å¦‚ä½•æ˜¾ç¤ºã€‚" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "使用自定义头信æ¯å…ƒç´ " - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "是å¦ä½¿ç”¨è‡ªå®šä¹‰å¤´ä¿¡æ¯å…ƒç´ 。" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "自定义头信æ¯" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "ä½ çš„è‡ªå®šä¹‰å¤´ä¿¡æ¯å…ƒç´ 。" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "ä¸Šä¼ è®¾ç½®" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "ä¸Šä¼ æ–‡ä»¶çš„ç›¸å…³è®¾ç½®" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "ä¸Šä¼ æ–‡ä»¶è·¯å¾„" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "ä¸Šä¼ æ–‡ä»¶å°†è¢«ä¿å˜åˆ°çš„路径。注:æ¤è·¯å¾„必须已å˜åœ¨ã€‚" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "ä¸Šä¼ æ–‡ä»¶åˆ«å" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "ä¸Šä¼ æ–‡ä»¶çš„åˆ«å地å€ã€‚注:如果改å˜æœ¬é€‰é¡¹ï¼Œåˆ™éœ€è¦é‡å¯ç«™ç‚¹ã€‚" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "最大文件大å°" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "ä¸Šä¼ æ–‡ä»¶æ—¶æ‰€å…许的最大文件大å°ï¼ˆMB)。" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "地å€è®¾ç½®" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "一些å¯ä»¥è°ƒæ•´ç«™ç‚¹åœ°å€è¡Œä¸ºçš„设置(试验阶段)" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "在地å€ä¸åŒ…å«ç”¨æˆ·å" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "å¦‚æžœä½ æƒ³è¦åœ¨ç”¨æˆ·ç›¸å…³çš„地å€ä¸åŒ…å«ç”¨æˆ·å则勾选本选项。" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "çŸåœ°å€å…许Unicode" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "å…许在地å€ä¸å‡ºçŽ°Unicode / Non-Latinå—符。" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "强制å•ä¸€åœ°å€" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "如果å‘生çŸåœ°å€ä¸Žå®žé™…地å€å…³è”错误则é‡å®šå‘请求。" - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "用户设置" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "OSQA用户通用设置" - -#: forum/settings/users.py:10 -msgid "Allow negative reputation" -msgstr "å…许信誉为负数" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "å¦‚æžœä½ å…许用户的信誉为负数,则勾选本选项。" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "将欢迎信æ¯å˜å‚¨åœ¨Cookieä¸" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" -"å¦‚æžœä½ å‹¾é€‰äº†æœ¬é€‰é¡¹ï¼Œæ¬¢è¿Žä¿¡æ¯å°†ä¼šè¢«ä¿å˜åœ¨Cookieä¸ï¼Œåˆ‡ç”¨æˆ·ä¸ä¼šåœ¨æ³¨é”€æ—¶è¢«æ示。" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "å…许改å˜æ˜¾ç¤ºæ˜µç§°" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "å…许用户去更改他们的显示昵称。" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "最çŸç”¨æˆ·å长度" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "设置用户å的最çŸé•¿åº¦ï¼ˆå—)。" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "我日" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "我æ“" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "摸奶" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "åšçˆ±" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "æ·»åŠ " - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "编辑" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "ä¿å˜" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "åˆ é™¤" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "管ç†" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "æ›´æ–°" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "åˆ é™¤" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "新建" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "ç¦æ¢ä½¿ç”¨çš„用户å" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "一个已英文逗å·åˆ†å‰²çš„用户å列表(在新用户注册时ä¸è¢«å…许使用的用户å)。" - -#: forum/settings/users.py:36 -msgid "Truncate long usernames" -msgstr "截æ–长用户å" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "过长的用户å在显示时会被截æ–。" - -#: forum/settings/users.py:42 -msgid "Show user accept rate" -msgstr "显示用户采纳率" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "选ä¸æœ¬é€‰é¡¹åŽï¼Œç”¨æˆ·çš„采纳率将显示在用户的帖åä¸ã€‚" - -#: forum/settings/users.py:49 -#, fuzzy -msgid "Freeze accept rate" -msgstr "采纳率" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "用户å截æ–é™åˆ¶" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "超过多少å—的用户å在显示时将会被截æ–。" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "è¶…çº§ç”¨æˆ·æ ‡è¯†" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "在超级用户和管ç†å‘˜çš„用户åæ—边将显示è±å½¢\"â—†\"æ ‡è¯†ã€‚" - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "邮件地å€ä¸é‡å¤" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "是å¦å…许用户的邮件地å€å‡ºçŽ°é‡å¤ã€‚" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "需è¦éªŒè¯é‚®ç®±çš„æ“作" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "没有验è¯é‚®ç®±çš„用户,将ä¸å…许进行这些æ“作。" - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "æé—®" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "回ç”" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "评论" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "举报" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "ä¸é€šçŸ¥æœªéªŒè¯ç”¨æˆ·" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "ä¸é€šçŸ¥æœªéªŒè¯é‚®ç®±çš„用户。" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "会è¯ä¿ç•™æ—¶é—´" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" -"当一个未登录或未验è¯ç”¨æˆ·å‘帖时,会è¯å°†ä¿ç•™å¤šå°‘时间(分钟)æ¥è®©ä»–们登录或验è¯" -"邮箱。" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "会è¯è¦å‘Šæ—¶é—´" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" -"在ç»è¿‡å¤šå°‘时间(分钟)åŽï¼Œä¸€ä¸ªåˆšç™»å½•æˆ–刚完æˆéªŒè¯çš„用户会收到帖åçš„å¾…å‘布的相" -"å…³æ示,而ä¸æ˜¯è‡ªåŠ¨å‘布。" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "适åˆä»»æ„网站以åŠä»»æ„人群的图åƒã€‚" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "å«æœ‰ç²—俗动作,挑衅å«ä¹‰ï¼Œè½»å¾®æš´åŠ›ç‰çš„图åƒã€‚" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "å«æœ‰è¾ƒä¸ºä¸¥é‡çš„亵渎,ä¸ç‰æš´åŠ›ï¼Œè£¸éœ²èº«ä½“ç‰çš„图åƒã€‚" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "å«æœ‰æžå…¶ä¸¥é‡çš„色情或暴力的图åƒã€‚" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "头åƒè¯„级" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" -"头åƒè¯„级功能å…许用户为自己的个性头åƒè¿›è¡Œè¯„级,以æ¤ç¡®å®šè¯¥å¤´åƒçš„适用人群。" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "(神秘人)一个简å•çš„,å¡é€šé£Žæ ¼çš„人形轮廓(ä¸æ ¹æ®é‚®ä»¶åœ°å€åŒºåˆ†ï¼‰" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "ï¼ˆå‡ ä½•å›¾å½¢ï¼‰ä¸€ä¸ªæ ¹æ®é‚®ä»¶åœ°å€è‡ªåŠ¨ç”Ÿæˆçš„å‡ ä½•å›¾å½¢" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "(怪物)一个自动生æˆçš„,有ç€ä¸åŒé¢œè‰²ï¼Œè„¸åž‹ç‰ç‰¹å¾çš„\"怪物\"" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "(å¡é€šå¤´åƒï¼‰ä¸€ä¸ªè‡ªåŠ¨ç”Ÿæˆçš„,有ç€ä¸åŒç‰¹å¾ï¼ŒèƒŒæ™¯çš„头åƒ" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "默认头åƒ" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "个性头åƒæœ‰ä¸€äº›å†…置的选项å¯ä½œä¸ºé»˜è®¤è®¾ç½®ã€‚" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "æµè§ˆè®¾ç½®" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "设置站点的显示效果" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "嵌入YouTube视频" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "如果选ä¸æœ¬é€‰é¡¹ï¼ŒYouTube的视频将被嵌入。" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -#, fuzzy -msgid "Choose this if you want the latest comments to appear first." -msgstr "å¦‚æžœä½ æƒ³è¦åœ¨ç”¨æˆ·ç›¸å…³çš„地å€ä¸åŒ…å«ç”¨æˆ·å则勾选本选项。" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "简介长度" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "设置显示出的内容简介的å—数。" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "æœ€è¿‘æ ‡ç¾æ˜¾ç¤ºæ•°" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "é¦–é¡µä¸Šçš„æœ€è¿‘æ ‡ç¾æ¨¡å—ä¸æ˜¾ç¤ºçš„æ ‡ç¾æ•°é‡ã€‚" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "æ˜¾ç¤ºæ ‡ç¾äº‘" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "å¯ç”¨æœ¬é€‰é¡¹åŽï¼Œæœ€è¿‘ä½¿ç”¨çš„æ ‡ç¾å°†æ˜¾ç¤ºä¸ºæ ‡ç¾äº‘çš„æ ·å¼ã€‚" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "æ ‡ç¾äº‘最å°å—体" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "ç”¨ä»¥è®¡ç®—æ ‡ç¾äº‘ä¸æ ‡ç¾çš„å—体大å°ã€‚" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "æ ‡ç¾äº‘最大å—体" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "最å°æ ‡ç¾äº‘å—体" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "æœ€å¤§æ ‡ç¾äº‘å—体" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "最近奖励显示数" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "首页上的最近奖励模å—ä¸æ˜¾ç¤ºçš„奖励数é‡ã€‚" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "ç¼–è¾‘æ ‡ç¾æ˜¯å¦æ›´æ–°æ“作时间" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "å¦‚æžœå‹¾é€‰æœ¬é€‰é¡¹ï¼Œå½“ç¼–è¾‘é—®é¢˜çš„æ ‡ç¾æ—¶ï¼Œä¼šæ›´æ–°è¯¥é—®é¢˜çš„æ“作时间。" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "ç›¸å…³æ ‡ç¾æ¨¡å—显示数" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "页é¢ä¸Šçš„ç›¸å…³æ ‡ç¾æ¨¡å—ä¸æ˜¾ç¤ºçš„æ ‡ç¾æ•°é‡ã€‚输入0代表没有é™åˆ¶ã€‚" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "投票规则" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "设置站点的投票规则" - -#: forum/settings/voting.py:7 -msgid "Add reputation to max votes per day" -msgstr "使用信誉点数æ高æ¯æ—¥æœ€å¤§æŠ•ç¥¨æ•°" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" -"信誉点数å¯ä»¥æ高用户的æ¯æ—¥æœ€å¤§æŠ•ç¥¨æ•°ï¼Œå³æ‹¥æœ‰è¶Šé«˜ä¿¡èª‰çš„用户æ¯æ—¥å¯ä»¥æŠ•ç¥¨çš„次数" -"越多。" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "æ¯æ—¥æœ€å¤§æŠ•ç¥¨æ•°" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "æ¯ä¸ªç”¨æˆ·æ¯å¤©æœ€å¤šèƒ½è¿›è¡Œå¤šå°‘次投票。" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "æ示剩余投票数" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "当用户的æ¯æ—¥æŠ•ç¥¨æ•°å°äºŽå¤šå°‘时开始æ示用户。" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "æ¯æ—¥æœ€å¤§ä¸¾æŠ¥æ•°" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "æ¯ä¸ªç”¨æˆ·æ¯å¤©æœ€å¤šèƒ½ä¸¾æŠ¥å¤šå°‘次帖å。" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "举报至éšè—" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "当一个帖å被举报达到多少次以åŽï¼Œå°†è¢«éšè—。" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "ä¸¾æŠ¥è‡³åˆ é™¤" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "当一个帖å被举报达到多少次以åŽï¼Œå°†è¢«åˆ 除。" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "å–消投票é™æœŸ" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "当ç»è¿‡å¤šå°‘天以åŽï¼Œç”¨æˆ·å¯ä»¥å–消他所投的票。" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "没有登录" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "ä½ è¿˜æ²¡æœ‰ç™»å½•..." - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "...å¹¶ä¸”ä½ æƒ³è¦è®¿é—®çš„资æºæ˜¯è¢«ä¿æŠ¤çš„。" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "æ£åœ¨è·³è½¬åˆ°ç™»å½•é¡µé¢ã€‚" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "如果5秒åŽè¿˜æ²¡æœ‰è‡ªåŠ¨è·³è½¬ï¼Œè¯·ç‚¹å‡»" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "这里" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "ç¦æ¢" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "抱æ‰ï¼Œä½ 没有æƒé™è®¿é—®è¯¥é¡µé¢ã€‚" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "å¯èƒ½ç”±ä»¥ä¸‹åŽŸå› 导致:" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "ä½ åœ¨é‚®ä»¶é‡Œç‚¹å‡»äº†ä¸€ä¸ªé“¾æŽ¥ï¼Œä½†ä½ ç›®å‰æ£ä»¥å¦ä¸€ä¸ªè´¦å·ç™»å½•ï¼›" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "链接ä¸æœ‰é”™è¯¯ï¼Œè¯·å†æ¬¡è¿›è¡Œç¡®è®¤ï¼›" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "å¦‚æžœä½ è®¤ä¸ºä½ ä¸åº”该碰到这个问题,请" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "报告这个问题" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "返回首页" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "查看所有问题" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "æŸ¥çœ‹æ‰€æœ‰æ ‡ç¾" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "404错误" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "404未找到" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "抱æ‰ï¼Œæ‰¾ä¸åˆ°ä½ 所请求的页é¢ã€‚" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "该问题或回ç”å·²è¢«åˆ é™¤ï¼›" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "地å€é”™è¯¯ï¼Œè¯·æ£€æŸ¥ï¼›" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "å¦‚æžœä½ è®¤ä¸ºè¿™ä¸ª404错误ä¸åº”该å‘生,请" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "返回上一页" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "抱æ‰ï¼Œç³»ç»Ÿé”™è¯¯" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "系统错误记录已ç»ç”Ÿæˆï¼Œä¼šå°½å¿«ä¿®å¤é”™è¯¯ã€‚" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "å¦‚æžœä½ æ„¿æ„,请将错误报告å‘é€ç»™ç«™ç‚¹ç®¡ç†å‘˜ã€‚" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "查看最新问题" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "æŸ¥çœ‹æ ‡ç¾" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "系统æ£åœ¨ç»´æŠ¤ä¸" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "è´¦å·åŠŸèƒ½" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "修改密ç " - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "ä¸ºä½ çš„è´¦å·è®¾ç½®æ–°å¯†ç 。" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "编辑回ç”" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "éšè—预览" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "显示预览" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "返回" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "版本å·" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "选择版本å·" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "切æ¢å®žæ—¶Markdown编辑器预览" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "切æ¢é¢„览" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "ä¿å˜ç¼–辑" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "å–消" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "回ç”æ示" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "请确ä¿ä½ 的回ç”与本社区相关。" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "最好是给出一个直接的ç”案,而ä¸æ˜¯å±•å¼€è®¨è®ºã€‚" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "请最好能æ供详细信æ¯" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "简æ´æ˜Žäº†" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "查看常è§é—®é¢˜" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "我è¦æé—®" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "ä½ å¯ä»¥è¿›è¡ŒåŒ¿åæ问。" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" -"\n" -" 在æå‡ºä½ çš„é—®é¢˜ä¹‹åŽï¼Œä¼šè‡ªåŠ¨è·³è½¬åˆ°ä¸€ä¸ªç™»å½•/注册页é¢ã€‚\n" -" ä½ æ出的问题会ä¿å˜åœ¨å½“å‰ä¼šè¯ä¸ï¼Œå¹¶å°†åœ¨ä½ 登录æˆåŠŸåŽï¼Œ\n" -" 或注册新账å·" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "并验è¯ä½ 的邮箱åŽå‘布。" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "请记ä½ï¼Œåœ¨ä½ 的邮箱验è¯å®Œæˆä¹‹å‰ï¼Œä½ 的问题将ä¸ä¼šå‘布。" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "给我å‘é€ä¸€ä¸ªéªŒè¯é“¾æŽ¥ã€‚" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "(必填)" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "登录/注册æ¥æ出问题" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "æå‡ºä½ çš„é—®é¢˜" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "å‹‹ç« " - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "被授予æ¤å‹‹ç« 的用户:" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "å‹‹ç« ç®€ä»‹" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "å‹‹ç« " - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "å½“ä½ çš„æé—®ã€å›žç”以åŠæŠ•ç¥¨æ»¡è¶³ä¸€å®šæ¡ä»¶æ—¶ï¼Œå°†èŽ·å¾—å‹‹ç« å¥–åŠ±ã€‚" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" -"ä»¥ä¸‹åˆ—è¡¨æ‰€æ˜¾ç¤ºçš„å°±æ˜¯ä½ èŽ·å¾—çš„å‹‹ç« ï¼Œä»¥åŠèŽ·å¾—的次数。\n" -" " - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "å‹‹ç« " - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "é‡‘å‹‹ç« ï¼šä»£è¡¨æœ€é«˜è£èª‰çš„å‹‹ç« ï¼Œå¹¶ä¸”æžå…¶ç½•è§" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "金" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "é‡‘å‹‹ç« æè¿°" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "é“¶å‹‹ç« ï¼šä»£è¡¨åšå‡ºç‰¹æ®Šè´¡çŒ®çš„å‹‹ç« ï¼Œè¾ƒä¸ºç½•è§" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "银" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "é“¶å‹‹ç« æè¿°" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "é“œå‹‹ç« ï¼šä»£è¡¨è£èª‰çš„å‹‹ç« ï¼Œè¾ƒä¸ºå¸¸è§" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "é“œ" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "é“œå‹‹ç« æè¿°" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "ä½ ç¡®å®šå—?" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "是" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "å¦" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "ä¿¡æ¯:" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "å…³é—" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "确定" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -msgid "word" -msgstr "è¯" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "è¯" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -msgid "character" -msgstr "å—" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "å—" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "å…³é—问题" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "å…³é—问题" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "åŽŸå› " - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "å¯ä»¥å…³é—" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "首页" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "å馈" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "è¯·å‘Šè¯‰æˆ‘ä»¬ä½ çš„å馈信æ¯ï¼" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" -"\n" -" <span class='big strong'>亲爱的%(user_name)s</span>,我们很希望得" -"åˆ°ä½ çš„å馈。\n" -" è¯·åœ¨ä¸‹æ–¹è¾“å…¥ä¸€äº›ä½ æƒ³è®©æˆ‘ä»¬çŸ¥é“çš„è¯ã€‚\n" -" " - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" -"\n" -" <span class='big strong'>亲爱的访客</span>ï¼Œæˆ‘ä»¬æœŸå¾…å¾—åˆ°ä½ çš„å" -"馈。\n" -" è¯·åœ¨ä¸‹æ–¹è¾“å…¥ä¸€äº›ä½ æƒ³è®©æˆ‘ä»¬çŸ¥é“çš„è¯ã€‚\n" -" " - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "(该å—段为必填项)" - -#: forum/skins/default/templates/feedback.html:53 -#, fuzzy -msgid "(wrong captcha)" -msgstr "验è¯ç æ— æ•ˆ" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "å‘é€å馈信æ¯" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "返回首页" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "我è¦æé—®" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "æœç´¢" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "问题" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "用户" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "欢迎æ¥åˆ°" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "注销" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "ä½œä¸ºä¸€ä¸ªå·²æ³¨å†Œçš„ç”¨æˆ·ï¼Œä½ å¯ä»¥ä½¿ç”¨OpenIDç™»å½•ï¼Œæ³¨é”€æˆ–æ°¸ä¹…åˆ é™¤è´¦å·ã€‚" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "ç«‹å³æ³¨é”€" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "Markdown帮助" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "Markdownè¯æ³•" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" -"本文档将介ç»ä¸€äº›åœ¨Markdownä¸æ¯”较é‡è¦çš„è¯æ³•ã€‚如果需è¦æŸ¥çœ‹å…¨éƒ¨è¯æ³•ï¼Œè¯·å‰å¾€John " -"Gruberçš„<a href=\"http://daringfireball.net/projects/markdown/syntax\" rel=" -"\"nofollow\">Markdownè¯æ³•é¡µé¢</a>。" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "æ ‡é¢˜" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" -"如果需è¦å°†æ–‡æœ¬è½¬æ¢ä¸ºH1å·å—,å¯ä»¥åœ¨æ–‡æœ¬çš„下一行输入ç‰å·\"=\"(个数ä¸é™ï¼‰ã€‚如果" -"需è¦å°†æ–‡æœ¬è½¬æ¢ä¸ºH2å·å—,å¯ä»¥åœ¨æ–‡æœ¬çš„下一行输入å‡å·\"-\"(个数ä¸é™ï¼‰ã€‚" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "这是H1å·å—" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "这是H2å·å—" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" -"æˆ–è€…ä½ ä¹Ÿå¯ä»¥åœ¨æ–‡æœ¬å‰åŠ 上井å·\"#\"。井å·çš„æ•°é‡åˆ™ä»£è¡¨äº†å—体的大å°ã€‚例如,1个井" -"å·ä»£è¡¨H1å·å—,2个井å·ä»£è¡¨H2å·å—。" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "这是H3å·å—" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" -"这两ç§ç”¨æ³•éƒ½æ˜¯é€šç”¨ã€‚具体选择哪一ç§ç”¨æ³•åˆ™è¦çœ‹ä¸ªäººä¹ 惯。而且,两者在实际显示时" -"çš„æ•ˆæžœæ˜¯ä¸€æ ·çš„ã€‚" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "段è½" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "段è½ç”±ç©ºè¡Œåˆ†å‰²ã€‚" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "这是段è½1。" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "这是段è½2。" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "链接" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" -"\n" -" æ¯ä¸ªé“¾æŽ¥éƒ½æœ‰ä¸¤ä¸ªéƒ¨åˆ†ã€‚\n" -" 第一个部分是实际显示出的文本,其左å³å„有一个方括å·\"[ ]\"。\n" -" 第二个部分是链接地å€ï¼Œå…¶å·¦å³å„有一个圆括å·\"( )\"。\n" -" " - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "链接文本" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "http://example.com/" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "æ ¼å¼" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" -"如果需è¦å°†æ–‡æœ¬è½¬æ¢ä¸ºç²—体,åªéœ€è¦åœ¨æ–‡æœ¬å·¦å³å„åŠ ä¸Š2个星å·\"**\"或2个下划线\"__" -"\"。" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "粗体" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "粗体" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" -"如果需è¦å°†æ–‡æœ¬è½¬æ¢ä¸ºæ–œä½“,åªéœ€è¦åœ¨æ–‡æœ¬å·¦å³å„åŠ ä¸Š1个星å·\"*\"或1个下划线\"_" -"\"。" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "斜体" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "斜体" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" -"如果需è¦å°†æ–‡æœ¬è½¬æ¢ä¸ºç²—斜体,åªéœ€è¦åœ¨æ–‡æœ¬å·¦å³å„åŠ ä¸Š3个星å·\"***\"或3个下划线" -"\"___\"。" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "粗斜体" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "粗斜体" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "引用" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" -"如果需è¦å°†æ–‡æœ¬è½¬æ¢ä¸ºå¼•ç”¨æ ¼å¼ï¼Œåªéœ€è¦åœ¨æ¯è¡Œæ–‡æœ¬å·¦ä¾§åŠ 上一个å³å°–括å·\">\"。" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "引用" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "引用" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "或者也å¯ä»¥åœ¨æ–‡æœ¬é¦–è¡Œæ’å…¥å³å°–括å·\">\",å†ä½¿ç”¨ç©ºè¡Œç»“æŸå¼•ç”¨ã€‚" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "引用" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "æ’入空行å¯ä»¥ç»“æŸå¼•ç”¨" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "列表" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" -"如果需è¦åˆ›å»ºä¸€ä¸ªç¼–å·åˆ—表,åªéœ€è¦åœ¨æ¯ä¸ªé¡¹ç›®ä¹‹å‰æ’入以下组åˆ1个数å—,1个英文å¥" -"å·å’Œ1ä¸ªç©ºæ ¼ã€‚å…·ä½“ä½¿ç”¨å“ªä¸ªæ•°å—å¹¶æ— å…³ç³»ã€‚" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "项目" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "如果需è¦åˆ›å»ºä¸€ä¸ªç¬¦å·åˆ—表,åªéœ€è¦åœ¨æ¯ä¸ªé¡¹ç›®ä¹‹å‰æ’å…¥1个星å·\"*\"。" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "项目1" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "项目2" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "项目3" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "更多" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" -"虽然还有更多Markdownè¯æ³•ï¼Œä½†è¿™é‡Œä»‹ç»çš„å·²ç»è¶³å¤Ÿå¤§éƒ¨åˆ†äººä½¿ç”¨ã€‚如果需è¦æŸ¥çœ‹æœ‰å…³" -"Markdown的所有事项,请å‰å¾€<a href=\"http://daringfireball.net/projects/" -"markdown/syntax\" target=\"_blank\" rel=\"nofollow\">Markdown项目主页</a>。" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "请è¯æ˜Žä½ 是人类" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "我是人类" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "æœç´¢" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "åœ¨ä½ çš„æµè§ˆå™¨ä¸ã€‚" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "æ¯é¡µæ˜¾ç¤º" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "上一页" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "当å‰é¡µ" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "页数" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "页数 - " - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "下一页" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "éšç§å£°æ˜Ž" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "éšç§ä¿æŠ¤çš„概括信æ¯" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "站点访客" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "访客将被收集的信æ¯" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "个人信æ¯" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "个人信æ¯æ”¿ç–详情" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "其他æœåŠ¡" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "第三方数æ®åˆ†äº«æ”¿ç–详情" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "Cookie政ç–详情" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "政ç–å˜åŒ–" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "如何修改éšç§ä¿æŠ¤" - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "查看带有\"%(tagname)s\"æ ‡ç¾çš„问题" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "é—®é¢˜ç”±äºŽä»¥ä¸‹åŽŸå› è¢«å…³é—了\"%(close_reason)s\"ç”±" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "1回ç”:" -msgstr[1] "%(counter)s回ç”:" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "ä½ çš„å›žç”" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "还没人回ç”这个问题,快æ¥æŠ¢æ²™å‘å§ï¼" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "登录/注册æ¥å›žç”问题" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "回ç”ä½ è‡ªå·±çš„é—®é¢˜" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "回ç”这个问题" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "é—®é¢˜æ ‡ç¾" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "æŸ¥çœ‹å¸¦æœ‰ä»¥ä¸‹æ ‡ç¾çš„问题" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "ä½¿ç”¨æ ‡ç¾" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "å·²æ出的问题" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "问题æµè§ˆé‡" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "次" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "最åŽæ›´æ–°" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "相关问题" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "编辑问题" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "æ ‡é¢˜æ示" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "ä»€ä¹ˆæ˜¯æ ‡ç¾" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "æ›´æ¢æ ‡ç¾" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "为何è¦ä½¿ç”¨è‡ªå®šä¹‰æ ‡ç¾ï¼Ÿ" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "æ ‡ç¾å¯ä»¥ä½¿é—®é¢˜çš„管ç†äº•ç„¶æœ‰åº" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "æ ‡ç¾ç¼–辑者将会收到æ¥è‡ªç¤¾åŒºçš„特殊奖励" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "回ç”" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "最çƒ" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "æµè§ˆ" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "在%(app_title)s上有关%(tag)s的问题和回ç”" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "订阅问题的RSS频é“" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "é‡æ–°å¼€å¯é—®é¢˜" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "å¼€å¯ä¹‹å‰å…³é—的问题" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "é—®é¢˜ç”±äºŽä»¥ä¸‹åŽŸå› å…³é—" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "åŽŸå› - " - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "于" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "å…³é—日期" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "é‡æ–°å¼€å¯è¿™ä¸ªé—®é¢˜" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "版本记录" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "点击æ¥éšè—/显示版本å·" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" -"\n" -"\t 在%(app_name)sä¸æœç´¢\n" -"\t" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "关注这个问题" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "邮件" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "ä½ å·²è‡ªåŠ¨è®¢é˜…äº†è¿™ä¸ªé—®é¢˜ã€‚" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "ä½ å·²è®¢é˜…äº†è¿™ä¸ªé—®é¢˜ã€‚" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "ä½ æ²¡æœ‰è®¢é˜…è¿™ä¸ªé—®é¢˜ã€‚" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "我è¦é€€è®¢" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "我è¦è®¢é˜…" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" -"\n" -" ï¼ˆä½ å¯ä»¥åœ¨ä½ çš„<a href=\"%(subscriptions_url)s\">个人信æ¯</a>ä¸ä¿®" -"改通知设置。\n" -" " - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "登录之åŽï¼Œä½ å¯ä»¥åœ¨è¿™é‡Œè®¢é˜…任何更新。" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "RSS" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "订阅回ç”" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "回ç”" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "订阅评论和回ç”" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "回ç”和评论" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "æ ‡ç¾åˆ—表" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "所有匹é…çš„æ ‡ç¾æŸ¥è¯¢ï¼š" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "未找到任何结果" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "验è¯è®¾ç½®" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "è¿™äº›æ˜¯ä½ çš„è´¦å·å·²å…³è”的外部验è¯æ供商。" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "ä½ çš„è´¦å·ç›®å‰è¿˜æ²¡æœ‰å…³è”外部验è¯æ供商。" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "æ·»åŠ æ–°çš„æ供商" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "ä½ å¯ä»¥åœ¨è¿™é‡Œé‡æ–°è®¾ç½®å¯†ç 。请务必记ä½æ–°å¯†ç 。" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "ä½ å¯ä»¥ä¸ºä½ çš„è´¦å·è®¾ç½®ä¸€ä¸ªå¯†ç ï¼Œè¿™æ ·å°±å¯ä»¥ä½¿ç”¨æ ‡å‡†çš„用户å和密ç 登录了ï¼" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "创建密ç " - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "在本站关è”ä½ çš„OpenID" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "将本站的账å·ä¸Žä½ çš„OpenIDå…³è”" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "ä½ æ£ä»¥ä»¥ä¸‹æ供商æ供的验è¯ç¬¬ä¸€æ¬¡ç™»å½•ï¼š" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" -"è¯·è¾“å…¥ä½ çš„æ˜¾ç¤ºæ˜µç§°å¹¶éªŒè¯ä½ çš„é‚®ç®±ï¼ˆå¦‚æžœä½ æƒ³è®©ç«™ç‚¹ç»™ä½ å‘é€ä½ 感兴趣的信æ¯ï¼Œæˆ–ä½ " -"想å‚与到社区更多的活动ä¸ï¼ŒéªŒè¯é‚®ç®±æ˜¯å¾ˆæœ‰å¿…è¦çš„)。" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "该账å·å·²å˜åœ¨ï¼Œè¯·æ¢ä¸€ä¸ªã€‚" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "创建账å·" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "该邮箱已通过验è¯" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "已验è¯" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "%(prefix)sä½ çš„é‚®ç®±éªŒè¯é“¾æŽ¥%(app_name)s" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "请使用以下链接æ¥éªŒè¯ä½ 的邮箱:" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "验è¯æˆ‘的邮箱" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "如果上é¢çš„é“¾æŽ¥æ— æ³•ç›´æŽ¥ç‚¹å‡»ï¼Œè¯·å°†å…¶å¤åˆ¶åˆ°æµè§ˆå™¨çš„地å€æ :" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "å°†æ¤è¿žæŽ¥å¤åˆ¶åˆ°æµè§ˆå™¨çš„地å€æ æ¥è¿›è¡Œé‚®ç®±éªŒè¯ï¼š" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "登录" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "用户登录" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "或者..." - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" -"\n" -" 外部登录æœåŠ¡ä½¿ç”¨<b><a href=\"http://openid.net/\">OpenID</a></b>技" -"术,该技术å¯ä»¥ä½¿ä½ 的密ç 以密文形å¼ä»…å˜åœ¨äºŽ\n" -" ä½ å’Œä½ çš„ç™»å½•æä¾›å•†ä¹‹é—´ï¼Œå¹¶ä¸”æ›´æ— éœ€å†åŽ»åˆ›å»ºå…¶ä»–å¸å·ã€‚\n" -" " - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "在我登录åŽå†éªŒè¯é‚®ç®±ã€‚" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "点击" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "å¦‚æžœä½ åœ¨ç™»å½•çš„æ—¶å€™ç¢°åˆ°é—®é¢˜ã€‚" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "è¾“å…¥ä½ çš„" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "为什么è¦ä½¿ç”¨OpenID?" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "使用OpenID会更方便" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "å¯åœ¨å¤šå¤„使用åŒä¸€ä¸ªOpenID" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "OpenID应用æžå…¶å¹¿æ³›" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "OpenID是一个开放的支æŒæ ‡å‡†" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "查看更多" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "获得OpenID" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "%(prefix)s临时登录链接" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "以下链接将å…è®¸ä½ åœ¨%(app_name)sç™»å½•ä¸€æ¬¡ä½ çš„è´¦å·ã€‚" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "å‰å¾€ä½ çš„è´¦å·" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "以下地å€å°†å…è®¸ä½ åœ¨%(app_name)sç™»å½•ä¸€æ¬¡ä½ çš„è´¦å·ã€‚" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "请求临时登录密钥" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "è´¦å·ï¼šè¯·æ±‚临时登录密钥" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" -"\n" -" å¦‚æžœä½ åœ¨ç™»å½•è´¦å·æ—¶ç¢°åˆ°å›°éš¾ï¼Œæˆ–æ˜¯ä½ å¿˜è®°äº†ä½ çš„å¯†ç ,\n" -" ä½ å¯ä»¥åœ¨è¿™é‡Œè¯·æ±‚ä¸€ä¸ªä¸´æ—¶ç™»å½•å¯†é’¥ã€‚è¯·å¡«å†™ä½ è´¦å·å…³è”的邮件地å€ï¼Œæˆ‘们会将\n" -" 临时密钥å‘é€åˆ°é‚£é‡Œã€‚该密钥åªèƒ½åœ¨é™åˆ¶çš„时间内使用一次。\n" -" " - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "å‘é€é“¾æŽ¥" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "%(prefix)s欢迎æ¥åˆ°%(app_name)s。" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" -"欢迎æ¥åˆ°%(app_name)s。我们知é“ä½ å¾ˆå¿™ï¼Œæ‰€ä»¥æˆ‘ä»¬ä¼šå°½é‡è®©è¿™ä¸€åˆ‡å˜å¾—更简å•ã€‚" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "è¿™æ˜¯ä½ çš„ç™»å½•ä¿¡æ¯ï¼ˆè¯·æ³¨æ„ä¿ç®¡ï¼‰ï¼š" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "用户å:" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "密ç :我们å¯ä¸ä¼šä»¥æ˜Žæ–‡å‘é€å¯†ç ï¼" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "以下链接å¯ä»¥éªŒè¯ä½ 的邮箱:" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "ç”±%(author)s回ç”çš„" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "%(who)så·²ç»å°†è¿™ä¸ªå›žåˆ°é€‰æ‹©ä¸ºæ£ç¡®å›žç”" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "æ ‡è®°è¿™ä¸ªå›žç”为已采纳" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" -"\n" -"å¦‚æžœä½ å–œæ¬¢è¿™ä¸ªç”æ¡ˆï¼Œä½ å¯ä»¥å¥–励%(awarded_user)s信誉点数。\n" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" -"\n" -"请使用下方的滑å—æˆ–ç›´æŽ¥è¾“å…¥ä½ æƒ³å¥–åŠ±å¤šå°‘ä¿¡èª‰ç‚¹æ•°ã€‚\n" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "点数:" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "需è¦å—æ•°" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "剩余å—æ•°" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr "评论" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "å–消" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -msgid "Use canned comment" -msgstr "使用预置评论" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "编辑评论" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "åˆ é™¤è¯„è®º" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -msgid "Convert comment to answer" -msgstr "将评论转æ¢ä¸ºå›žç”" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "刚æ‰" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "我喜欢这个评论(å†æ¬¡ç‚¹å‡»å¯ä»¥å–消)" - -#: forum/skins/default/templates/node/comments.html:29 -msgid "Convert comment to question" -msgstr "将评论转æ¢ä¸ºé—®é¢˜" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "当å‰%(showing)s,共有%(total)s" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "æ·»åŠ ä¸€ä¸ªæ–°çš„è¯„è®º" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "评论给:" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -msgid "Convert to question" -msgstr "转æ¢ä¸ºé—®é¢˜" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "收è—这个问题(å†æ¬¡ç‚¹å‡»å¯ä»¥å–消)" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" -"\n" -"ä½ æ˜¯å¦æ„¿æ„将永久链接å¤åˆ¶åˆ°å‰ªåˆ‡æ¿ï¼Ÿ\n" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -msgid "Permanent link" -msgstr "永久链接" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "更多" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "请选择列表ä¸çš„åŽŸå› æˆ–åœ¨æ–‡æœ¬æ¡†ä¸è¾“å…¥åŽŸå› ã€‚" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "我喜欢这个帖å(å†æ¬¡ç‚¹å‡»å¯ä»¥å–消)" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "当å‰æŠ•ç¥¨æ•°" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "我ä¸å–œæ¬¢è¿™ä¸ªå¸–å(å†æ¬¡ç‚¹å‡»å¯ä»¥å–消)" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "该%(post_type)sè¢«æ ‡è®°ä¸º\"社区维基\"。" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "请éšæ„<a href=\"%(edit_url)s\">编辑</a>。" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "%(prefix)sç»™%(question_title)s的回ç”已被采纳" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" -"\n" -" %(accepted_by_link)s刚刚采纳了%(answer_author_link)s对于问" -"题%(question_link)s\n" -" 的回ç”。\n" -" " - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" -"\n" -"%(accepted_by)s刚刚采纳了%(answer_author)s对于问题\"%(question_title)s\"\n" -"的回ç”。\n" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "ä½ å¥½" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "谢谢" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "P.S. ä½ éšæ—¶å¯ä»¥è°ƒæ•´å°†æ”¶åˆ°å“ªäº›é€šçŸ¥ã€‚" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "P.S. ä½ éšæ—¶å¯ä»¥åœ¨æ¤è°ƒæ•´å°†æ”¶åˆ°å“ªäº›é€šçŸ¥ï¼š" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "%(prefix)sæ¯æ—¥æ‘˜è¦" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -" 这是%(app_name)s社区在最åŽä¸€æ¬¡æ›´æ–°åŽçš„改动摘è¦ã€‚\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" -"\n" -" 社区有%(new_member_count)sæ–°ç”¨æˆ·åŠ å…¥ã€‚%(new_member_links)sç›®å‰æœ€" -"为活跃。\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -" %(new_member_links)såŠ å…¥äº†%(app_name)s社区。\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" -"\n" -" 最åŽä¸€æ¬¡æ›´æ–°åŽå‘布了%(new_question_count)s%(new_questions_link)s" -"新问题。\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "æˆ‘ä»¬è®¤ä¸ºä½ å¯èƒ½ä¼šå–œæ¬¢ä»¥ä¸‹è¿™äº›é—®é¢˜ï¼š" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "这些问题没有引起用户的é‡è§†ï¼Œä½†æˆ‘ä»¬è®¤ä¸ºä½ å¯èƒ½å¯ä»¥å¸®ä¸Šå¿™ï¼š" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "ä½ çš„%(subscriptions_link)s有一些更新,请查看:" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "这是%(app_name)s社区在最åŽä¸€æ¬¡æ›´æ–°åŽçš„改动摘è¦ã€‚" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" -"社区有%(new_member_count)sæ–°ç”¨æˆ·åŠ å…¥ã€‚%(new_member_links)sç›®å‰æœ€ä¸ºæ´»è·ƒã€‚" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "%(new_member_links)såŠ å…¥äº†%(app_name)s社区。" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "最åŽä¸€æ¬¡æ›´æ–°åŽå‘布了%(new_question_count)s新问题。" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "ä½ çš„è®¢é˜…æœ‰ä¸€äº›æ›´æ–°ï¼Œè¯·æŸ¥çœ‹ï¼š" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "%(flagged_count)s帖å已被举报。" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "%(prefix)s从%(app_name)så‘æ¥çš„å馈信æ¯" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "å‘件人" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "匿å" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "邮件" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "ä¿¡æ¯å†…容:" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "%(prefix)s有新的回ç”:%(question_title)s" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -" %(author_link)s刚刚在%(app_name)så‘表了一个新的回ç”,回ç”的问题" -"是\n" -" %(question_link)s:\n" -" " - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "ä¸è¦å¿˜è®°æ¥è¿›è¡ŒæŠ•ç¥¨ã€‚" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" -"\n" -"%(answer_author)s刚刚在%(safe_app_name)så‘表了一个新的回ç”,回ç”的问题是\n" -"\"%(question_title)s\":\n" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "%(prefix)s有新的评论:%(question_title)s" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "%(author_link)s刚刚评论了" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "ç”±%(post_author)s回ç”çš„" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "问题%(question_link)s的回ç”" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "%(comment_author)s刚刚评论了" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "ç”±%(safe_post_author)s回ç”çš„" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "问题\"%(question_title)s\"的回ç”" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "%(prefix)s%(safe_newmember_name)s是%(safe_app_name)s的新用户" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" -"\n" -" %(newmember_link)såˆšåˆšåŠ å…¥äº†%(app_name)s。\n" -" 查看<a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s的跟人信æ¯</a>。\n" -" " - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" -"\n" -"%(safe_newmember_name)såˆšåˆšåŠ å…¥äº†%(safe_app_name)sã€‚ä½ å¯ä»¥ä½¿ç”¨ä»¥ä¸‹é“¾æŽ¥æŸ¥" -"看%(safe_newmember_name)s的个人信æ¯ï¼š\n" -"%(app_url)s%(newmember_url)s\n" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "%(prefix)s在%(safe_app_name)s有新的问题:%(question_title)s" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" -"\n" -" %(author_link)s刚刚在%(app_name)sæå‡ºäº†æ–°çš„é—®é¢˜ï¼Œæ ‡é¢˜æ˜¯\n" -" %(question_link)s\n" -" æ ‡ç¾æ˜¯\"<em>%(tag_links)s</em>\"。以下是内容:\n" -" " - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" -"\n" -"%(question_author)s 刚刚在%(safe_app_name)sæå‡ºäº†æ–°çš„é—®é¢˜ï¼Œæ ‡é¢˜æ˜¯\n" -"\"%(question_title)s\"æ ‡ç¾æ˜¯%(question_tags)s:\n" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -msgid "Site Administration" -msgstr "站点管ç†" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "OSQAåŽå°ç®¡ç†é¡µé¢" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "切æ¢åˆ°Djangoæ ·å¼ç•Œé¢" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "管ç†èœå•" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "维护模å¼" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "举报管ç†" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -msgid "Create User" -msgstr "创建用户" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -msgid "Quick creation of a new user" -msgstr "快速创建一个新用户" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "ä¿å˜" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "属性清å•" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "欢迎æ¥åˆ°OSQAåŽå°ç®¡ç†é¡µé¢" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "快速统计" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "在过去24å°æ—¶å†…" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "用户" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "在过去24å°æ—¶å†…" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "站点状æ€" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "ä½ çš„ç«™ç‚¹å·²è¿›å…¥å¼•å¯¼æ¨¡å¼ï¼Œç‚¹å‡»ä¸‹æ–¹æŒ‰é’®è¿˜åŽŸåˆ°é»˜è®¤çŠ¶æ€ã€‚" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "ä½ çš„ç«™ç‚¹ç›®å‰ä¸ºé»˜è®¤çŠ¶æ€ï¼Œç‚¹å‡»ä¸‹æ–¹æŒ‰é’®è¿›å…¥åˆ°å¼•å¯¼æ¨¡å¼ã€‚" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" -"ä½ çš„ç«™ç‚¹åº”ç”¨äº†ä¸€äº›è‡ªå®šä¹‰è®¾ç½®ï¼Œç‚¹å‡»ä¸‹æ–¹çš„æŒ‰é’®è¿˜åŽŸåˆ°é»˜è®¤çŠ¶æ€æˆ–进入到引导模å¼ã€‚" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "ä½ ç¡®å®šè¦è¿˜åŽŸåˆ°é»˜è®¤çŠ¶æ€å—?" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "æ¢å¤é»˜è®¤" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "ä½ ç¡®å®šè¦è¿›å…¥å¼•å¯¼æ¨¡å¼ï¼Ÿ" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "引导模å¼" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "最近æ“作" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "åŽå°ç®¡ç†é¡µé¢" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "欢迎," - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "切æ¢åˆ°å¸¸è§„æ ·å¼ç•Œé¢" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "返回首页" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "注销" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "主页" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "未生效修改" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "åšè¿‡ä¿®æ”¹ä¸”è¿˜æ²¡æœ‰ç”Ÿæ•ˆçš„é¡¹ç›®å°†å¸¦æœ‰è¿™ä¸ªå›¾æ ‡ã€‚" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "规则设置" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "站点设置" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "é™æ€å†…容" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "自定义页é¢" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "未ä¿å˜çš„页é¢" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "其他设置" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "管ç†å·¥å…·" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "编辑页é¢" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "自定义页é¢" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "创建页é¢" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "新页é¢" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "å·²å‘布" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "å·²å–消å‘布" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "编辑" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "å–消å‘布" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "å‘布" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "被用户举报的帖å" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "站点统计" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "é‡æ–°è®¡ç®—分数与信誉" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "这是一个ç¹æ‚çš„æ“ä½œï¼Œä½ ç¡®å®šå—?" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "é‡æ–°è®¡ç®—" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "%(prefix)sä½ çš„é‚®ä»¶è®¾ç½®æ˜¯æ£ç¡®çš„:%(app_name)s" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "å¦‚æžœä½ çœ‹åˆ°è¿™äº›å†…å®¹ï¼Œé‚£ä¹ˆä½ çš„é‚®ä»¶è®¾ç½®å°±æ˜¯æ£ç¡®çš„。" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" -"维护模å¼å…è®¸ä½ æš‚æ—¶å°†ç«™ç‚¹å…³é—æ¥ç»´æŠ¤ï¼ˆé€šå¸¸ç»´æŠ¤æ¨¡å¼çŠ¶æ€ä¸‹ä»…å…许æŸäº›ç‰¹å®šçš„IP地å€" -"访问)" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "ä½ çš„ç«™ç‚¹ç›®å‰æ£å¤„于维护模å¼" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "ä½ å¯ä»¥åœ¨ä¸‹é¢è°ƒæ•´è®¾ç½®" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "调整设置" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "å¼€å¯ç«™ç‚¹" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "开始维护" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "管ç†" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "这些工具å¯ä»¥è®©ä½ æœç´¢è¿è§„行为和作弊信æ¯ã€‚" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "确认:" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "ç‰çº§æœ€é«˜çš„用户" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "新用户" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "è€ç”¨æˆ·" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "拥有以下用户å的用户" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "(以英文逗å·åˆ†å‰²çš„用户å列表)" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "开始" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "å¯èƒ½çš„作弊者" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "邮件地å€" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "已验è¯" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "未验è¯" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "信誉:" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "信誉" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "å—å½±å“çš„æ“作" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "IP地å€æ®µ" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "作弊分数" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "å¯èƒ½çš„å‡è´¦å·" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "/" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "信誉" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "使用" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "帖å管ç†" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "帖å批é‡ç®¡ç†" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "é‡ç½®æ–‡æœ¬è¿‡æ»¤" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "内容" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "æ ‡é¢˜å’Œå†…å®¹" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "过滤" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "点击以显示/éšè—" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "类型" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "点击以清除类型过滤" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "所有" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "点击以从过滤ä¸ç§»é™¤" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "点击以å‘过滤ä¸æ·»åŠ " - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "状æ€" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "点击以清除状æ€è¿‡æ»¤" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "ä»»æ„" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "符åˆä»»æ„选择" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "符åˆæ‰€æœ‰é€‰æ‹©" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "作者" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "没有选ä¸ä»»ä½•ç”¨æˆ·ï¼Œè¯·åœ¨ä¸‹æ–¹è¾“入用户åæ¥æ·»åŠ 到过滤。" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "点击用户åæ—边的Xå¯å°†å…¶ä»Žè¿‡æ»¤ä¸ç§»é™¤ã€‚" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "æ ‡ç¾" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "没有选ä¸ä»»ä½•æ ‡ç¾ï¼Œè¯·åœ¨ä¸‹æ–¹è¾“å…¥æ ‡ç¾æ¥æ·»åŠ 到过滤。" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "ç‚¹å‡»æ ‡ç¾æ—边的Xå¯å°†å…¶ä»Žè¿‡æ»¤ä¸ç§»é™¤ã€‚" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "预置" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "没有已ä¿å˜çš„è¿‡æ»¤æ–¹æ¡ˆã€‚è¯·åœ¨ä¸‹æ–¹ç‚¹å‡»æ·»åŠ ã€‚" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "过滤å称..." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "点击以ä¿å˜å½“å‰è¿‡æ»¤" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "æ“作" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "放入回收站" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "从回收站还原" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "å½»åº•åˆ é™¤" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "å…³é—(仅é™äºŽé—®é¢˜ï¼‰" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "è¿è¡Œå·²é€‰æ‹©çš„æ“作" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "类型" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "简介" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "状æ€" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "作者" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "å‘表于" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "最åŽæ“作人" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "最åŽæ“作时间" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "æ ‡ç¾" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "ç”±" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "预览" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "é‡ç½®" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "自定义页é¢" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "å…è®¸ä½ åˆ›å»ºä¸€ç³»åˆ—è‡ªå®šä¹‰é¡µé¢" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "选择è¦ç¼–辑的页é¢" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "页é¢" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "ä½ ç¡®å®šè¦åˆ 除这个页é¢å—?" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -msgid "Delete" -msgstr "åˆ é™¤" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "一些å¯ä»¥å¸®åŠ©ä½ 获知站点ä¸æœ‰ä»€ä¹ˆåŠ¨é™çš„简å•å›¾è¡¨ã€‚" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" -"\n" -" å°è¯•å‘é€é‚®ä»¶ç»™\n" -" " - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" -"\n" -" è¯·æŸ¥çœ‹ä½ çš„æ”¶ä»¶ç®±ï¼Œå¦‚æžœä½ æ”¶åˆ°äº†æµ‹è¯•ä¿¡æ¯ï¼Œé‚£ä¹ˆä½ 邮件的SMTP设置是æ£ç¡®" -"的。\n" -" " - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" -"\n" -" å¦‚æžœä½ æ²¡æœ‰æ”¶åˆ°æµ‹è¯•ä¿¡æ¯ï¼Œé‚£ä¹ˆè¯·æŸ¥çœ‹æ˜¯å¦åœ¨åžƒåœ¾é‚®ä»¶ä¸ï¼Œè€Œå¦‚æžœä»ç„¶æ²¡æœ‰é‚£" -"么请å†æ¬¡æ£€æŸ¥ä½ çš„SMTP设置。\n" -" 也å¯ä»¥æŸ¥çœ‹è®°å½•æ–‡ä»¶ï¼Œé‚£æˆ–许会有帮助。\n" -" " - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "下一页" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "投票" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "这个问题有一个已采纳的回ç”" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "æµè§ˆ" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "ç›¸å…³æ ‡ç¾" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "查看带有\"%(tag_name)s\"æ ‡ç¾çš„问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "最近更新过的问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "活跃" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "最近被æ出的问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "最新" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "最çƒé—®é¢˜" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "最çƒ" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "投票最多的问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "最多" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "退订" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "最åŽæ£€æŸ¥" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "æ„Ÿå…´è¶£çš„æ ‡ç¾" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "å°†\"%(tag_name)s\"ä»Žæ„Ÿå…´è¶£çš„æ ‡ç¾åˆ—表ä¸ç§»é™¤" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "æ·»åŠ " - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "å·²å¿½ç•¥çš„æ ‡ç¾" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "å°†\"%(tag_name)s\"ä»Žå·²å¿½ç•¥çš„æ ‡ç¾åˆ—表ä¸ç§»é™¤" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "æ ¹æ®æ ‡ç¾æœç´¢åˆ°çš„" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "æœç´¢ç»“æžœ" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "æ ¹æ®æ ‡é¢˜æœç´¢åˆ°çš„" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "ç‰å¾…回ç”的问题" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "所有问题" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "Markdown基本è¯æ³•" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -#, fuzzy -msgid "**bold** or __bold__" -msgstr "**文本**或__文本__" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "链接" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "文本" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "图片" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "ç¼–å·åˆ—表:" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "如果想è¦æ¢è¡Œï¼Œåªéœ€è¦åœ¨å‰ä¸€è¡Œç»“尾处æ’å…¥2ä¸ªç©ºæ ¼å³å¯ã€‚" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "支æŒåŸºæœ¬HTMLæ ‡è®°" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "了解更多Markdownè¯æ³•" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "最近奖励" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "全部奖励" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "æœ€è¿‘æ ‡ç¾" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "å¸¸ç”¨æ ‡ç¾" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "编辑用户信æ¯" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "ä¸Žä½ çš„é‚®ä»¶åœ°å€å…³è”的个性头åƒ" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "个性头åƒ" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "已注册的用户" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "显示昵称" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "æ›´æ–°" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "信誉" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "å·²ç¦è¨€" - -#: forum/skins/default/templates/users/info.html:42 -msgid "Administrator" -msgstr "管ç†å‘˜" - -#: forum/skins/default/templates/users/info.html:45 -msgid "Moderator" -msgstr "版主" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "真实姓å" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "åŠ å…¥ä¼šå‘˜" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "最åŽçŽ°èº«" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "用户的主页" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "æ¥è‡ªå“ªé‡Œ" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "年龄" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "年龄å•ä½" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "未验è¯" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "今天未使用的投票" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "剩余投票" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "点数" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "用户工具" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -msgid "Users Online" -msgstr "在线用户" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "匹é…%(suser)s的用户查询:" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "未找到任何结果。" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "å好设置" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "è¿™é‡Œä½ å¯ä»¥è®¾ç½®ä¸€äº›ä¸ªäººå好设置。" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "导航:" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "总是记ä½æˆ‘æµè§ˆçš„列表的排åºæ–¹å¼" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "没有已收è—的问题å¯æ˜¾ç¤ºã€‚" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "å‹‹ç« " - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "(已ç¦è¨€ï¼‰" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span>问题\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span>问题\n" -" " - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span>回ç”\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span>回ç”\n" -" " - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "回ç”å·²ç»è¢«æŠ•äº†%(vote_count)s次票" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "该回ç”å·²è¢«æ ‡è®°ä¸ºæ£ç¡®çš„" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(cnt)s</span>投票\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(cnt)s</span>投票\n" -" " - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "投票支æŒ" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "用户投票支æŒçš„次数" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "投票å对" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "用户投票å对的次数" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span>æ ‡ç¾\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span>æ ‡ç¾\n" -" " - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "查看%(view_user)sä½¿ç”¨æ ‡ç¾\"%(tag_name)s\"的其他问题" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span>å‹‹ç« \n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span>å‹‹ç« \n" -" " - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "管ç†ä½ 当å‰çš„订阅" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "ä¸æ˜¾ç¤ºè‡ªåŠ¨è®¢é˜…" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "显示自动订阅" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "通知与订阅设置" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" -"\n" -" åœ¨è¿™é‡Œä½ å¯ä»¥å†³å®šæ”¶åˆ°ä»€ä¹ˆæ ·çš„通知,以åŠæ”¶åˆ°é€šçŸ¥çš„频率。<br />\n" -" " - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "当有以下情况时通知我:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "æœ‰ä¸€ä¸ªæ–°ä¼šå‘˜åŠ å…¥" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "有一个新问题被æ出" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "æœ‰ä¸€ä¸ªä¸Žæˆ‘æ„Ÿå…´è¶£çš„æ ‡ç¾ç›¸ç¬¦çš„新问题被æ出" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "我的订阅有一个更新" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "为我自动订阅:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "我所æµè§ˆçš„问题" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "æ‰€æœ‰ä¸Žæˆ‘æ„Ÿå…´è¶£çš„æ ‡ç¾ç›¸ç¬¦çš„问题" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "所有的问题" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "订阅相关:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "å·²å‘表一个回ç”" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "å·²å‘表一个关于我的问题的评论" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "å·²å‘表一个评论" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "已采纳一个回ç”" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "æ¯æ—¥æ‘˜è¦ï¼š" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "给我å‘é€æ¯æ—¥æ‘˜è¦ï¼ˆå„ç§ç«™ç‚¹æ´»åŠ¨ï¼‰ã€‚" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "回å¤é€šçŸ¥ï¼š" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" -"当我在站点ä¸çš„ä»»æ„一æ¡è¯„论收到其他用户使用<pre>@username</pre>进行回å¤æ—¶é€šçŸ¥" -"我。" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "ç¦è¨€ç”¨æˆ·" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "永久" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "定期" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "ç¦è¨€" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "天" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "公共信æ¯" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "在æ¤è¾“入的内容会显示在用户的æ“作记录ä¸ã€‚" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "ç§æœ‰ä¿¡æ¯" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "在æ¤è¾“入的内容åªæœ‰è¢«ç¦è¨€çš„用户æ‰èƒ½çœ‹åˆ°ã€‚" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "用户" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "投票支æŒ" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "投票å对" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "1回ç”:" -msgstr[1] "%(counter)s回ç”:" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -#, fuzzy -msgid "tags are required" -msgstr "请输入用户å" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, fuzzy, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" -"\n" -" ï¼ˆä½ å¯ä»¥åœ¨ä½ çš„<a href=\"%(subscriptions_url)s\">个人信æ¯</a>ä¸ä¿®" -"改通知设置。\n" -" " - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "" -"\n" -"å¦‚æžœä½ å–œæ¬¢è¿™ä¸ªç”æ¡ˆï¼Œä½ å¯ä»¥å¥–励%(awarded_user)s信誉点数。\n" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "显示全部" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -#, fuzzy -msgid "Score" -msgstr "分数" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -#, fuzzy -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "总是记ä½æˆ‘æµè§ˆçš„列表的排åºæ–¹å¼" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "信誉点数" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "%(user)så·²ç»é‡‡çº³äº†%(count)d个回ç”" - -#: forum/templatetags/extra_tags.py:120 -#, python-format -msgid "%s has one accepted answer" -msgstr "%s有一个已采纳的回ç”" - -#: forum/templatetags/extra_tags.py:126 -#, python-format -msgid "%s has no accepted answers" -msgstr "%s还没有已采纳的回ç”" - -#: forum/templatetags/extra_tags.py:132 -msgid "accept rate" -msgstr "采纳率" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "用户的回ç”采纳率" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "2天之å‰" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "昨天" - -#: forum/templatetags/extra_tags.py:170 -msgid "hour ago" -msgstr "å°æ—¶ä¹‹å‰" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "å°æ—¶ä¹‹å‰" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "%(hr)d " -msgstr[1] "%(hr)d " - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "分钟之å‰" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "分钟之å‰" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "%(min)d " -msgstr[1] "%(min)d " - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "秒之å‰" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "秒之å‰" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "%(sec)d " -msgstr[1] "%(sec)d " - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "永久链接" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "回ç”的永久链接" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "奖励点数" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "奖励点数给%s" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "é‡æ–°æ ‡ç¾" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "é‡æ–°å¼€å¯" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "å…³é—" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "举报" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "举报帖å(垃圾信æ¯ï¼Œå¹¿å‘Šï¼Œæ¶æ„攻击他人,ç‰ç‰ï¼‰" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "æ’¤é”€åˆ é™¤" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "查看版本å·" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "æ ‡è®°ä¸ºç¤¾åŒºç»´åŸº" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "撤销社区维基" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "转æ¢ä¸ºè¯„论" - -#: forum/templatetags/node_tags.py:175 -msgid "convert to question" -msgstr "转æ¢ä¸ºé—®é¢˜" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "å·²å‘表" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "问题图表" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "用户图表" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "\"%s设置\"ä¿å˜æˆåŠŸ" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "引导模å¼å·²å¯åŠ¨" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "所有设置已还原为默认状æ€" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "所有设置已é‡æ–°è®¡ç®—" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "维护模å¼å·²å¯åŠ¨" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "设置已调整" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "站点已æ£å¸¸è¿è¡Œ" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "æ£åœ¨ç»´æŠ¤ï¼Œé©¬ä¸Šå›žæ¥ã€‚" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "createuser" -msgstr "创建用户" - -#: forum/views/admin.py:415 -msgid "Create new user" -msgstr "创建新用户" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "新用户已创建æˆåŠŸã€‚%s。" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "查看%s的个人信æ¯" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "added_at" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "added_at_asc" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "作者" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "author_asc" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "分数" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "score_asc" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "act_at" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "act_at_asc" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "act_by" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "act_by_asc" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "批é‡ç®¡ç†" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "批é‡ç®¡ç†" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "过滤" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "未进行任何æ“作" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "所有已选帖å已放入回收站" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "所有已选帖å已从回收站还原" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "批é‡å…³é—" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "选ä¸çš„问题已关é—。" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "所有已选择帖åå·²è¢«åˆ é™¤" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "抱æ‰ï¼Œè¿™äº›ç™»å½•ä¿¡æ¯æ˜¯å±žäºŽå¦ä¸€ä¸ªç”¨æˆ·çš„。请终æ¢è¯¥ä¼šè¯å†é‡æ–°å°è¯•ã€‚" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "ä½ å·²ç»ä»¥è¯¥ç”¨æˆ·å登录。" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "这些登录信æ¯å·²ç»ä¸Žä½ çš„è´¦å·å…³è”了。" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "这些登录信æ¯å·²ç»ä¸Žä½ çš„è´¦å·å…³è”了。" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" -"抱æ‰ï¼Œåœ¨è¯¥æ“作过程ä¸å‘生错误。请é‡æ–°å°è¯•ã€‚æ³¨ï¼šä½ éœ€è¦å¯åŠ¨Cookiesæ‰èƒ½ä½¿éªŒè¯æ£å¸¸" -"工作。" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "一å°æ¬¢è¿Žé‚®ä»¶å·²å‘é€åˆ°ä½ 的邮箱了。" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "抱æ‰ï¼Œåœ¨è¯¥æ“作过程ä¸å‘生错误。请é‡æ–°å°è¯•ã€‚" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "一å°å¸¦æœ‰ä¸´æ—¶ç™»å½•å¯†ç 的邮件已å‘é€åˆ°ä½ 的邮箱了。" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "ä½ çŽ°åœ¨æ˜¯ä»¥ä¸´æ—¶å¯†ç 登录,请ä¸è¦å¿˜è®°ä¿®æ”¹å¯†ç 。" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "一å°å¸¦æœ‰éªŒè¯é“¾æŽ¥çš„邮件已ç»å‘é€åˆ°ä½ 的邮箱了。" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "è°¢è°¢ï¼Œä½ çš„é‚®ç®±å·²å®ŒæˆéªŒè¯ã€‚" - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "新的密ç " - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "ä½ çš„å¯†ç å·²æˆåŠŸä¿®æ”¹" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "ä½ ç§»é™¤äº†ä¸Ž%sçš„å…³è”" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "欢迎回æ¥%sï¼Œä½ å·²æˆåŠŸç™»å½•ã€‚" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "ä½ æœ‰ä¸€ä¸ª%sç‰å¾…æ交。" - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "ä¿å˜" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "å®¡æ ¸" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "å–消" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "抱æ‰ï¼Œè¿™ä¸ªè´¦å·å·²è¢«ç¦è¨€ã€‚" - -#: forum/views/commands.py:28 -#, fuzzy, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" -"抱æ‰ï¼Œä½ 还没有足够的信誉点数æ¥è¿›è¡Œ%(action)s。<br />请查看<a " -"href='%(faq_url)s'>常è§é—®é¢˜</a>。" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"抱æ‰ï¼Œä½ 还没有足够的信誉点数æ¥è¿›è¡Œ%(action)s。<br />请查看<a " -"href='%(faq_url)s'>常è§é—®é¢˜</a>。" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" -"抱æ‰ï¼Œä½ ä¸èƒ½å¯¹ä½ 自己的帖å进行%(action)s。<br />请查看<a href='%(faq_url)s'>" -"常è§é—®é¢˜</a>。" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" -"抱æ‰ï¼ŒåŒ¿å用户ä¸èƒ½è¿›è¡Œ%(action)s。<br />请在<a href='%(signin_url)s'>这里</a>" -"登陆或创建新账å·ã€‚" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"抱æ‰ï¼Œä»Šå¤©ä½ å·²ä¸èƒ½å†è¿›è¡Œ%(action)s了。<br />上é™æ¬¡æ•°æ˜¯æ¯å¤©%(limit)s次。<br />" -"请查看<a href='%(faq_url)s'>常è§é—®é¢˜</a>。" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" -"抱æ‰ï¼Œä½ ä¸èƒ½åœ¨åŒä¸€ä¸ªå¸–å进行多次%(action)s。<br />请查看<a " -"href='%(faq_url)s'>常è§é—®é¢˜</a>。" - -#: forum/views/commands.py:106 -#, fuzzy, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "抱æ‰ï¼Œä½ ä¸èƒ½åœ¨æŠ•ç¥¨%(ndays)d%(tdays)s之åŽå–消投票。" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "天" -msgstr[1] "天" - -#: forum/views/commands.py:128 -#, fuzzy, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "ä½ ä»Šå¤©è¿˜å¯ä»¥è¿›è¡Œ%(nvotes)s次投票。" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "举报帖å" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "举报" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "举报" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "ä½ å·²ç»ä»¥ä¸‹è¿°åŽŸå› 举报了这个帖å:%(reason)s" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "åŽŸå› ä¸ºç©º" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "谢谢,管ç†å‘˜ä¼šå°½å¿«æŸ¥çœ‹ä½ æ交的信æ¯ã€‚" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "喜欢评论" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "喜欢" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "åˆ é™¤è¯„è®º" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "收è—一个问题" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "请求错误" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "评论是空的" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "评论å—数最少è¦æœ‰%d。" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "评论å—数最多ä¸èƒ½è¶…过%d。" - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "编辑评论" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "采纳回ç”" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "抱æ‰ï¼Œä½ ä¸èƒ½é‡‡çº³å›žç”" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "该问题已ç»é‡‡çº³äº†ä¸€ä¸ªå›žç”。" -msgstr[1] "抱æ‰ï¼Œè¿™ä¸ªé—®é¢˜é‡‡çº³çš„回ç”æ•°é‡å·²è¾¾åˆ°ä¸Šé™ã€‚" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "该回ç”的作者已ç»æœ‰ä¸€ä¸ªå›žç”被这个问题采纳了。" -msgstr[1] "抱æ‰ï¼Œè¿™ä¸ªå›žç”的作者已ç»è¾¾åˆ°äº†å•ä¸€é—®é¢˜å›žç”被采纳数上é™ã€‚" - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "åˆ é™¤å¸–å" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "å…³é—问题" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "é‡æ–°å¼€å¯é—®é¢˜" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "æ ‡è®°å¸–å为社区维基" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "å–消一个社区维基帖å" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "转æ¢é—®é¢˜ä¸ºè¯„论" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "ç”±%(uname)s回ç”:%(snippet)s..." - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "问题" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "ä¸èƒ½å¯¹é‚£ä¸ªå¸–åå‘表评论" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -msgid "convert comments to answers" -msgstr "转æ¢è¯„论为回ç”" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "ä½ æ²¡æœ‰è¶³å¤Ÿçš„æƒé™æ¥å®Œæˆè¿™ä¸ªæ“作。" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "ç”案的永久链接已ç»å¤åˆ¶åˆ°ä½ 的剪贴æ¿ã€‚" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -msgid "award" -msgstr "奖励" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "奖励点数的数值必须为æ£æ•°ã€‚" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "ä½ å¥–åŠ±äº†%(points)d点给%(awarded_user)s" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "抱æ‰ï¼Œå‘生了一个未知错误。<br />请在ç¨åŽé‡è¯•ã€‚" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "æ„Ÿè°¢ä½ çš„å馈ï¼" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "æˆ‘ä»¬å¸Œæœ›å¾—åˆ°ä½ çš„å馈ï¼è¯·åœ¨ä¸‹æ¬¡å¡«å†™o(∩_∩)o" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "最近<strong>更新过</strong>的问题" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "最近<strong>æ出过</strong>的问题" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "过去24å°æ—¶å†…<strong>最活跃</strong>的问题" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "最多" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "最近<strong>投票最多</strong>的问题" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "最è€" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "最è€" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "最è€çš„回ç”会显示在首ä½" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "最新" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "最新的回ç”会显示在首ä½" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "最çƒ" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "投票最多的回ç”会显示在首ä½" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "å称" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "å称" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "æ ¹æ®å—æ¯é¡ºåºæŽ’åº" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "æµè¡Œ" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "æµè¡Œ" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "æ ¹æ®æµè¡Œç¨‹åº¦æŽ’åº" - -#: forum/views/readers.py:72 -msgid " - " -msgstr " - " - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "最新问题" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "ç‰å¾…回ç”" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "å¼€å¯çŠ¶æ€ä¸”没有已采纳回ç”的问题" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "ç‰å¾…回ç”的问题" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "å¸¦æœ‰æ ‡ç¾<span class=\"tag\">%(tag)s</span>的问题" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "å¸¦æœ‰æ ‡ç¾%(tag)s的问题" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "ç”±%sæ出的问题" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "ç”±%s回ç”的问题" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "ä½ è®¢é˜…çš„é—®é¢˜%s" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "%s订阅了问题" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "问题" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "ç‰çº§" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "相关" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "相关度最高的问题" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "符åˆå…³é”®è¯\"%(keywords)s\"的问题" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "版本å·n.%(rev_number)d" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "æ ¹æ®ä¿¡èª‰æŽ’åº" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "最新" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "新会员" - -#: forum/views/users.py:40 -msgid "last" -msgstr "最è€" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "å…ƒè€ç”¨æˆ·" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "å称" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "æ ¹æ®ç”¨æˆ·å排åº" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "在线用户" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "个人信æ¯å·²æ›´æ–°ã€‚" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "åªæœ‰è¶…级用户å¯ä»¥æ›´æ”¹å…¶ä»–用户的æƒé™ã€‚" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "åªæœ‰ç«™ç‚¹æ‹¥æœ‰è€…å¯ä»¥å°†è¶…级用户的æƒé™å–消。" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "åªæœ‰è¶…级用户å¯ä»¥å¥–励信誉点数。" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "奖励点数数值ä¸æ£ç¡®ã€‚" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "åªæœ‰è¶…级用户å¯ä»¥ç¦è¨€å…¶ä»–用户。" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "ç¦è¨€å¤©æ•°æ•°å€¼ä¸æ£ç¡®ã€‚" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "总览" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "用户总æ½" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "最近" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "用户最近æ“作" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "信誉" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "用户信誉点数图表" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "用户投票记录" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "收è—" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "用户已收è—的问题" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "订阅" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "订阅" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "新的订阅设置已ä¿å˜" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "å好设置" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "æ–°çš„å好设置已ä¿å˜" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "åªæœ‰ä¿¡èª‰ç‚¹æ•°å¤§äºŽ60的用户æ‰å¯ä»¥ä¸Šä¼ 图片" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "å…许的文件类型:'jpg','jpeg','gif','bmp','png','tiff'" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "ä¸Šä¼ æ–‡ä»¶çš„æœ€å¤§å¤§å°ä¸º%s MB" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "ä¸Šä¼ æ–‡ä»¶å¤±è´¥ã€‚è¯·è”系站点管ç†å‘˜ã€‚谢谢。%s" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "ç›´åˆ°ä½ %sï¼Œä½ çš„é—®é¢˜å°†ä¸€ç›´å¤„äºŽç‰å¾…状æ€ã€‚" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "验è¯ä½ 的邮箱" - -#: forum/views/writers.py:129 -msgid "Converted to question" -msgstr "转æ¢ä¸ºé—®é¢˜" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "ç›´åˆ°ä½ %sï¼Œä½ çš„å›žç”将一直处于ç‰å¾…状æ€ã€‚" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "WordPress API Key" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" -"ä½ çš„WordPress API Key,å¯ä»¥åœ¨<a href='http://wordpress.com/'>WordPress官方网" -"ç«™</a>获得。" - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "垃圾信æ¯æ£€æŸ¥é™åˆ¶" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" -"当用户的信誉点数达到该数值时,他们在å‘布问题ã€å›žç”或评论时将ä¸å†è¢«æ£€æŸ¥æ˜¯å¦å«" -"有垃圾信æ¯ã€‚" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "抱æ‰ï¼Œä½†Akismetè®¤ä¸ºä½ çš„%s是垃圾信æ¯ã€‚" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "Akismetä¿¡æ¯" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "Akismetè®¤ä¸ºä½ çš„%(action_name)så«æœ‰åžƒåœ¾ä¿¡æ¯ã€‚" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" -"\n" -"我们很抱æ‰ï¼Œä½†Akismetè®¤ä¸ºä½ çš„%(action_name)så«æœ‰åžƒåœ¾ä¿¡æ¯ã€‚<br />\n" -"å¦‚æžœä½ è§‰å¾—æœ‰é—®é¢˜ï¼Œè¯·è”系管ç†å‘˜ã€‚\n" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "æ交" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "æ出了一个被æµè§ˆäº†%s次的问题" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "æµè¡Œå¤©çŽ‹" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "声å远扬" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "举世闻å" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "获得%s次支æŒæŠ•ç¥¨çš„问题" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "ä¸é”™çš„问题" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "很好的问题" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "æžå¥½çš„问题" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "获得%s次支æŒæŠ•ç¥¨çš„回ç”" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "ä¸é”™çš„回ç”" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "很好的回ç”" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "æžå¥½çš„回ç”" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "æ出一个被%s用户收è—的问题" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "收è—夹" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "è—ç»é˜" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "自我惩戒" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "åˆ é™¤è‡ªå·±è¾¾åˆ°æˆ–é«˜äºŽ%s分的帖å" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "åŒä¾ªåŽ‹åŠ›" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "åˆ é™¤è‡ªå·±è¾¾åˆ°æˆ–ä½ŽäºŽ%s分的帖å" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "批评家" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "第一次投票å对" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "拥护者" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "第一次投票支æŒ" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "大众巡è¦" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "第一次举报帖å" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "å‘起人" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "第一次é‡æ–°æ ‡ç¾å¸–å" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "主编" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "第一次编辑帖å" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "å¦è€…" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "第一次为自己的问题采纳ç”案" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "清é“夫" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "第一次回滚帖å" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "æˆ‘çš„è‡ªä¼ " - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "补全个人信æ¯" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "公民义务" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "进行%s次投票" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "æƒå¨äººå£«" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "å‘表%sæ¡è¯„论" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "自å¦æˆæ‰" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "回ç”了自己最少有%s次支æŒæŠ•ç¥¨çš„问题" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "写作指å—" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "编辑了%s个帖å(问题或回ç”)" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "å¦å¾’" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "第一次æ出得到一次支æŒæŠ•ç¥¨çš„问题" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "教授" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "第一次回ç”得到一次支æŒæŠ•ç¥¨çš„问题" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "心满æ„足" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "获得%s次支æŒæŠ•ç¥¨çš„回ç”被第一次采纳" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "人民领袖" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "采纳回ç”并进行%s次支æŒæŠ•ç¥¨" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "æ»çµæ³•å¸ˆ" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "在%(dif_days)s天之åŽå›žç”了一个最少有%(up_votes)s次投票的问题" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "分类å¦å®¶" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "创建了一个被%sä¸ªé—®é¢˜ä½¿ç”¨çš„æ ‡ç¾" - -#: forum_modules/default_badges/badges.py:326 -msgid "Validated Email" -msgstr "验è¯é‚®ç®±" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "æˆåŠŸå®Œæˆé‚®ç®±çš„验è¯" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "æµè¡Œå¤©çŽ‹" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" -"\n" -"获得æµè¡Œå¤©çŽ‹å‹‹ç« 需è¦è¾¾åˆ°çš„æµè§ˆæ•°ã€‚\n" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "声å远扬" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" -"\n" -"获得声åè¿œæ‰¬å‹‹ç« éœ€è¦è¾¾åˆ°çš„æµè§ˆæ•°ã€‚\n" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "举世闻å" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" -"\n" -"获得举世闻åå‹‹ç« éœ€è¦è¾¾åˆ°çš„æµè§ˆæ•°ã€‚\n" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "ä¸é”™çš„回ç”" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"获得ä¸é”™çš„回ç”å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "ä¸é”™çš„问题" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" -"\n" -"获得ä¸é”™çš„é—®é¢˜å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "很好的回ç”" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"获得很好的回ç”å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "很好的问题" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" -"\n" -"èŽ·å¾—å¾ˆå¥½çš„é—®é¢˜å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "æžå¥½çš„回ç”" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"获得æžå¥½çš„回ç”å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "æžå¥½çš„问题" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" -"\n" -"获得æžå¥½çš„é—®é¢˜å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "收è—夹" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" -"\n" -"获得收è—å¤¹å‹‹ç« éœ€è¦è¾¾åˆ°çš„收è—数。\n" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "è—ç»é˜" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" -"\n" -"获得è—ç»é˜å‹‹ç« 需è¦è¾¾åˆ°çš„收è—数。\n" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "自我惩戒" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" -"\n" -"èŽ·å¾—è‡ªæˆ‘æƒ©æˆ’å‹‹ç« éœ€è¦è¾¾åˆ°çš„最低分。\n" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "åŒä¾ªåŽ‹åŠ›" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" -"\n" -"获得åŒä¾ªåŽ‹åŠ›å‹‹ç« 需è¦è¾¾åˆ°çš„最高分。\n" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "公民义务" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" -"\n" -"èŽ·å¾—å…¬æ°‘ä¹‰åŠ¡å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "æƒå¨äººå£«" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" -"\n" -"获得æƒå¨äººå£«å‹‹ç« 需è¦è¾¾åˆ°çš„评论数。\n" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "自å¦æˆæ‰" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" -"\n" -"获得自å¦æˆæ‰å‹‹ç« 需è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "写作指å—" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" -"\n" -"获得写作指å—å‹‹ç« éœ€è¦è¾¾åˆ°çš„编辑数(问题或回ç”)。\n" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "心满æ„足" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" -"\n" -"获得心满æ„è¶³å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "人民领袖" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" -"\n" -"èŽ·å¾—äººæ°‘é¢†è¢–å‹‹ç« éœ€è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "æ»çµæ³•å¸ˆ" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" -"\n" -"获得æ»çµæ³•å¸ˆå‹‹ç« 需è¦è¾¾åˆ°çš„投票数。\n" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "æ»çµæ³•å¸ˆ" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" -"\n" -"获得æ»çµæ³•å¸ˆå‹‹ç« 需è¦è¾¾åˆ°çš„间隔天数。\n" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "分类å¦å®¶" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" -"\n" -"获得分类å¦å®¶å‹‹ç« 需è¦è¾¾åˆ°çš„æ ‡ç¾ä½¿ç”¨æ•°ã€‚\n" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "æ£åœ¨åŽ‹ç¼©XML文件" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "æ£åœ¨å¯¼å…¥å·²ä¸Šä¼ 的文件" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "æ£åœ¨å¯¼å…¥çš®è‚¤è·¯å¾„" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "æ£åœ¨å†™å…¥INF文件" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "æ£åœ¨ä¿å˜å¤‡ä»½æ–‡ä»¶" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "已队列" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "开始" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "æ£åœ¨å¯¼å‡º%s" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "æ£åœ¨å¯¼å‡º" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "æ£åœ¨å†™å…¥ä¸´æ—¶æ–‡ä»¶" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "æ£åœ¨å†™å…¥%s临时文件" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "完æˆ" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "æ£åœ¨åŽ‹ç¼©æ–‡ä»¶" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "帖å" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "æ“作" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "奖励" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "设置" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "tar.gz" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "zip" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "æ–‡ä»¶æ ¼å¼" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "å¤‡ä»½æ–‡ä»¶çš„åŽ‹ç¼©æ ¼å¼ã€‚" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "匿åæ•°æ®" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "ä¸å¯¼å‡ºç”¨æˆ·æ•°æ®å¹¶å°†æ‰€æœ‰å†…容改为匿å。" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "å·²ä¸Šä¼ çš„æ–‡ä»¶" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "在备份ä¸åŒ…å«ä¸Šä¼ 的文件。" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "皮肤路径" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "在备份ä¸åŒ…å«çš®è‚¤è·¯å¾„。" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "æ£åœ¨å¯¼å…¥%s" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "导入ä¸" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "导出设置" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "æ•°æ®å¯¼å‡ºè®¾ç½®" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "备份路径" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "å°†ä½ çš„å¤‡ä»½ä¿æŒæœ‰åºçš„一个路径。" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "exporter/" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "state/" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "running/" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "download/" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "导出" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "XMLæ•°æ®å¯¼å‡º" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "XMLæ•°æ®å¯¼å‡º" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "将数æ®åº“导出为XMLæ ¼å¼" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "å¯ç”¨çš„备份" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "开始新的备份" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "开始" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "XMLæ•°æ®å¯¼å…¥" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "从转储的文件ä¸å¯¼å…¥æ•°æ®" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "从之å‰å¯¼å‡ºçš„文件æ¢å¤æ•°æ®" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "已略过" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "ä½ çš„å¤‡ä»½å·²å¯ä»¥ä¸‹è½½ã€‚" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "æˆåŠŸå¯¼å…¥æ‰€æœ‰æ•°æ®ã€‚" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "在导出过程ä¸å‘生了一个错误" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "在导入过程ä¸å‘生了一个错误" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "请检查记录文件æ¥æŸ¥çœ‹å®Œæ•´çš„å †æ ˆè·Ÿè¸ªã€‚" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "请ç‰å¾…æˆ‘ä»¬å‡†å¤‡ä½ çš„å¤‡ä»½æ–‡ä»¶ä»¥ä¸‹è½½ã€‚" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "请ç‰å¾…æˆ‘ä»¬å¯¼å…¥ä½ çš„æ•°æ®ã€‚" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" -"\n" -" 已开始<span id=\"time_started\"></span>\n" -" " - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "下载文件" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "整体进程" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "/" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "请输入æ£ç¡®çš„用户å和密ç (二者都区分大å°å†™ï¼‰ã€‚" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "登录失败。" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "该用户ä¸æ˜¯æœ‰æ•ˆç”¨æˆ·ã€‚" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "请输入用户å和密ç " - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "请输入密ç " - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "请输入用户å" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "local/" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "è¾“å…¥ä½ çš„ç”¨æˆ·å和密ç " - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "或在上方选择关è”登录的æ供方" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "用户å" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "密ç " - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "创建账å·" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "忘记密ç ?" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "å‘生错误,验è¯ä»¤ç‰Œä¸åœ¨æœåŠ¡å™¨ä¸Šã€‚" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "å‘生错误ï¼éªŒè¯ä»¤ç‰Œä¸ç¬¦ã€‚" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "Twitter Consumer Key" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" -"\n" -"请到这里<a href=\"http://twitter.com/apps/\">Twitter Apps</a>获å–,\n" -"å¯å¯ç”¨ç«™ç‚¹ä¸ŽTwitter的认è¯ã€‚\n" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "Twitter Consumer Secret" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" -"\n" -"与Twitter Consumer Key在åŒä¸€å¤„获å–。\n" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "Twitter自动回调跳转" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" -"\n" -"自动跳转到Twitter的认è¯å®Œæˆé¡µé¢ï¼Œå¹¶ä¼ 递å‚æ•°oauth_callback。\n" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "åŽ‹ç¼©æ ¼å¼ä¸º%s的内容解压失败。" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "ä¸æ”¯æŒçš„QOP值:%s" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "ä¸æ”¯æŒçš„算法值:%s" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "挑战未包å«æœåŠ¡å™¨éšæœºæ•°ï¼Œæˆ–为空。" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "ä¸æ”¯æŒçš„密ç 算法值:%s" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "已跳转,但返回信æ¯ç¼ºå°‘一个区域:页头" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "抱æ‰ï¼Œä½†æ˜¯ä½ 输入的ä¸æ˜¯ä¸€ä¸ªæœ‰æ•ˆçš„OpenID" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "OpenID验è¯è¯·æ±‚å·²å–消" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "OpenID验è¯å¤±è´¥ï¼š" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "需è¦é…ç½®" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "OpenID验è¯å¤±è´¥ï¼ˆæœªçŸ¥é”™è¯¯ï¼‰ï¼š" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "è¾“å…¥ä½ çš„OpenID地å€" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "æ•è™«ä¸“家" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "åœ¨ä¸€ä¸ªä½¿ç”¨æ ‡ç¾\"bug\"的问题ä¸èŽ·å¾—%s支æŒæŠ•ç¥¨" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "验è¯ç æ— æ•ˆ" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "用户 - %(id)s" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "用户 - %(id)s(Google)" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "用户 - %(id)s(Yahoo)" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "sximporter/" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "SX导入" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "æ¬¢è¿Žä½¿ç”¨å †æ ˆäº¤æ¢è½¬å‚¨å¯¼å…¥ã€‚" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "ä½ çš„ç”¨æˆ·åæ£åœ¨è¿›è¡Œå †æ ˆäº¤æ¢" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "åˆå¹¶æ‹¥æœ‰ç›¸åŒç”¨æˆ·å和邮件地å€çš„用户" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "未能连接更新æœåŠ¡å™¨ã€‚" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "未能获å–更新。" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "已下载%d个更新。" - -#: forum_modules/updates/settings.py:8 -msgid "Updater Settings" -msgstr "更新设置" - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "OSQA更新设置" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" -"\n" -"使用OSQAæ›´æ–°æœåŠ¡å™¨æ¥æŽ¥å—关于最新更新的通知。\n" - -#: forum_modules/updates/urls.py:8 -msgid "updater/" -msgstr "updater/" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "check/" - -#: forum_modules/updates/views.py:8 -msgid "updater" -msgstr "æ›´æ–°" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "检查更新" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "æ£åœ¨æ£€æŸ¥æ›´æ–°" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "在OSQAæ›´æ–°æœåŠ¡å™¨ä¸Šæ£€æŸ¥æ›´æ–°" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "检查更新" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "测试1" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "测试2" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "测试3" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "测试n" - -#~ msgid "Facebook API key" -#~ msgstr "Facebook API Key" - -#~ msgid "" -#~ "Get this key at the <a href=\"http://www.facebook.com/developers/" -#~ "\">Facebook developers network</a> to enable authentication in your site " -#~ "through facebook." -#~ msgstr "" -#~ "请到这里<a href=\"http://www.facebook.com/developers/\">Facebookå¼€å‘者网络" -#~ "</a>获å–,å¯å¯ç”¨ç«™ç‚¹ä¸ŽFacebook的认è¯ã€‚" - -#~ msgid "Facebook APP secret" -#~ msgstr "Facebook APP Secret" - -#~ msgid "" -#~ "This your facebook app secret that you'll get in the same place as the " -#~ "API key." -#~ msgstr "与Facebook API Key在åŒä¸€å¤„获å–。" - -#~ msgid "About page" -#~ msgstr "关于站点页é¢" - -#~ msgid "" -#~ "Define the text in the about page. You can use markdown and some basic " -#~ "html tags." -#~ msgstr "编辑关于站点页é¢çš„内容(å¯ä»¥ä½¿ç”¨Markdownæ ‡è®°å’Œä¸€äº›åŸºç¡€HTMLæ ‡è®°ï¼‰" - -#~ msgid "About page text" -#~ msgstr "关于站点页é¢å†…容" - -#~ msgid "The about page." -#~ msgstr "关于站点页é¢ã€‚" - -#~ msgid "" -#~ "The short name for your application that will show up in many places." -#~ msgstr "站点的çŸå称,在很多地方都会显示。" - -#~ msgid "FAQ page" -#~ msgstr "常è§é—®é¢˜é¡µé¢" - -#~ msgid "" -#~ "Define the text in the faq page. You can use markdown and some basic html " -#~ "tags." -#~ msgstr "编辑常è§é—®é¢˜é¡µé¢çš„内容(å¯ä»¥ä½¿ç”¨Markdownæ ‡è®°å’Œä¸€äº›åŸºæœ¬HTMLæ ‡è®°ï¼‰" - -#~ msgid "FAQ page text" -#~ msgstr "常è§é—®é¢˜é¡µé¢å†…容" - -#~ msgid "The faq page." -#~ msgstr "常è§é—®é¢˜é¡µé¢ã€‚" - -#~ msgid "Sidebar content" -#~ msgstr "è¾¹æ 内容" - -#~ msgid "" -#~ "Enter contents to display in the sidebar. You can use markdown and some " -#~ "basic html tags." -#~ msgstr "输入将显示在边æ çš„å†…å®¹ï¼ˆä½ å¯ä»¥ä½¿ç”¨Markdownæ ‡è®°å’Œä¸€äº›åŸºç¡€HTMLæ ‡è®°ï¼‰" - -#~ msgid "Question title tips" -#~ msgstr "é—®é¢˜æ ‡é¢˜æ示" - -#~ msgid "" -#~ "Tips visible on the ask or edit questions page about the question title." -#~ msgstr "在æå‡ºæˆ–ç¼–è¾‘é—®é¢˜æ—¶ï¼Œå¯¹äºŽå¦‚ä½•æ€»ç»“æ ‡é¢˜çš„ä¸€äº›æ示信æ¯ã€‚" - -#~ msgid "Tagging tips" -#~ msgstr "æ ‡ç¾æ示" - -#~ msgid "Tips visible on the ask or edit questions page about good tagging." -#~ msgstr "在æå‡ºæˆ–ç¼–è¾‘é—®é¢˜æ—¶ï¼Œå¯¹äºŽå¦‚ä½•æ·»åŠ æ ‡ç¾çš„一些æ示信æ¯ã€‚" - -#~ msgid "Show Upper Block" -#~ msgstr "显示边æ 顶部模å—" - -#~ msgid "Check if your pages should display the upper sidebar block." -#~ msgstr "是å¦æ˜¾ç¤ºè¾¹æ 的顶部模å—。" - -#~ msgid "Don't Wrap Upper Block" -#~ msgstr "顶部模å—ä¸ä½¿ç”¨æ ·å¼" - -#~ msgid "Don't wrap upper block with the standard style." -#~ msgstr "顶部模å—ä¸ä½¿ç”¨å¸¸è§„èƒŒæ™¯æ ·å¼ã€‚" - -#~ msgid "Upper Block Content" -#~ msgstr "顶部模å—内容" - -#~ msgid "The upper sidebar block." -#~ msgstr "è¾¹æ 顶部模å—。" - -#~ msgid "Show Lower Block" -#~ msgstr "显示底部模å—" - -#~ msgid "Check if your pages should display the lower sidebar block." -#~ msgstr "是å¦æ˜¾ç¤ºè¾¹æ 的底部模å—。" - -#~ msgid "Don't Wrap Lower Block" -#~ msgstr "底部模å—ä¸ä½¿ç”¨æ ·å¼" - -#~ msgid "Don't wrap lower block with the standard style." -#~ msgstr "底部模å—ä¸ä½¿ç”¨å¸¸è§„èƒŒæ™¯æ ·å¼ã€‚" - -#~ msgid "Lower Block Content" -#~ msgstr "底部模å—内容" - -#~ msgid "The lower sidebar block." -#~ msgstr "è¾¹æ 底部模å—。" - -#~ msgid "Define some custom css you can use to override the default css." -#~ msgstr "定义优先于默认CSSæ ·å¼çš„自定义CSSæ ·å¼" - -#~ msgid "Header and Footer" -#~ msgstr "页头和页脚" - -#~ msgid "Adds a custom header and/or footer to your page" -#~ msgstr "ç»™ä½ çš„é¡µé¢æ·»åŠ 自定义页头和/或页脚" - -#~ msgid "<head>" -#~ msgstr "头信æ¯" - -#~ msgid "" -#~ "Define some custom elements to include in the head section of every page." -#~ msgstr "编辑一些应用于æ¯ä¸ªé¡µé¢çš„自定义头信æ¯å…ƒç´ " - -#~ msgid "italic" -#~ msgstr "斜体" - -#~ msgid "*text* or _text_" -#~ msgstr "*文本*或_文本_" - -#~ msgid "bold" -#~ msgstr "粗体" - -#~ msgid "Sorry, your Facebook session has expired, please try again" -#~ msgstr "抱æ‰ï¼Œä½ çš„Facebook登录期é™å·²ç»åˆ°ï¼Œè¯·é‡è¯•ã€‚" - -#~ msgid "" -#~ "The authentication with Facebook connect failed, cannot find " -#~ "authentication tokens" -#~ msgstr "与Facebook的验è¯è¿žæŽ¥å¤±è´¥ï¼Œæ— 法找到验è¯ä»¤ç‰Œã€‚" - -#~ msgid "Robots txt" -#~ msgstr "机器人文本" - -#~ msgid "Set up the robots.txt file." -#~ msgstr "设置机器人文本robots.txt文件" - -#~ msgid "Robots.txt file" -#~ msgstr "robots.txt文件" - -#~ msgid "The robots.txt file search engine spiders will see." -#~ msgstr "æœç´¢å¼•æ“ŽæŠ“å–内容模拟器所能看到的robots.txt文件。" - -#~ msgid "Check for updates" -#~ msgstr "检查更新" - -#~ msgid "Enter a valid e-mail address." -#~ msgstr "请输入一个æ£ç¡®çš„邮件地å€" - -#~ msgid "basic" -#~ msgstr "基本" - -#~ msgid "paths" -#~ msgstr "ä¸Šä¼ " - -#~ msgid "extkeys" -#~ msgstr "外部接å£" - -#~ msgid "repgain" -#~ msgstr "信誉增长与æŸå¤±" - -#~ msgid "minrep" -#~ msgstr "信誉é™åˆ¶" - -#~ msgid "voting" -#~ msgstr "投票规则" - -#~ msgid "accept" -#~ msgstr "回ç”采纳" - -#~ msgid "sidebar" -#~ msgstr "è¾¹æ 内容" - -#~ msgid "form" -#~ msgstr "站点" - -#~ msgid "moderation" -#~ msgstr "管ç†" - -#~ msgid "css" -#~ msgstr "自定义CSSæ ·å¼" - -#~ msgid "headandfoot" -#~ msgstr "页头和页脚" - -#~ msgid "head" -#~ msgstr "头信æ¯" - -#~ msgid "urls" -#~ msgstr "地å€" - -#~ msgid "robots" -#~ msgstr "机器人" - -#~ msgid "sitemap" -#~ msgstr "站点地图" - -#~ msgid "wiki" -#~ msgstr "维基" - -#~ msgid "deleted" -#~ msgstr "å·²åˆ é™¤" diff --git a/locale/de/.svn/all-wcprops b/locale/de/.svn/all-wcprops deleted file mode 100644 index 6498d7ed287f0489715059ddbf31dcc3cb4aba11..0000000000000000000000000000000000000000 --- a/locale/de/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/de -END diff --git a/locale/de/.svn/entries b/locale/de/.svn/entries deleted file mode 100644 index 566006b832d2c5147a2b6249cd12647960167f8a..0000000000000000000000000000000000000000 --- a/locale/de/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/de -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/de/LC_MESSAGES/.svn/all-wcprops b/locale/de/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 555eb96ed25a761e44705f6510667a9ef7c7d60b..0000000000000000000000000000000000000000 --- a/locale/de/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/de/LC_MESSAGES -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/de/LC_MESSAGES/django.po -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 63 -/svnroot/!svn/ver/87/osqa/trunk/locale/de/LC_MESSAGES/django.mo -END diff --git a/locale/de/LC_MESSAGES/.svn/entries b/locale/de/LC_MESSAGES/.svn/entries deleted file mode 100644 index 1c4929d5631b5d551cd3c3ed8f2586f8e6eb83c7..0000000000000000000000000000000000000000 --- a/locale/de/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/de/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.569495Z -d41d8cd98f00b204e9800998ecf8427e -2010-04-28T21:05:11.690577Z -87 -qw3rty - - - - - - - - - - - - - - - - - - - - - -0 - -django.po -file - - - - -2012-06-22T20:34:48.565497Z -080fd1a398d0d2b205dddb63c599c115 -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -228633 - diff --git a/locale/de/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/de/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/locale/de/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/de/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 93fbf1aeb734de5e1bf4fa44a4410dd897aa42dc..0000000000000000000000000000000000000000 --- a/locale/de/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,8544 +0,0 @@ -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "" - -#: forum/registry.py:28 -msgid "logout" -msgstr "" - -#: forum/registry.py:28 -msgid "login" -msgstr "" - -#: forum/registry.py:41 -msgid "administration" -msgstr "" - -#: forum/registry.py:54 -msgid "contact" -msgstr "" - -#: forum/registry.py:57 -msgid "support" -msgstr "" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "" - -#: forum/urls.py:71 -msgid "convert_comment/" -msgstr "" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -msgid "answer_link/" -msgstr "" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -msgid "user/" -msgstr "" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "" - -#: forum/urls.py:85 -msgid "convert_to_question/" -msgstr "" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -msgid "award/" -msgstr "" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" - -#: forum/actions/node.py:225 -#, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" - -#: forum/actions/node.py:231 -msgid "converted to question" -msgstr "" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -msgid "validated e-mail" -msgstr "" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -msgid "gave reputation points" -msgstr "" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "" -msgstr[1] "" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -msgid "post" -msgstr "" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -msgid "Users an accept own answer" -msgstr "" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -msgid "Site 'from' Email Address" -msgstr "" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -msgid "Site 'reply-to' Email Address" -msgstr "" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -msgid "Email Subject Prefix" -msgstr "" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -msgid "Minimum reputation to convert comments to answers" -msgstr "" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -msgid "Minimum reputation to convert answers to questions" -msgstr "" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -msgid "Use canned comments" -msgstr "" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -msgid "Canned comments" -msgstr "" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Sitemap settings" -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -msgid "Questions Sitemap Limit" -msgstr "" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -msgid "Allow negative reputation" -msgstr "" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -msgid "Truncate long usernames" -msgstr "" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -msgid "Show user accept rate" -msgstr "" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -msgid "Freeze accept rate" -msgstr "" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -msgid "Add reputation to max votes per day" -msgstr "" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -msgid "Use canned comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -msgid "Convert comment to answer" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:29 -msgid "Convert comment to question" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -msgid "Convert to question" -msgstr "" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -msgid "Permanent link" -msgstr "" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -msgid "Site Administration" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -msgid "Create User" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -msgid "Quick creation of a new user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -msgid "Delete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "" - -#: forum/skins/default/templates/users/info.html:42 -msgid "Administrator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:45 -msgid "Moderator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -msgid "Users Online" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "" - -#: forum/skins/nuxeo/templates/question.html:145 -#, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:120 -#, python-format -msgid "%s has one accepted answer" -msgstr "" - -#: forum/templatetags/extra_tags.py:126 -#, python-format -msgid "%s has no accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:132 -msgid "accept rate" -msgstr "" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hour ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "" - -#: forum/templatetags/node_tags.py:175 -msgid "convert to question" -msgstr "" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -msgid "Create new user" -msgstr "" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:347 -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -msgid "convert comments to answers" -msgstr "" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -msgid "award" -msgstr "" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "" - -#: forum/views/users.py:40 -msgid "last" -msgstr "" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "" - -#: forum/views/writers.py:129 -msgid "Converted to question" -msgstr "" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "" - -#: forum_modules/default_badges/badges.py:326 -msgid "Validated Email" -msgstr "" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "Updater Settings" -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "updater/" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -msgid "updater" -msgstr "" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" diff --git a/locale/en/.svn/all-wcprops b/locale/en/.svn/all-wcprops deleted file mode 100644 index 9eca46ddbba30fbe65e1371762f5bb2e17528182..0000000000000000000000000000000000000000 --- a/locale/en/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en -END diff --git a/locale/en/.svn/entries b/locale/en/.svn/entries deleted file mode 100644 index a33fb326994725701d3f5f87c2f768dc348b6eec..0000000000000000000000000000000000000000 --- a/locale/en/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/en -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/en/LC_MESSAGES/.svn/all-wcprops b/locale/en/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index da141bdd96038df52c558738408fde510618cfa0..0000000000000000000000000000000000000000 --- a/locale/en/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en/LC_MESSAGES/django.po -END diff --git a/locale/en/LC_MESSAGES/.svn/entries b/locale/en/LC_MESSAGES/.svn/entries deleted file mode 100644 index a1e12fde85dcbca6e4f657c827c453fdba57e750..0000000000000000000000000000000000000000 --- a/locale/en/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/en/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.141709Z -7e18bb38148873dc31bb9b0f45a0ac52 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -6639 - -django.po -file - - - - -2012-06-22T20:34:48.141709Z -3151183b7f3272c228b091094876836b -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -263851 - diff --git a/locale/en/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/en/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/en/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/en/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/en/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 09d452145ce7346a30b0a33d4551c96b10d736ea..0000000000000000000000000000000000000000 Binary files a/locale/en/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/en/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/en/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index a7a9d32e69583b55a8cd3cf4a33c6714b6844b3d..0000000000000000000000000000000000000000 --- a/locale/en/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9380 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:15-0700\n" -"PO-Revision-Date: 2010-05-14 15:33\n" -"Last-Translator: Rick Ross <rick@dzone.com>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Translated-Using: django-rosetta 0.5.3\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "" - -#: forum/feed.py:90 -#, fuzzy, python-format -msgid "Answers to: %s" -msgstr "Tips" - -#: forum/feed.py:107 -#, fuzzy, python-format -msgid "Answer by %s" -msgstr "Tips" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "" - -#: forum/registry.py:28 -msgid "logout" -msgstr "" - -#: forum/registry.py:28 -msgid "login" -msgstr "" - -#: forum/registry.py:41 -msgid "administration" -msgstr "" - -#: forum/registry.py:54 -msgid "contact" -msgstr "" - -#: forum/registry.py:57 -msgid "support" -msgstr "" - -#: forum/registry.py:58 -#, fuzzy -msgid "privacy" -msgstr "privacy" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "" - -#: forum/registry.py:83 -#, fuzzy -msgid "authentication settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/registry.py:90 -#, fuzzy -msgid "email notification settings" -msgstr "Verification Email from Q&A forum" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -#, fuzzy -msgid "withdraw suspension" -msgstr "Post Your Answer" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "Frequently Asked Questions" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -#, fuzzy -msgid "related_questions/" -msgstr "Post Your Answer" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -#, fuzzy -msgid "like_comment/" -msgstr "answer comment" - -#: forum/urls.py:69 -#, fuzzy -msgid "comment/" -msgstr "post a comment" - -#: forum/urls.py:70 -#, fuzzy -msgid "delete_comment/" -msgstr "post a comment" - -#: forum/urls.py:71 -#, fuzzy -msgid "convert_comment/" -msgstr "post a comment" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -#, fuzzy -msgid "answer_link/" -msgstr "Tips" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -msgid "user/" -msgstr "" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -#, fuzzy -msgid "convert/" -msgstr "post a comment" - -#: forum/urls.py:85 -#, fuzzy -msgid "convert_to_question/" -msgstr "Post Your Answer" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -#, fuzzy -msgid "award/" -msgstr "all badges" - -#: forum/urls.py:105 -#, fuzzy -msgid "suspend/" -msgstr "You can safely re-use the same login for all OpenID-enabled websites." - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -#, fuzzy -msgid "reputation/" -msgstr "karma" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -#, fuzzy -msgid "contact/" -msgstr "post a comment" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -#, fuzzy -msgid "settings/" -msgstr "karma" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "" - -#: forum/actions/node.py:34 -#, fuzzy, python-format -msgid "%(user)s asked %(question)s" -msgstr "unanswered" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "" - -#: forum/actions/node.py:55 -#, fuzzy, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" -"<div class=\"questions-count\">%(num_q)s</div>questions <strong>without " -"accepted answers</strong>" - -#: forum/actions/node.py:62 -#, fuzzy -msgid "commented" -msgstr "post a comment" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum/actions/node.py:225 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum/actions/node.py:231 -#, fuzzy -msgid "converted to question" -msgstr "list of all questions" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -#, fuzzy -msgid "validated e-mail" -msgstr "How to validate email and why?" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -#, fuzzy -msgid "gave reputation points" -msgstr "karma" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "" -msgstr[1] "" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -#, fuzzy -msgid "was awarded" -msgstr "all badges" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -#, fuzzy -msgid "Markdown" -msgstr "Markdown basics" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -#, fuzzy -msgid "Page Content" -msgstr "years old" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -#, fuzzy -msgid "Allow comments" -msgstr "post a comment" - -#: forum/forms/admin.py:99 -#, fuzzy -msgid "send validation email" -msgstr "Stop Email" - -#: forum/forms/admin.py:104 -#, fuzzy -msgid "email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/forms/auth.py:21 -#, fuzzy -msgid "Your account email" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "Choose screen name" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "Password" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "Password <i>(please retype)</i>" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "Title" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "Please enter a descriptive title for your question" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "Tags" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -#, fuzzy -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question containing " -"<strong><span class=\"darkred\">%(searchtitle)s</span></strong></p>" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, fuzzy, python-format -msgid "on %(link)s" -msgstr "link" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -#, fuzzy -msgid "comment" -msgstr "post a comment" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -msgid "post" -msgstr "" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "" - -#: forum/models/user.py:248 forum/views/readers.py:147 -#, fuzzy -msgid "answered-by" -msgstr "answer accepted" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -#, fuzzy -msgid "Accepting answers" -msgstr "oldest" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -#, fuzzy -msgid "Disallow answers to be accepted" -msgstr "answer accepted" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -#, fuzzy -msgid "Users an accept own answer" -msgstr "oldest" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -#, fuzzy -msgid "Basic settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -#, fuzzy -msgid "Your site main logo." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -#, fuzzy -msgid "Application description" -msgstr "" -"Gold badge is the highest award in this community. To obtain it have to show " -"profound knowledge and ability in addition to your active participation." - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -#, fuzzy -msgid "Site 'from' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -#, fuzzy -msgid "Email Subject Prefix" -msgstr "Welcome to the Q&A forum" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -#, fuzzy -msgid "Limit tag creation" -msgstr "karma" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -#, fuzzy -msgid "Empty question content" -msgstr "question comment" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -#, fuzzy -msgid "Change this:" -msgstr "Change Email" - -#: forum/settings/minrep.py:4 -#, fuzzy -msgid "Minimum reputation config" -msgstr "karma" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -#, fuzzy -msgid "Show captcha if user with less reputation than" -msgstr "Graph of user karma" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -#, fuzzy -msgid "Minimum reputation to vote down" -msgstr "user karma" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -#, fuzzy -msgid "Minimum reputation to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -#, fuzzy -msgid "Minimum reputation to like a comment" -msgstr "user karma" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -#, fuzzy -msgid "Minimum reputation to create tags" -msgstr "user karma" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -#, fuzzy -msgid "Minimum reputation to mark post as community wiki" -msgstr "user karma" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -#, fuzzy -msgid "Minimum reputation to delete comments" -msgstr "user karma" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -#, fuzzy -msgid "Minimum reputation to convert answers to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -#, fuzzy -msgid "Minimum reputation to convert comments to answers" -msgstr "user karma" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -#, fuzzy -msgid "Minimum reputation to convert answers to questions" -msgstr "user karma" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -#, fuzzy -msgid "Moderation settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "post a comment" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "post a comment" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -#, fuzzy -msgid "Initial reputation" -msgstr "karma" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -#, fuzzy -msgid "Sitemap settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -#, fuzzy -msgid "Questions Sitemap Limit" -msgstr "Tags" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -#, fuzzy -msgid "Your custom footer." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -#, fuzzy -msgid "Users settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "karma" - -#: forum/settings/users.py:11 -#, fuzzy -msgid "Check if you want to allow negative user reputations in the community." -msgstr "user karma" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "update" -msgstr "Last updated" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -#, fuzzy -msgid "Disabled usernames" -msgstr "Choose screen name" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -#, fuzzy -msgid "Truncate long usernames" -msgstr "Choose screen name" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -#, fuzzy -msgid "Show user accept rate" -msgstr "oldest" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -#, fuzzy -msgid "Freeze accept rate" -msgstr "oldest" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -#, fuzzy -msgid "Force unique email" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "ask questions" -msgstr "Ask Your Question" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "provide answers" -msgstr "oldest" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "make comments" -msgstr "post a comment" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "report posts" -msgstr "karma" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -#, fuzzy -msgid "Gravatar rating" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -#, fuzzy -msgid "Gravatar default" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -#, fuzzy -msgid "Recent awards block size" -msgstr "Recent badges" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -#, fuzzy -msgid "Limit related tags block" -msgstr "Tags" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -#, fuzzy -msgid "Add reputation to max votes per day" -msgstr "user karma" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "Save Edit" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "Tips" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "Ask a Question" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "Login/Signup to Post" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "Ask Your Question" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" -"In addition to the reputation earned through asking useful questions and " -"providing correct answers, you'll be recognised with badges to recognise " -"actions that benefit the community." - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -#, fuzzy -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" -"Currently badges differ only by their level: <strong>gold</strong>, " -"<strong>silver</strong> and <strong>bronze</strong> (their meanings are " -"described on the right). In the future there will be many types of badges at " -"each level. <strong>Please give us your <a href='%(feedback_faq_url)" -"s'>feedback</a></strong> - what kinds of badges would you like to see and " -"suggest the activity for which those badges might be awarded." - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "Badge levels" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "Gold" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "Gold badges are rare. You'll need to work hard to earn one of these." - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "Silver" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "Silver badges aren't common. They take work and attention to earn." - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "Bronze" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "" -"Bronze badges recognise active participation in the site. Wear them with " -"pride!" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "Ask a Question" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "Search" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "Questions" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "Users" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "Welcome to " - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" -"Clicking <strong>Logout</strong> will log you out from the forum, but will " -"not sign you off from your OpenID provider.</p><p>If you wish to sign off " -"completely - please make sure to log out from your OpenID provider as well." - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "Logout Now" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -#, fuzzy -msgid "Markdown Help" -msgstr "Markdown basics" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -#, fuzzy -msgid "Markdown Syntax" -msgstr "Markdown basics" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" -"Respecting users privacy is an important core principle of this Q&A " -"forum. Information on this page details how this forum protects your " -"privacy, and what type of information is collected." - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" -"Information on question views, revisions of questions and answers - both " -"times and content are recorded for each user in order to correctly count " -"number of views, maintain data integrity and report relevant updates." - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" -"Members of this community may choose to display personally identifiable " -"information in their profiles. Forum will never display such information " -"without a request from the user." - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" -"None of the data that is not openly shown on the forum by the choice of the " -"user is shared with any third party." - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" -"Forum software relies on the internet cookie technology to keep track of " -"user sessions. Cookies must be enabled in your browser so that forum can " -"work for you." - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" -"These policies may be adjusted to improve protection of user's privacy. " -"Whenever such changes occur, users will be notified via the internal " -"messaging system. " - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" - -#: forum/skins/default/templates/question.html:149 -#, fuzzy, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "newest" -msgstr[1] "newest" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "Tags" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "Asked" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "Seen" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "Last updated" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "How to Ask" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -#, fuzzy -msgid "Follow this question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -#, fuzzy -msgid "By Email" -msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:30 -#, fuzzy -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" -"<span class='strong'>Here</span> (once you log in) you will be able to sign " -"up for the periodic email updates about this question." - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -#, fuzzy -msgid "subscribe to answers" -msgstr "oldest" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -#, fuzzy -msgid "Answers" -msgstr "Tips" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "subscribe to comments and answers" -msgstr "oldest" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "Answers and Comments" -msgstr "post a comment" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" -"<span class='strong'>To change your password</span> please fill out and " -"submit this form" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -#, fuzzy -msgid "Create password" -msgstr "Password <i>(please retype)</i>" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "New user signup" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "New user signup" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "Signup" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -#, fuzzy -msgid "Validate my email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "User Login" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "With the OpenID you don't need to create new username and password." - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "You can safely re-use the same login for all OpenID-enabled websites." - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" -"There are > 160,000,000 OpenID account in use. Over 10,000 sites are OpenID-" -"enabled." - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "OpenID is based on an open standard, supported by many organizations." - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -#, fuzzy -msgid "Go to your account" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -#, fuzzy -msgid "Send link" -msgstr "link" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -#, fuzzy -msgid " comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -#, fuzzy -msgid "Edit comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -#, fuzzy -msgid "Delete comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -#, fuzzy -msgid "Convert comment to answer" -msgstr "oldest" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -#, fuzzy -msgid "just now" -msgstr "Logout Now" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "this is a great comment" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "add a comment" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -#, fuzzy -msgid "Place the comment under:" -msgstr "post a comment" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -#, fuzzy -msgid "Convert to question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -#, fuzzy -msgid "Permanent link" -msgstr "link" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "This post is useful (click again to undo)" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "This post is not useful (click again to undo)" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, fuzzy, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, fuzzy, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, fuzzy, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, fuzzy, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, fuzzy, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, fuzzy, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, fuzzy, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, fuzzy, python-format -msgid "the question %(question_link)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, fuzzy, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, fuzzy, python-format -msgid "the question \"%(question_title)s\"" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -msgid "Site Administration" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -#, fuzzy -msgid "Create User" -msgstr "Password <i>(please retype)</i>" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -#, fuzzy -msgid "Quick creation of a new user" -msgstr "answer" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -#, fuzzy -msgid "Welcome," -msgstr "Welcome to Q&A forum" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -#, fuzzy -msgid "Log out" -msgstr "Logout Now" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -#, fuzzy -msgid "Custom Pages" -msgstr "Tags" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -#, fuzzy -msgid "Adjust settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -#, fuzzy -msgid "Moderation" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -#, fuzzy -msgid "newer users" -msgstr "newest" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -#, fuzzy -msgid "older users" -msgstr "oldest" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -#, fuzzy -msgid "Email" -msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -#, fuzzy -msgid "Reputation:" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -#, fuzzy -msgid "Reputation" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -#, fuzzy -msgid "Possible fake accounts" -msgstr "Signup" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -#, fuzzy -msgid "out of" -msgstr "Logout Now" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -#, fuzzy -msgid "Node manager" -msgstr "oldest" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -#, fuzzy -msgid "Delete completely" -msgstr "post a comment" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -#, fuzzy -msgid "Close (questions only)" -msgstr "<strong>Newest</strong> questions are shown first." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "post a comment" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "Tags" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "Tagged questions" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -#, fuzzy -msgid "All Questions" -msgstr "Tags" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -#, fuzzy -msgid "Markdown Basics" -msgstr "Markdown basics" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "Recent badges" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "all badges" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "tags" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -#, fuzzy -msgid "gravatar" -msgstr "What is gravatar?" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "karma" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "" - -#: forum/skins/default/templates/users/info.html:42 -msgid "Administrator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:45 -#, fuzzy -msgid "Moderator" -msgstr "karma" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "member since" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "years old" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -#, fuzzy -msgid "User tools" -msgstr "User login" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -#, fuzzy -msgid "Users Online" -msgstr "User login" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "Badges" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question without an " -"accepted answer</p>" -msgstr[1] "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>questions without an " -"accepted answer</p>" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -#, fuzzy -msgid "Notifications and subscription settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -#, fuzzy -msgid "A new question is posted" -msgstr "Tips" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -#, fuzzy -msgid "Questions I view" -msgstr "Tags" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -#, fuzzy -msgid "An answer is posted" -msgstr "Tips" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -#, fuzzy -msgid "An answer is accepted" -msgstr "answer accepted" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "newest" -msgstr[1] "newest" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, fuzzy, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question with title " -"containing <strong><span class=\"darkred\">%(searchtitle)s</span></strong></" -"p>" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "sorry, file uploading requires karma >60" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "karma" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:120 -#, fuzzy, python-format -msgid "%s has one accepted answer" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:126 -#, fuzzy, python-format -msgid "%s has no accepted answers" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:132 -#, fuzzy -msgid "accept rate" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hour ago" -msgstr "tags" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "link" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "" - -#: forum/templatetags/node_tags.py:156 -#, fuzzy -msgid "see revisions" -msgstr "unanswered" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:171 -#, fuzzy -msgid "convert to comment" -msgstr "post a comment" - -#: forum/templatetags/node_tags.py:175 -#, fuzzy -msgid "convert to question" -msgstr "Post Your Answer" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "" - -#: forum/views/admin.py:141 -#, fuzzy -msgid "Questions Graph" -msgstr "Tags" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "Create new user" -msgstr "Password <i>(please retype)</i>" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -#, fuzzy -msgid "New password set" -msgstr "Recover password" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -#, fuzzy -msgid "save it" -msgstr "years old" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -#, fuzzy -msgid "like comments" -msgstr "post a comment" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -#, fuzzy -msgid "delete comments" -msgstr "post a comment" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -#: forum/views/commands.py:267 -#, fuzzy -msgid "edit comments" -msgstr "post a comment" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -#, fuzzy -msgid "accept answers" -msgstr "oldest" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -"(one comment)" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -#, fuzzy -msgid "close questions" -msgstr "list of all questions" - -#: forum/views/commands.py:399 -#, fuzzy -msgid "reopen questions" -msgstr "Tips" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -#, fuzzy -msgid "convert answers to comments" -msgstr "answer comment" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -#, fuzzy -msgid "Question" -msgstr "Tags" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -#, fuzzy -msgid "convert comments to answers" -msgstr "oldest" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -#, fuzzy -msgid "award" -msgstr "all badges" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "questions" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "<strong>recently asked</strong> questions" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "<strong>active</strong> questions in the last 24 hours</strong>" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "" - -#: forum/views/readers.py:42 -#, fuzzy -msgid "most <strong>voted</strong> questions" -msgstr " " - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "oldest" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "newest" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "most voted" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "Unanswered" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "" - -#: forum/views/readers.py:91 -#, fuzzy -msgid "Unanswered Questions" -msgstr "unanswered" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -#: forum/views/readers.py:126 -#, fuzzy, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "Tags" - -#: forum/views/readers.py:146 -#, fuzzy, python-format -msgid "Questions asked by %s" -msgstr "Asked" - -#: forum/views/readers.py:149 -#, fuzzy, python-format -msgid "Questions answered by %s" -msgstr "answer" - -#: forum/views/readers.py:156 -#, fuzzy, python-format -msgid "Questions you subscribed %s" -msgstr "Tags" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -#, fuzzy -msgid "most relevant questions" -msgstr "ask a question relevant to the CNPROG community" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -#, fuzzy -msgid "sorted by reputation" -msgstr "karma" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "" - -#: forum/views/users.py:39 -#, fuzzy -msgid "newest members" -msgstr "newest" - -#: forum/views/users.py:40 -msgid "last" -msgstr "" - -#: forum/views/users.py:40 -#, fuzzy -msgid "oldest members" -msgstr "oldest" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "" - -#: forum/views/users.py:41 -#, fuzzy -msgid "sorted by username" -msgstr "Choose screen name" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -#, fuzzy -msgid "Profile updated." -msgstr "Last updated" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "karma history" - -#: forum/views/users.py:367 -#, fuzzy -msgid "graph of user karma" -msgstr "Graph of user karma" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -#, fuzzy -msgid "subscription" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "" - -#: forum/views/users.py:428 -#, fuzzy -msgid "New subscription settings are now saved" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "sorry, file uploading requires karma >60" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -#, fuzzy -msgid "validate your email" -msgstr "How to validate email and why?" - -#: forum/views/writers.py:129 -#, fuzzy -msgid "Converted to question" -msgstr "Post Your Answer" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -#, fuzzy -msgid "Minimum reputation to not have your posts checked" -msgstr "user karma" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "" - -#: forum_modules/default_badges/badges.py:24 -#, fuzzy -msgid "Popular Question" -msgstr "Ask Your Question" - -#: forum_modules/default_badges/badges.py:30 -#, fuzzy -msgid "Notable Question" -msgstr "list of all questions" - -#: forum_modules/default_badges/badges.py:35 -#, fuzzy -msgid "Famous Question" -msgstr "Ask Your Question" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:58 -#, fuzzy -msgid "Nice Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:63 -#, fuzzy -msgid "Good Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:68 -#, fuzzy -msgid "Great Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:77 -#, fuzzy, python-format -msgid "Answer voted up %s times" -msgstr "Post Your Answer" - -#: forum_modules/default_badges/badges.py:81 -#, fuzzy -msgid "Nice Answer" -msgstr "oldest" - -#: forum_modules/default_badges/badges.py:86 -#, fuzzy -msgid "Good Answer" -msgstr "oldest" - -#: forum_modules/default_badges/badges.py:91 -#, fuzzy -msgid "Great Answer" -msgstr "oldest" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "" - -#: forum_modules/default_badges/badges.py:108 -#, fuzzy -msgid "Favorite Question" -msgstr "Post Your Answer" - -#: forum_modules/default_badges/badges.py:113 -#, fuzzy -msgid "Stellar Question" -msgstr "Post Your Answer" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, fuzzy, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "" - -#: forum_modules/default_badges/badges.py:326 -#, fuzzy -msgid "Validated Email" -msgstr "How to validate email and why?" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -#, fuzzy -msgid "Nice Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -#, fuzzy -msgid "Good Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -#, fuzzy -msgid "Great Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -#, fuzzy -msgid "Awards" -msgstr "all badges" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -#, fuzzy -msgid "Enter your local user name and password" -msgstr "" -"<span class='big strong'>Enter your CNPROG login and password</span><br/" -"><span class='grey'>(or select your OpenID provider above)</span>" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:16 -#, fuzzy -msgid "Password" -msgstr "Send me a new password" - -#: forum_modules/localauth/templates/loginform.html:27 -#, fuzzy -msgid "Create account" -msgstr "Signup" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "Updater Settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -#, fuzzy -msgid "updater/" -msgstr "Last updated" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -#, fuzzy -msgid "updater" -msgstr "Last updated" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" - -#, fuzzy -#~ msgid "You can answer anonymously and then login." -#~ msgstr "" -#~ "<span class='strong big'>Please start posting your answer anonymously</" -#~ "span> - your answer will be saved within the current session and " -#~ "published after you log in or create a new account. Please try to give a " -#~ "<strong>substantial answer</strong>, for discussions, <strong>please use " -#~ "comments</strong> and <strong>please do remember to vote</strong> (after " -#~ "you log in)!" - -#, fuzzy -#~ msgid "Answer your own question only to give an answer." -#~ msgstr "" -#~ "<span class='big strong'>You are welcome to answer your own question</" -#~ "span>, but please make sure to give an <strong>answer</strong>. Remember " -#~ "that you can always <strong>revise your original question</strong>. " -#~ "Please <strong>use comments for discussions</strong> and <strong>please " -#~ "don't forget to vote :)</strong> for the answers that you liked (or " -#~ "perhaps did not like)! " - -#, fuzzy -#~ msgid "Please only give an answer, no discussions." -#~ msgstr "" -#~ "<span class='big strong'>Please try to give a substantial answer</span>. " -#~ "If you wanted to comment on the question or answer, just <strong>use the " -#~ "commenting tool</strong>. Please remember that you can always " -#~ "<strong>revise your answers</strong> - no need to answer the same " -#~ "question twice. Also, please <strong>don't forget to vote</strong> - it " -#~ "really helps to select the best questions and answers!" - -#~ msgid "received award" -#~ msgstr "received badge" - -#, fuzzy -#~ msgid "edited an answer" -#~ msgstr "oldest" - -#, fuzzy -#~ msgid "received badge" -#~ msgstr "received badge" - -#~ msgid "login to post question info" -#~ msgstr "" -#~ "<span class=\"strong big\">You are welcome to start submitting your " -#~ "question anonymously</span>. When you submit the post, you will be " -#~ "redirected to the login/signup page. Your question will be saved in the " -#~ "current session and will be published after you log in. Login/signup " -#~ "process is very simple. Login takes about 30 seconds, initial signup " -#~ "takes a minute or less." - -#~ msgid "" -#~ "must have valid %(email)s to post, \n" -#~ " see %(email_validation_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<span class='strong big'>Looks like your email address, %(email)s has not " -#~ "yet been validated.</span> To post messages you must verify your email, " -#~ "please see <a href='%(email_validation_faq_url)s'>more details here</a>." -#~ "<br>You can submit your question now and validate email after that. Your " -#~ "question will saved as pending meanwhile. " - -#~ msgid "" -#~ "Before asking the question - please make sure to use search to see " -#~ "whether your question has alredy been answered." -#~ msgstr "" -#~ "Before you ask - please make sure to search for a similar question. You " -#~ "can search questions by their title or tags." - -#~ msgid "What questions should I avoid asking?" -#~ msgstr "What kinds of questions should be avoided?" - -#~ msgid "" -#~ "is a Q&A site, not a discussion group. Therefore - please avoid having " -#~ "discussions in your answers, comment facility allows some space for brief " -#~ "discussions." -#~ msgstr "" -#~ "is a <strong>question and answer</strong> site - <strong>it is not a " -#~ "discussion group</strong>. Please avoid holding debates in your answers " -#~ "as they tend to dilute the essense of questions and answers. For the " -#~ "brief discussions please use commenting facility." - -#~ msgid "" -#~ "The reputation system allows users earn the authorization to perform a " -#~ "variety of moderation tasks." -#~ msgstr "" -#~ "Karma system allows users to earn rights to perform a variety of " -#~ "moderation tasks" - -#~ msgid "How does reputation system work?" -#~ msgstr "How does karma system work?" - -#~ msgid "Rep system summary" -#~ msgstr "" -#~ "When a question or answer is upvoted, the user who posted them will gain " -#~ "some points, which are called \"karma points\". These points serve as a " -#~ "rough measure of the community trust to him/her. Various moderation tasks " -#~ "are gradually assigned to the users based on those points." - -#~ msgid "" -#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)" -#~ "s" -#~ msgstr "" -#~ "<form style='margin:0;padding:0;' action='%(send_email_key_url)" -#~ "s'><p><span class=\"bigger strong\">How?</span> If you have just set or " -#~ "changed your email address - <strong>check your email and click the " -#~ "included link</strong>.<br>The link contains a key generated specifically " -#~ "for you. You can also <button style='display:inline' " -#~ "type='submit'><strong>get a new key</strong></button> and check your " -#~ "email again.</p></form><span class=\"bigger strong\">Why?</span> Email " -#~ "validation is required to make sure that <strong>only you can post " -#~ "messages</strong> on your behalf and to <strong>minimize spam</strong> " -#~ "posts.<br>With email you can <strong>subscribe for updates</strong> on " -#~ "the most interesting questions. Also, when you sign up for the first time " -#~ "- create a unique <a href='%(gravatar_faq_url)s'><strong>gravatar</" -#~ "strong></a> personal image.</p>" - -#~ msgid "" -#~ "Please ask your question at %(ask_question_url)s, help make our community " -#~ "better!" -#~ msgstr "" -#~ "Please <a href='%(ask_question_url)s'>ask</a> your question, help make " -#~ "our community better!" - -#~ msgid "question tips" -#~ msgstr "Tips" - -#~ msgid "please try provide enough details" -#~ msgstr "provide enough details" - -#~ msgid "Screen name label" -#~ msgstr "<strong>Screen Name</strong> (<i>will be shown to others</i>)" - -#~ msgid "Email address label" -#~ msgstr "" -#~ "<strong>Email Address</strong> (<i>will <strong>not</strong> be shared " -#~ "with anyone, must be valid</i>)" - -#~ msgid "receive updates motivational blurb" -#~ msgstr "" -#~ "<strong>Receive forum updates by email</strong> - this will help our " -#~ "community grow and become more useful.<br/>By default <span " -#~ "class='orange'>Q&A</span> forum sends up to <strong>one email digest " -#~ "per week</strong> - only when there is anything new.<br/>If you like, " -#~ "please adjust this now or any time later from your user account." - -#, fuzzy -#~ msgid "" -#~ "Sincerely,<br />\n" -#~ " Forum Administrator" -#~ msgstr "" -#~ "Sincerely,\n" -#~ "Q&A Forum Administrator" - -#~ msgid "Click to sign in through any of these services." -#~ msgstr "" -#~ "<p><span class=\"big strong\">Please select your favorite login method " -#~ "below.</span></p><p><font color=\"gray\">External login services use <a " -#~ "href=\"http://openid.net\"><b>OpenID</b></a> technology, where your " -#~ "password always stays confidential between you and your login provider " -#~ "and you don't have to remember another one. CNPROG option requires your " -#~ "login name and password entered here.</font></p>" - -#~ msgid "Traditional signup info" -#~ msgstr "" -#~ "<span class='strong big'>If you prefer, create your forum login name and " -#~ "password here. However</span>, please keep in mind that we also support " -#~ "<strong>OpenID</strong> login method. With <strong>OpenID</strong> you " -#~ "can simply reuse your external login (e.g. Gmail or AOL) without ever " -#~ "sharing your login details with anyone and having to remember yet another " -#~ "password." - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " %(comment_count)s new comment" -#~ "%(comment_count_pluralize)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(one comment)" - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " Posted by %(author_name)s in %(question_time)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" - -#~ msgid "avatar, see %(gravatar_faq_url)s" -#~ msgstr "<a href='%(gravatar_faq_url)s'>gravatar</a>" - -#, fuzzy -#~ msgid "Questions I comment" -#~ msgstr "question comment" - -#~ msgid "casted votes" -#~ msgstr "votes" - -#~ msgid "Questions sorted by <strong>number of responses</strong>." -#~ msgstr "Questions sorted by the <strong>number of answers</strong>." - -#~ msgid "profile - user reputation" -#~ msgstr "Profile - User's Karma" - -#, fuzzy -#~ msgid "profile - subscriptions" -#~ msgstr "Profile - User's Karma" - -#~ msgid "email update message subject" -#~ msgstr "news from Q&A forum" - -#~ msgid "%(name)s, this is an update message header for a question" -#~ msgid_plural "" -#~ "%(name)s, this is an update message header for %(num)d questions" -#~ msgstr[0] "" -#~ "<p>Dear %(name)s,</p></p>The following question has been updated on the " -#~ "Q&A forum:</p>" -#~ msgstr[1] "" -#~ "<p>Dear %(name)s,</p><p>The following %(num)d questions have been updated " -#~ "on the Q&A forum:</p>" - -#~ msgid "" -#~ "go to %(link)s to change frequency of email updates or %(email)s " -#~ "administrator" -#~ msgstr "" -#~ "<p>Please remember that you can always <a href='%(link)s'>adjust</a> " -#~ "frequency of the email updates or turn them off entirely.<br/>If you " -#~ "believe that this message was sent in an error, please email about it the " -#~ "forum administrator at %(email)s.</p><p>Sincerely,</p><p>Your friendly " -#~ "Q&A forum server.</p>" - -#~ msgid "Account: change password" -#~ msgstr "Change your password" - -#~ msgid "list of unanswered questions" -#~ msgstr "unanswered questions" - -#~ msgid "Notify me once a day when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> once a day by email when there are any new " -#~ "answers or updates" - -#~ msgid "Notify me weekly when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> weekly when there are any new answers or " -#~ "updates" - -#~ msgid "" -#~ "\n" -#~ " You can always adjust frequency of email updates from " -#~ "your %(profile_url)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(note: you can always <a href='%(profile_url)s?" -#~ "sort=email_subscriptions'>adjust frequency</a> of email updates)" - -#~ msgid "Most recently answered ones are shown first." -#~ msgstr "<strong>Most recently answered</strong> questions are shown first." - -#~ msgid "change %(email)s info" -#~ msgstr "" -#~ "<span class=\"strong big\">Enter your new email into the box below</span> " -#~ "if you'd like to use another email for <strong>update subscriptions</" -#~ "strong>.<br>Currently you are using <strong>%(email)s</strong>" - -#~ msgid "here is why email is required, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<span class='strong big'>Please enter your email address in the box below." -#~ "</span> Valid email address is required on this Q&A forum. If you " -#~ "like, you can <strong>receive updates</strong> on interesting questions " -#~ "or entire forum via email. Also, your email is used to create a unique <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for your " -#~ "account. Email addresses are never shown or otherwise shared with anybody " -#~ "else." - -#~ msgid "validate %(email)s info or go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">An email with a validation link has been sent " -#~ "to %(email)s.</span> Please <strong>follow the emailed link</strong> with " -#~ "your web browser. Email validation is necessary to help insure the proper " -#~ "use of email on <span class=\"orange\">Q&A</span>. If you would like " -#~ "to use <strong>another email</strong>, please <a href='%(change_email_url)" -#~ "s'><strong>change it again</strong></a>." - -#~ msgid "old %(email)s kept, if you like go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">Your email address %(email)s has not been " -#~ "changed.</span> If you decide to change it later - you can always do it " -#~ "by editing it in your user profile or by using the <a " -#~ "href='%(change_email_url)s'><strong>previous form</strong></a> again." - -#~ msgid "your current %(email)s can be used for this" -#~ msgstr "" -#~ "<span class='big strong'>Your email address is now set to %(email)s.</" -#~ "span> Updates on the questions that you like most will be sent to this " -#~ "address. Email notifications are sent once a day or less frequently - " -#~ "only when there are any news." - -#~ msgid "thanks for verifying email" -#~ msgstr "" -#~ "<span class=\"big strong\">Thank you for verifying your email!</span> Now " -#~ "you can <strong>ask</strong> and <strong>answer</strong> questions. Also " -#~ "if you find a very interesting question you can <strong>subscribe for the " -#~ "updates</strong> - then will be notified about changes <strong>once a " -#~ "day</strong> or less frequently." - -#~ msgid "email key not sent" -#~ msgstr "Validation email not sent" - -#~ msgid "email key not sent %(email)s change email here %(change_link)s" -#~ msgstr "" -#~ "<span class='big strong'>Your current email address %(email)s has been " -#~ "validated before</span> so the new key was not sent. You can <a " -#~ "href='%(change_link)s'>change</a> email used for update subscriptions if " -#~ "necessary." - -#~ msgid "register new %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span> Please create your <strong>screen name</" -#~ "strong> and save your <strong>email</strong> address. Saved email address " -#~ "will let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "" -#~ "%(username)s already exists, choose another name for \n" -#~ " %(provider)s. Email is required too, see " -#~ "%(gravatar_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<p><span class='strong big'>Oops... looks like screen name %(username)s " -#~ "is already used in another account.</span></p><p>Please choose another " -#~ "screen name to use with your %(provider)s login. Also, a valid email " -#~ "address is required on the <span class='orange'>Q&A</span> forum. " -#~ "Your email is used to create a unique <a href='%(gravatar_faq_url)" -#~ "s'><strong>gravatar</strong></a> image for your account. If you like, you " -#~ "can <strong>receive updates</strong> on the interesting questions or " -#~ "entire forum by email. Email addresses are never shown or otherwise " -#~ "shared with anybody else.</p>" - -#~ msgid "" -#~ "register new external %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span></p><p>You can either keep your <strong>screen " -#~ "name</strong> the same as your %(provider)s login name or choose some " -#~ "other nickname.</p><p>Also, please save a valid <strong>email</strong> " -#~ "address. With the email you can <strong>subscribe for the updates</" -#~ "strong> on the most interesting questions. Email address is also used to " -#~ "create and retrieve your unique avatar image - <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" - -#~ msgid "register new Facebook connect account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "Facebook login.</span> Please create your <strong>screen name</strong> " -#~ "and save your <strong>email</strong> address. Saved email address will " -#~ "let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "password recovery information" -#~ msgstr "" -#~ "<span class='big strong'>Forgot you password? No problems - just get a " -#~ "new one!</span><br/>Please follow the following steps:<br/>• submit " -#~ "your user name below and check your email<br/>• <strong>follow the " -#~ "activation link</strong> for the new password - sent to you by email and " -#~ "login with the suggested password<br/>• at this you might want to " -#~ "change your password to something you can remember better" - -#~ msgid "" -#~ "email explanation how to use new %(password)s for %(username)s\n" -#~ "with the %(key_link)s" -#~ msgstr "" -#~ "To change your password, please follow these steps:\n" -#~ "* visit this link: %(key_link)s\n" -#~ "* login with user name %(username)s and password %(password)s\n" -#~ "* go to your user profile and set the password to something you can " -#~ "remember" - -#~ msgid "" -#~ "\n" -#~ " Your answer to %(title)s %(summary)s will be posted once " -#~ "you log in\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<span class=\"strong big\">Your answer to </span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "" -#~ "Your question \n" -#~ " %(title)s %(summary)s will be posted once you log in\n" -#~ " " -#~ msgstr "" -#~ "<span class=\"strong big\">Your question</span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "Enter your <span id=\"enter_your_what\">Provider user name</span>" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your </span><span id=\"enter_your_what\" " -#~ "class='big strong'>Provider user name</span><br/><span class='grey'>(or " -#~ "select another login method above)</span>" - -#~ msgid "" -#~ "Enter your <a class=\"openid_logo\" href=\"http://openid.net\">OpenID</a> " -#~ "web address" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your <a class=\"openid_logo\" href=" -#~ "\"http://openid.net\">OpenID</a> web address</span><br/><span " -#~ "class='grey'>(or choose another login method above)</span>" - -#~ msgid "subscription saved, %(email)s needs validation, see %(details_url)s" -#~ msgstr "" -#~ "Your subscription is saved, but email address %(email)s needs to be " -#~ "validated, please see <a href='%(details_url)s'>more details here</a>" - -#~ msgid "Incorrect username." -#~ msgstr "sorry, there is no such user name" - -#~ msgid "your email needs to be validated see %(details_url)s" -#~ msgstr "" -#~ "Your email needs to be validated. Please see details <a " -#~ "id='validate_email_alert' href='%(details_url)s'>here</a>." - -#~ msgid "first time greeting with %(url)s" -#~ msgstr "Hello and welcome to OSQA - <a href='%(url)s'>please join us</a>!" - -#~ msgid "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgid_plural "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgstr[0] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" -#~ msgstr[1] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>questions</p>" diff --git a/locale/es/.svn/all-wcprops b/locale/es/.svn/all-wcprops deleted file mode 100644 index 6c0b4e8d11f77e70b5419b82f69e0a5dac3516f5..0000000000000000000000000000000000000000 --- a/locale/es/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/es -END diff --git a/locale/es/.svn/entries b/locale/es/.svn/entries deleted file mode 100644 index 7e627f132ed34cf9c7b6254b8643451d06d41a94..0000000000000000000000000000000000000000 --- a/locale/es/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/es -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/es/LC_MESSAGES/.svn/all-wcprops b/locale/es/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index bca9bf5d79d8811028ccce97e950b24381b3d695..0000000000000000000000000000000000000000 --- a/locale/es/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/es/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/es/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/es/LC_MESSAGES/django.po -END diff --git a/locale/es/LC_MESSAGES/.svn/entries b/locale/es/LC_MESSAGES/.svn/entries deleted file mode 100644 index 9e97d43cc32ed39c3a94647d17a849e400aa5d66..0000000000000000000000000000000000000000 --- a/locale/es/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/es/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.385587Z -64f33d87ad2caf30ea524cb933014cd9 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -126736 - -django.po -file - - - - -2012-06-22T20:34:48.381589Z -432122f4f00e6ad749deb4e840f93dbf -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -297018 - diff --git a/locale/es/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/es/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/es/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/es/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/es/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 49e0fe3bbd6a302758060405afc710c0ab2123d5..0000000000000000000000000000000000000000 Binary files a/locale/es/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/es/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/es/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index f8884e38770bffa39b55abccb5f6c3930c93b277..0000000000000000000000000000000000000000 --- a/locale/es/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9475 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:15-0700\n" -"PO-Revision-Date: \n" -"Last-Translator: Javier Candeira <javier@candeira.com>\n" -"Language-Team: spanish\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "page" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "pagesize" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "sort" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "Respuestas a: %s" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "Respuesta por %s" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "Comentario de %(cauthor)s en el %(qora)s de %(pauthor)s" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "respuesta" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "pregunta" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "preguntas frecuentes" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "acerca de" - -#: forum/registry.py:28 -msgid "logout" -msgstr "salir" - -#: forum/registry.py:28 -msgid "login" -msgstr "entrar" - -#: forum/registry.py:41 -msgid "administration" -msgstr "administración" - -#: forum/registry.py:54 -msgid "contact" -msgstr "contacto" - -#: forum/registry.py:57 -msgid "support" -msgstr "soporte" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "privacidad" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "editar perfil" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "opciones de acceso" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "opciones de notificación por email" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "otras preferencias" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "Herramientas de moderación" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "retirar suspensión" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "suspender este usuario" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "dar/quitar karma" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "retirar estatus de moderador" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "otorgar estatus de moderador" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "retirar estatus de superusuario" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "otorgar estatus de superusuario" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "nimda/" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "upfiles/" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "preguntas-frecuentes/" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "Preguntas Frecuentes" - -#: forum/urls.py:46 -msgid "about/" -msgstr "acerca-de/" - -#: forum/urls.py:46 -msgid "About" -msgstr "Acerca de" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "ayuda-de-markdown/" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "nota-legal/" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "salir/" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "respuestas/" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "editar/" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "versiones/" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "preguntas/" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "preguntar/" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "preguntas-relacionadas/" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "sin-responder/" - -#: forum/urls.py:62 -msgid "close/" -msgstr "cerrar/" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "reabrir/" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "responder/" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "datos-pendientes/" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "votar/" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "me-gusta-el-comentario/" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "comentario/" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "borrar-comentario/" - -#: forum/urls.py:71 -#, fuzzy -msgid "convert_comment/" -msgstr "convertir en comentario" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "aceptar-respuesta/" - -#: forum/urls.py:73 -#, fuzzy -msgid "answer_link/" -msgstr "responder/" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "marcar-como-favorita/" - -#: forum/urls.py:75 -#, fuzzy -msgid "award_points/" -msgstr "medalla/" - -#: forum/urls.py:75 -#, fuzzy -msgid "user/" -msgstr "usuarios/" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "denunciar/" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "borrar/" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "subscribe/" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "etiquetas-coincidentes/" - -#: forum/urls.py:82 -#, fuzzy -msgid "matching_users/" -msgstr "etiquetas-coincidentes/" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "markdown-del-nodo/" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "convertir/" - -#: forum/urls.py:85 -#, fuzzy -msgid "convert_to_question/" -msgstr "preguntas-relacionadas/" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "wikificar/" - -#: forum/urls.py:88 -msgid "question/" -msgstr "pregunta/" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "etiquetas/" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "mark-tag/" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "interesting/" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "ignored/" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "unmark-tag/" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "usuarios/" - -#: forum/urls.py:104 -msgid "award/" -msgstr "medalla/" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "suspend/" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "powers/" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "notificaciones/" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "preferencias/" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "favoritos/" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "karma/" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "votos/" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "recientes/" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "medallas/" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "buscar/" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "contacto/" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "cuenta/" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "entrar/" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "salir/" - -#: forum/urls.py:127 -msgid "done/" -msgstr "hecho/" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "registrar/" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "validar/" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "proveedores/" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "eliminar/" - -#: forum/urls.py:134 -msgid "add/" -msgstr "anadir/" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "send-validation/" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "cambiar_interfaz/" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "estadÃsticas/" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "ajustes/" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "mantenimiento/" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "mensajes-denunciados/" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "paginas-estaticas/" - -#: forum/urls.py:149 -msgid "new/" -msgstr "nuevo/" - -#: forum/urls.py:153 -#, fuzzy -msgid "tools/" -msgstr "Herramientas" - -#: forum/urls.py:157 -#, fuzzy -msgid "test_email_settings/" -msgstr "Configuración de correo" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "%(user)s %(vote_desc)s %(post_desc)s" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "votó positivamente" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "votó negativamente" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "dijo <i>me gusta</i>" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "Sin indicar motivo" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "%(user)s denunció %(post_desc)s: %(reason)s" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "su" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "su" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" -"%(user)s aceptó la respuesta de %(answerer)s a la pregunta %(question)s de " -"%(asker)s" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "%(user)s marcó %(post_desc)s como favorita" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "%(user)s borró %(post_desc)s" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "denunciada por varios usuarios:" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "Versión inicial" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "preguntado" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "%(user)s preguntó %(question)s" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "respondido" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "%(user)s respondió a %(asker)s en %(question)s" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "comentó" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "%(user)s hizo un comentario a %(post_desc)s" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "editó" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "%(user)s editó %(post_desc)s" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "reetiquetada" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "Reetiquetar" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "%(user)s reetiquetó %(post_desc)s" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "deshizo" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" -"%(user)s deshizo los cambios en %(post_desc)s desde la versión %(initial)d " -"(%(initial_sum)s) a la versión %(final)d (%(final_sum)s)" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "cerró" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "%(user)s cerró %(post_desc)s: %(reason)s" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "convertido" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "%(user)s convirtió una respuesta a %(question)s en un comentario" - -#: forum/actions/node.py:201 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "%(user)s convirtió una respuesta a %(question)s en un comentario" - -#: forum/actions/node.py:225 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "%(user)s convirtió una respuesta a %(question)s en un comentario" - -#: forum/actions/node.py:231 -#, fuzzy -msgid "converted to question" -msgstr "Responde la pregunta" - -#: forum/actions/node.py:256 -#, fuzzy, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "%(user)s convirtió una respuesta a %(question)s en un comentario" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "transformado en wiki" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "%(user)s transformó %(node)s en un wiki comunitario." - -#: forum/actions/page.py:6 -msgid "created" -msgstr "creada" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "%(user)s creó una página nueva titulada %(page)s" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "%(user)s editó la página titulada %(page)s" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "publicada" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "%(user)s ha publicado una nueva página titulada %(page)s" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "unido" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "%(user)s %(have_has)s unido a %(app_name)s" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "se ha" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "se ha" - -#: forum/actions/user.py:27 -#, fuzzy -msgid "logged in" -msgstr "No estás conectado" - -#: forum/actions/user.py:30 -#, fuzzy, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "%(user)s %(have_has)s unido a %(app_name)s" - -#: forum/actions/user.py:36 -#, fuzzy -msgid "validated e-mail" -msgstr "validar tu email" - -#: forum/actions/user.py:46 -#, fuzzy, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "%(user)s %(have_has)s unido a %(app_name)s" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "perfil editado" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "%(user)s ha editado %(hes_or_your)s %(profile_link)s" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "perfil" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "le ha dado un bono" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "Felicidades, has recibido %s puntos extra de karma." - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "Gracias" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "Has sido penalizado con %s puntos de karma menos." - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "desconocido" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" -"%(user)s concedió %(value)s puntos de karma extra a %(users)s: %(message)s" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" -"%(user)s penalizó a %(users)s con %(value)s puntos de karma menos: " -"%(message)s" - -#: forum/actions/user.py:101 -#, fuzzy -msgid "gave reputation points" -msgstr "puntos de karma" - -#: forum/actions/user.py:114 -#, fuzzy, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "Felicidades, has recibido %s puntos extra de karma." - -#: forum/actions/user.py:116 -#, fuzzy -msgid "point" -msgid_plural "points" -msgstr[0] "Puntos" -msgstr[1] "Puntos" - -#: forum/actions/user.py:125 -#, fuzzy, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" -"%(user)s concedió %(value)s puntos de karma extra a %(users)s: %(message)s" - -#: forum/actions/user.py:130 -#, fuzzy, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" -"%(user)s penalizó a %(users)s con %(value)s puntos de karma menos: " -"%(message)s" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "recibió" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" -"Felicidades, has recibido la medalla '%(badge_name)s'. Visita <a href=" -"\"%(profile_url)s\">tu perfil</a>." - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "%(user)s %(were_was)s recibió la medalla %(badge_name)s" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "suspendido" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "Se te ha retirado la suspensión" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "durante %s dÃas" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "indefinidamente" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "%(user)s suspendió a %(users)s %(suspension)s: %(msg)s" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "Mal comportamiento" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "por favor introduce por lo menos una dirección IP" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "Dirección IP no válida: %s" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" -"Por favor, usar la notación cuádruple separada por puntos para las " -"direcciones IP" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "Permitir IPs" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" -"Lista de IPs separadas por comas desde las que se permite acceder al sitio " -"mientras está en mantenimiento" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "Mensaje" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" -"Un mensaje para mostrar a tus visitantes mientras el sitio está en modo de " -"mantenimiento" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "Por defecto" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "Ninguno" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "Markdown" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "TÃtulo" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "URL de la página" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "Contenido de la Página" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "Tipo MIME" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "Modo de dibujado" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "Plantilla" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "Contenido de la Barra Lateral" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "Modo de dibujado de la barra lateral" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "Permitir comentarios" - -#: forum/forms/admin.py:99 -#, fuzzy -msgid "send validation email" -msgstr "send-validation/" - -#: forum/forms/admin.py:104 -#, fuzzy -msgid "email address" -msgstr "Tu dirección de email" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "Tu email" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "No puedes dejar este campo en blanco" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "por favor introduce un email válido" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "Lo sentimos, pero este email no está en nuestra base de datos." - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "Contraseña actual" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" -"La contraseña antigua no es correcta. Por favor " -"introduce la contraseña correcta." - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "este campo es obligatorio" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "Elige un nombre de usuario" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "el nombre de usuario es obligatorio" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "lo sentimos, este nombre está ocupado, por favor elige otro" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "lo sentimos, este nombre no está permitido, por favor elige otro" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "lo sentimos, no hay ningún usuario con ese nombre" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" -"lo sentimos, tenemos un problema, este nombre de usuario está ocupado por " -"varios usuarios" - -#: forum/forms/general.py:52 -#, fuzzy -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" -"el nombre de usuario sólo puede contener letras, espacios y guiones bajos" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" -"el nombre de usuario es demasiado corto, por favor utiliza al menos %d " -"caracteres" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "Tu dirección de email" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "es necesaria la dirección de email" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "este email ya está siendo usado por otro usuario, por favor elige otro" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "Elige contraseña" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "es necesaria la contraseña" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "Vuelve a escribirla" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "por favor, vuelve a escribir la contraseña" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" -"lo sentimos, las 2 contraseñas introducidas no coinciden, por favor " -"inténtalo de nuevo" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "Pregunta" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "" -"escribe aquà la pregunta (abajo puedes introducir más detalles si son " -"necesarios)" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "la pregunta debe tener como mÃnimo %s caracteres" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "Contenido" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "el contenido de la pregunta debe tener como mÃnimo %s caracteres" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "el contenido de la respuesta debe tener como mÃnimo %s caracteres" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "etiquetas" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" -"Las etiquetas son palabras clave cortas separadas por espacios. Utiliza un " -"mÃnimo de %(min)s y un máximo de %(max)s. Pueden contener minúsculas (con " -"acentos) y guiones." - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "por favor utiliza entre %(min)s y %(max)s etiquetas" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" -"por favor utiliza entre %(min)s y %(max)s carácteres para cada etiqueta" - -#: forum/forms/qanda.py:108 -#, fuzzy -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" -"por favor utiliza los siguientes caracteres en las etiquetas: letras 'a-z', " -"números, y caracteres '.-_'" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" -"No tienes suficiente reputación para crear nuevas etiquetas. Las siguientes " -"etiquetas aún no existen: %s" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "wiki comunitario" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" -"si eliges la opción 'wiki comunitario', todos los usuarios podrán editar la " -"pregunta y las respuestas, y no se mostrará el nombre del autor" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "resumen de la actualización:" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" -"introduce un resumen breve de tus cambios (ej. corrección ortográfica, " -"gramática, estilo mejorado). Este campo es opcional." - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "Tu mensaje:" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "Tu nombre:" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "Email (no compartido con nadie):" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "este email no tiene por qué estar enlazado con gravatar" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "Nombre real" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "Página web" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "Ubicación" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "Fecha de nacimiento" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "no será mostrada, usada para calcular la edad, formato: AAAA-MM-DD" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "Perfil" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "Nombre de usuario" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "este email ya ha sido registrado, por favor utiliza otro" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "Instantáneamente" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "Sin notificaciones" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" -"¿Por primera vez aquÃ? Lee las <a href=\"%s\">Preguntas Frecuentes</a>." - -#: forum/models/action.py:216 -msgid "You" -msgstr "Usted" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "en %(link)s" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "%(user)s %(node_name)s %(node_desc)s" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "comentar" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "Desconocido" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "Sin descripción" - -#: forum/models/node.py:250 -msgid "post" -msgstr "entrada" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "[No publicada] %s" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "[borrada] " - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "[cerrada] " - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "interesante" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "ignorado" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "preguntado-por" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "respondido-por" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "suscrito-por" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "Configuración de medallas" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "Configura las medallas de tu web." - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "Aceptar respuestas" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "Configuración para modificar el comportamiento de aceptar respuestas" - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "Desactivar la aceptación de respuestas" - -#: forum/settings/accept.py:9 -#, fuzzy -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" -"Deshabilitar la posibilidad de aceptar respuestas. Si la habilitas en el " -"futuro, las respuestas actualmente aceptadas seguirán marcadas como " -"aceptadas." - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "Número máximo de respuestas aceptadas por pregunta" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" -"Cuántas respuestas aceptadas se permiten por pregunta. Utiliza 0 para no " -"poner lÃmite." - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "Número máximo de respuestas aceptadas por usuario/pregunta" - -#: forum/settings/accept.py:18 -#, fuzzy -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" -"Si se permite más de una respuesta aceptada, cuántas respuestas se pueden " -"aceptar por usuario y por pregunta." - -#: forum/settings/accept.py:21 -#, fuzzy -msgid "Users an accept own answer" -msgstr "Los usuarios pueden aceptar su propia respuesta" - -#: forum/settings/accept.py:22 -#, fuzzy -msgid "Are normal users allowed to accept their own answers.." -msgstr "Se permite a los usuarios normales aceptar sus propias respuestas?" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "Configuración básica" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "La configuración básica de tu aplicación" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "Logo de la aplicación" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "El logo principal de tu web." - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "Favicon" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "El favicon de tu web." - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "TÃtulo de la aplicación" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" -"El tÃtulo de tu aplicación que saldrá en la barra de tÃtulos del navegador" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "Nombre corto de la aplicación" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "Palabras clave de la aplicación" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "Las palabras clave que saldrán en las etiquetas meta del HTML." - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "Descripción de la aplicación" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "La descripción de tu aplicación" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "Nota de copyright" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "La nota de copyright visible en el pie de tu página." - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "Dirección de soporte" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" -"La URL que se ofrece para servicio a los usuarios. Puede ser http: o mailto: " -"o lo que sea el canal escogido para el servicio." - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "Dirección de contacto" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" -"La URL que se ofrece para que los usuarios se pongan en contaco. Puede ser " -"http: o mailto: o lo que se prefiera como canal de contacto." - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "Configuración de correo" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "Servidor de correo y otros ajustes relacionados con el email." - -#: forum/settings/email.py:10 -#, fuzzy -msgid "E-Mail settings test" -msgstr "Configuración de correo" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "Servidor de correo" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "El servidor SMTP que la aplicación usará para enviar correo." - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "Puerto de email" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" -"El puerto en el que escucha tu servidor SMTP. Normalmente es 25, pero puede " -"ser diferente." - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "Usuario de correo" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "El usuario para tu conexión SMTP." - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "Contraseña de email" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "La contraseña para tu conexión SMTP." - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "Usar TLS" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -#, fuzzy -msgid "Site 'from' Email Address" -msgstr "Remitente para los emails de la web" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" -"La dirección que se mostrará en el campo 'de' de los correos mandados por tu " -"sitio web." - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "Remitente para los emails de la web" - -#: forum/settings/email.py:48 -#, fuzzy -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" -"La dirección que se mostrará en el campo 'de' de los correos mandados por tu " -"sitio web." - -#: forum/settings/email.py:52 -#, fuzzy -msgid "Email Subject Prefix" -msgstr "Prefijo del asunto de los emails" - -#: forum/settings/email.py:53 -#, fuzzy -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" -"Todos los correos enviados desde tu sitio web tendrán en el asunto un " -"prefijo determinado por estas palabras. Normalmente es buena idea tener ese " -"prefijo para que los usuarios puedan organizar fácilmente un filtro en sus " -"clientes de correo." - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "Pie de página del email" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" -"Texto del pie de los mensajes de correo, normalmente con instrucciones de " -"desuscripción para cumplir con las legislaciones contra el correo basura, o " -"la dirección fÃsica de la organización que opera el sitio web. Consulte <a " -"href='http://es.wikipedia.org/wiki/Spam#Legislaci.C3.B3n'>la legislación " -"'anti-spam' de su paÃs</a> para más información." - -#: forum/settings/email.py:62 -#, fuzzy -msgid "Email Border Color" -msgstr "Color del borde del email" - -#: forum/settings/email.py:63 -#, fuzzy -msgid "The outter border color of the email base template" -msgstr "El color del borde exterior de la plantilla básica de correo" - -#: forum/settings/email.py:67 -#, fuzzy -msgid "Email Paragraph Style" -msgstr "Estilo de párrafo del email" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" -"Una cadena de CSS válida que se usará para vestir los párrafos de los " -"mensajes (la etiqueta P)." - -#: forum/settings/email.py:72 -#, fuzzy -msgid "Email Link Style" -msgstr "Estilo de los enlaces en el email" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" -"Una cadena de CSS válida que se usará para vestir los enlaces de los " -"mensajes (la etiqueta A)." - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "Claves externas" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "Claves de varios proveedores externos que tu aplicación puede usar." - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "Código de Google Sitemap" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" -"Este es el código que se obtiene al registrar un sitio en <a href='https://" -"www.google.com/webmasters/tools/'>Google webmaster central</a>." - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "Clave de Google Analytics" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" -"Tu clave de Google analytics. Puedes obtener una en el <a href='http://www." -"google.com/analytics/'>sitio oficial de Google analytics</a>" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "Ajustes de los formularios" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "Ajustes generales de los formularios" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "Activar wiki comunitario" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "¿Se pueden marcar las preguntas o respuestas como wiki comunitario?" - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "Limitar la creación de etiquetas" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" -"Limitar la creación de etiquetas a superusuarios, encargados del sitio o " -"usuarios con un mÃnimo de reputación." - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "Número mÃnimo de caracteres para el tÃtulo de una pregunta." - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" -"El número mÃnimo de caracteres que un usuario debe introducir en el campo " -"del tÃtulo de una pregunta." - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "Número mÃnimo de caracteres para el contenido de una pregunta." - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" -"El número mÃnimo de caracteres que un usuario debe introducir en el campo " -"del contenido de una pregunta." - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "Contenido de la pregunta vacÃo" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "Si el contenido de una pregunta puede dejarse vacÃo." - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "Número mÃnimo de etiquetas por pregunta" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "Cuántas etiquetas se necesitan para una pregunta." - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "Número máximo de etiquetas por pregunta" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "Cuántas etiquetas pueden usarse en las preguntas." - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "Longitud mÃnima de una etiqueta" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "Cómo puede ser de corta una etiqueta." - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "Longitud máxima de una etiqueta" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "Cómo puede ser de larga una etiqueta." - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "Número mÃnimo de caracteres de un comentario" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" -"El número mÃnimo de caracteres que un usuario debe introducir en un " -"comentario" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "Longitud máxima del comentario" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" -"El número máximo de caracteres que un usuario puede introducir en un " -"comentario" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "Permitir markdown en los comentarios" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" -"Si se permite a los usuarios que usen formato de markdown en sus comentarios." - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "Mostrar el gravatar del autor en los comentarios" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "Mostrar la imagen de gravatar de un autor de comentarios." - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "contexto" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "por defecto" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "Cambiar esto:" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "Configurar el karma mÃnimo" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" -"Configurar el karma mÃnimo necesario para realizar ciertas acciones en tu " -"web." - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "Karma mÃnimo para votar" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"votar positivamente." - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "Karma mÃnimo para votar negativamente" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "Karma mÃnimo del usuario para poder votar negativamente." - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "Karma mÃnimo para denunciar un mensaje" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "Karma mÃnimo del usuario para poder denunciar un mensaje." - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "Karma mÃnimo para comentar" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"comentar." - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "Karma mÃnimo para decir 'me gusta' de un comentario" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "Karma mÃnimo para decir 'me gusta' de un comentario." - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "Karma mÃnimo para subir ficheros" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"subir un archivo." - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "Karma mÃnimo para crear etiquetas" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" -"Karma mÃnimo que debe tener un usuario para poder crear nuevas etiquetas." - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "Reputación mÃnima para cerrar una pregunta propia" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "Reputación mÃnima para cerrar una pregunta propia." - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "Reputación mÃnima para reabrir las propias preguntas" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "Reputación mÃnima para reabrir una pregunta propia." - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "Reputación mÃnima para reetiquetar las preguntas de otros" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"reetiquetar las preguntas de otros." - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "Reputación mÃnima para editar notas convertidas en wiki" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"editar notas en modo wiki comunitario." - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "Reputación mÃnima para transformar un texto en wiki comunitario" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" -"Reputación mÃnima que un usuario debe tener para poder transformar un texto " -"en wiki comunitario." - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "Reputación mÃnima para editar las notas de los demás" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"editar las notas de los demás." - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "Reputación mÃnima para cerrar las notas de los demás" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"cerrar las notas de los demás." - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "Reputación mÃnima para borrar comentarios" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" -"El mÃnimo de reputación que debe tener un usuario para que se le permita " -"borrar comentarios." - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "Karma mÃnimo para convertir respuestas en comentarios" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" -"Karma mÃnimo que debe tener un usuario para poder convertir una respuesta en " -"un comentario." - -#: forum/settings/minrep.py:80 -#, fuzzy -msgid "Minimum reputation to convert comments to answers" -msgstr "Reputación mÃnima para borrar comentarios" - -#: forum/settings/minrep.py:81 -#, fuzzy -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" -"Karma mÃnimo que debe tener un usuario para poder convertir una respuesta en " -"un comentario." - -#: forum/settings/minrep.py:84 -#, fuzzy -msgid "Minimum reputation to convert answers to questions" -msgstr "Karma mÃnimo para convertir respuestas en comentarios" - -#: forum/settings/minrep.py:85 -#, fuzzy -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" -"Karma mÃnimo que debe tener un usuario para poder convertir una respuesta en " -"un comentario." - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "Reputación mÃnima para ver mensajes denunciados." - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" -"El mÃnimo de reputación que pudebeede tener un usuario para que se le " -"permita ver mensajes denunciados." - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "Ajustes de moderación" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "Define el flujo de moderación de tu sitio" - -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "Respuestas y Comentarios" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "comentar" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "Motivos de denuncia" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" -"Puedes escribir más opciones para razones que dar para denunciar un mensaje." - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "Motivos de cierre" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" -"Puedes escribir más opciones para razones que dar para cerrar una pregunta." - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "Configuración de ganancias y pérdidas de reputación" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" -"Configura los puntos de reputación que un usuario puede ganar o perder con " -"ciertas acciones." - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "Karma inicial" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "La reputación inicial que gana un usuario cuando se registra." - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" -"La reputación ḿaxima que puede ganar un usuario en un dÃa por recibir votos " -"positivos." - -#: forum/settings/repgain.py:15 -#, fuzzy -msgid "Rep gain by e-mail validation" -msgstr "Requerir un email validado para..." - -#: forum/settings/repgain.py:16 -#, fuzzy -msgid "Reputation a user gains for validating his e-mail." -msgstr "" -"Reputación que gana un usuario cuando se le acepta una de sus respuestas." - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "Karma ganado por votos positivos" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" -"Reputación que gana un usuario por recibir un voto positivo a un mensaje." - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "Karma perido por votos negativos" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" -"Reputación que pierde un usuario por recibir un voto negativo a un mensaje." - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "Karma perdido por votar negativamente" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "Reputación que pierde un usuario por votar negativamente a un mensaje." - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "Reputación ganada por respuesta aceptada" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" -"Reputación que gana un usuario cuando se le acepta una de sus respuestas." - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "Karma ganado por aceptar respuesta" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" -"Reputación que gana un usuario por aceptar una respuesta a una de sus " -"preguntas." - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "Karma perdido por nota denunciada." - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" -"Reputación que pierde un usuario por recibir una denuncia a uno de sus " -"mensajes." - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "Karma perdido por nota denunciada y oculta" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" -"Reputación que pierde un usuario por recibir el número necesario de " -"denuncias para ocultar la última revisión de una de sus notas." - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "Karma perdido por nota denunciada y borrada" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" -"Reputación que pierde un usuario por recibir el número necesario de " -"denuncias para borrar la última revisión de una de sus notas." - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "Mostrar la caja de bienvenida" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" -"¿Quieres mostrar la caja de bienvenida cuando un usuario visita tu sitio por " -"primera vez?" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "Presentación de la aplicación" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" -"La página de presentación que es visible en la barra lateral para los " -"usuarios anónimos." - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -#, fuzzy -msgid "Sitemap settings" -msgstr "Ver opciones" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -#, fuzzy -msgid "Questions Sitemap Limit" -msgstr "Gráfico de preguntas" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "Usar CSS personalizado" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "¿Quieres usar CSS personalizado?" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "CSS personalizado" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "Tu CSS personalizado." - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "Usar cabecera personalizada" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "¿Quieres usar una cabecera personalizada?" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "Cabecera Personalizada" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "Tu cabecera personalizada." - -#: forum/settings/static.py:42 -#, fuzzy -msgid "Custom Header rendering mode" -msgstr "Cabecera Personalizada" - -#: forum/settings/static.py:43 -#, fuzzy -msgid "How to render your custom header code." -msgstr "Tu cabecera personalizada." - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "Mostrar barra de anuncios." - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" -"Un fragmento de contenido que va bajo la barra de contenidos y se puede usar " -"para anuncios, etc." - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "Barra de anuncios" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "El contenido de la barra de anuncios." - -#: forum/settings/static.py:59 -#, fuzzy -msgid "Announcement bar rendering mode" -msgstr "Barra de anuncios" - -#: forum/settings/static.py:60 -#, fuzzy -msgid "How to render your announcement bar code." -msgstr "El contenido de la barra de anuncios." - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "Usar pie personalizado" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "¿Quieres usar pie personalizad?" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "Pie personalizado" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "Tu pie de página personalizado." - -#: forum/settings/static.py:76 -#, fuzzy -msgid "Custom footer rendering mode" -msgstr "Modo de pie personalizado" - -#: forum/settings/static.py:77 -#, fuzzy -msgid "How to render your custom footer code." -msgstr "Cómo aparecerá tu pie personalizado." - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "Reemplazar el pie por defecto" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "Encima del pie por defecto" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "Debajo del pie por defecto" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "Modo de pie personalizado" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "Cómo aparecerá tu pie personalizado." - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "Usar elmentos de cabecera personalizada." - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "¿Quieres usar elementos de cabecera personalizada?" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "Cabecera personalizada" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "Tus elementos de cabecera personalizada." - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "Configuración de subida de archivos" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "Ajustes relativos a la subida de archivos." - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "Carpeta donde se almacenan los ficheros que se suben" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" -"El directorio del disco donde se almacenarán los ficheros que se suban. " -"Nótese que esta carpeta debe existir." - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "Alias para subida de ficheros" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" -"El URL que hace de alias para la subida de ficheros. Nótese que si se cambia " -"esta configuración será necesario reiniciar el sitio." - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "Tamaño máximo de ficheros" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "El tamaño máximo de los ficheros subidos en megabytes." - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "Ajustes de las URLs" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" -"Algunas configuraciones para afinar el comportamiento de las URLs del sitio " -"(EXPERIMENTAL)." - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "Permitir unicode en los slugs" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "Permitir caracteres Unicode/no ascii en las URLs." - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "Forzar URL única" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" -"Redirigir la petición en caso de que exista una diferencia entre el texto " -"del slug en la URL y el slug de verdad." - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "Ajustes de los usuarios" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "Ajustes generales de los usuarios" - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "Karma inicial" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "Nombre de usuario editable" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "Permitir que los usuarios modifiquen su nombre de usuario." - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "Longitud mÃnima del nombre de usuario" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "La longitud mÃnima (en caracteres) de un nombre de usuario." - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "joder" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "mierda" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "culo" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "sexo" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "anadir" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "editar" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "guardar" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "borrar" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "gestionar" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "actualizar" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "quitar" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "nuevo" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "Nombres de usuario no permitidos" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" -"Lista separada por comas de nombres de usuario que no se permiten (nombes " -"que no se permiten durante el registro de un nuevo usuario)." - -#: forum/settings/users.py:36 -#, fuzzy -msgid "Truncate long usernames" -msgstr "ordenados por nombre" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -#, fuzzy -msgid "Show user accept rate" -msgstr "aceptar respuestas" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -#, fuzzy -msgid "Freeze accept rate" -msgstr "aceptar respuestas" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -#, fuzzy -msgid "Truncate usernames longer than" -msgstr "Longitud mÃnima del nombre de usuario" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "Mostrar rombos de estátus" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" -"Mostrar \"rombos\" de estátus junto a los nombres de usuario de los " -"moderadores o superusuarios." - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "No permitir emails repetidos" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "¿DeberÃa cada usuario tener una dirección única de correo electrónico?" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "Requerir un email validado para..." - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" -"Acciones que se les impedirán a los usuarios sin una dirección de correo " -"electrónico validada." - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "preguntar" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "responder" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "comentar" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "denunciar" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "No notificar a correos sin validar" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "No notificar a los usuarios con direcciones de correo sin validar." - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "Guardar los mensajes pendientes por X minutos" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" -"Cuánto tiempo (en minutos) se deberÃa guardar un mensaje hasta que el " -"usuario se registra o valida su dirección de correo." - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "Avisar de mensajes pendientes tras X minutos" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" -"Cuánto tiempo en minutos se deberÃa avisar a un usuario que acaba de " -"registrarse o validar su correo electronico de que tiene un mensaje " -"pendiente en vez de publicarlo automáticamente." - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" -"apropiado para mostrar en todos los sitios web con todo tipo de públicos" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" -"puede contener gestos obscenos, individuos vestidos provocativamente, " -"exabruptos menores, o violencia suave." - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" -"puede contener cosas como groserÃas obscenas, violencia intensa, desnudez o " -"uso de drogas duras." - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" -"puede contener imágenes sexuales 'hardcore' o violencia extremadamente " -"preocupante." - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "Rating del gravatar" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" -"Gravatar permite que los usuarios califiquen sus avatares para indicar si " -"una imagen es apropiada para cierto público." - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" -"(mystery-man) una silueta caricaturesca de una persona que no varÃa según su " -"dirección de correo electrónico" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "un dibujo geométrico basado en su correo electrónico" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "un \"monstruo\" autogenerado con distintos colores, caras, etc" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "caras autogeneradas con distintas facciones y fondos" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "Gravatar por defecto" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" -"Graatar tiene una serie de opciones incluidas que puedes usar por defecto." - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "Ver opciones" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "Configura cómo se muestran ciertas partes del sitio." - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "Recent tags block size" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" -"El número de etiquetas que se muestran en el bloque de etiquetas recientes " -"de la página principal." - -#: forum/settings/view.py:28 -#, fuzzy -msgid "Show tags in a cloud" -msgstr "Mostrar rombos de estátus" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "Recent awards block size" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" -"El número de medallas que se muestran en el bloque de medallas recientes en " -"la página principal." - -#: forum/settings/view.py:53 -#, fuzzy -msgid "Update latest activity on tag edit" -msgstr "Actividad reciente" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "Limit related tags block" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" -"Limita el tamaño del bloque de etiquetas relacionadas en las páginas de " -"listas de preguntas. Poner a 0 para mostrar todas las etiquetas." - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "Reglas de votación" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "Configure las reglas de votación en su sitio." - -#: forum/settings/voting.py:7 -#, fuzzy -msgid "Add reputation to max votes per day" -msgstr "Karma mÃnimo para votar" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "Máximo de votos por dÃa" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "El número máximo de votos que un usuario puede emitir por dÃa." - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "Comenzar advertencias sobre votos restantes" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "A partir de cuántos votos restantes se le deberÃa avisar a un usuario." - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "Máximo de denuncias por dÃa" - -#: forum/settings/voting.py:20 -#, fuzzy -msgid "The maximum number of times an can flag a post per day." -msgstr "" -"El número máximo de veces que un usuario puede denunciar un mensaje en un " -"dÃa." - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "Número de denuncias para ocultar mensaje" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" -"Cuántas denuncias tiene que recibir un mensaje para que se oculte de la " -"página principal." - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "Número de denuncias para borrar mensaje" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "Cuántas denuncias tiene que recibir un mensaje para que se borre." - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "DÃas para cancelar un voto" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" -"Cuántos dÃas tiene un usuario para cacelar su voto tras haberlo emitido." - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "No estás conectado" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "No estás conectado..." - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -#, fuzzy -msgid "...and the resource you're trying to access is protected." -msgstr "...y el recurso al que intentas acceder está protegido." - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "Redireccionando a la página de acceso." - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" -"Si no eres redirigido automáticamente en 5 segundos, por favor haz click" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "aquÃ" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "Prohibido" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "Lo sentimos, no tienes permiso para acceder a esta página." - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "Esto puede haber ocurrido por las siguientes razones:" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" -"has hecho click en un enlace de un email, pero estás conectado con un " -"usuario diferente del destinatario de ese email;" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "hay errores en la dirección (URL), por favor verifÃcala;" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "si crees que este error no deberÃa haber ocurrido, por favor" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "informa de este problema" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "a la página inicial" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "ver todas las preguntas" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "ver todas las etiquetas" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "Error 404" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "Página no encontrada (error 404)" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "Lo siento, no he encontrado la página que has pedido." - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "esta pregunta o respuesta ha sido borrada;" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" -"la dirección de la página (URL) tiene algún error - por favor compruébala;" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "si crees que este error 404 no deberÃa haber ocurrido, por favor" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "volver a la página anterior" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "lo siento, error del sistema" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" -"el error de sistema ha sido registrado y será corregido lo antes posible" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" -"por favor informa del error a los administradores de la web si lo deseas" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "ver las últimas preguntas" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "ver etiquetas" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "Página cerrada temporalmente por mantenimiento" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "Funciones de la cuenta" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "Cambiar contraseña" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "Cambiar la contraseña de tu cuenta." - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "Editar respuesta" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "ocultar vista previa" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "mostrar vista previa" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "atrás" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "versión" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "seleccionar versión" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "Activar/desactivar la vista previa en tiempo real del editor" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "Activar/desactivar vista previa" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "Guardar edición" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "Cancelar" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "Consejos para responder" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "por favor escribe una respuesta que sea relevante" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "intenta dar una respuesta y no enzarzarte en una discusión" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "por favor intenta dar detalles" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "Sé claro y conciso" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "lee las preguntas frecuentes" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "Enviar una pregunta" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "Puedes empezar a publicar tu pregunta anónimamente." - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" -"\n" -" Después de enviarla serás redirigido a una página para " -"identificarte o registrarte.\n" -" Tu pregunta no se publicará hasta que te identifiques o " -"te registres" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "y validar tu email." - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "Recuerda, tu pregunta no se publicará hasta que valides tu email." - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "Enviadme un enlace para validar mi email." - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "(obligatorio)" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "" -"Enviar la pregunta (después debes identificarte o registrarte para " -"publicarla)" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "Enviar la pregunta" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "Medalla" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "usuarios han recibido esta medalla:" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "Medallas" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "Medallas" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" -"A continuación sigue la lista de medallas disponibles y el número de veces " -"que se ha otorgado cada medalla.\n" -" " - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "Niveles de las medallas" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "medalla de oro: la de mayor reconocimiento y la menos frecuente" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "oro" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" -"Para obtener una medalla de oro es necesario demostrar amplios conocimientos." - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" -"medalla de plata: otorgada ocasionalmente por las contribuciones de calidad" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "plata" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" -"Obtener una medalla de plata requiere paciencia. Si has recibido una es " -"porque has contribuido significativamente." - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "Medalla de bronce" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "bronce" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "Si participas activamente recibirás esta medalla." - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "¿Estás seguro?" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "SÃ" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "No" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "Mensaje:" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "Cerrar" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "Ok" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "Contraseña" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -#, fuzzy -msgid "words" -msgstr "Contraseña" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "caracteres restantes" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -#, fuzzy -msgid "characters" -msgstr "caracteres restantes" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "Cerrar pregunta" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "Cerrar la pregunta" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "Motivos" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "Estoy de acuerdo con cerrarla" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "Inicio" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "Contacto" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "EnvÃanos tus comentarios" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" -"\n" -" <span class='big strong'>%(user_name)s</span>, esperamos recibir " -"tus comentarios. \n" -" Por favor escribe tu mensaje a continuación y envÃanoslo.\n" -" " - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" -"\n" -" <span class='big strong'>Estimado visitante</span>, esperamos " -"recibir tus comentarios.\n" -" Por favor escribe tu mensaje a continuación y envÃanoslo.\n" -" " - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "(este campo es obligatorio)" - -#: forum/skins/default/templates/feedback.html:53 -#, fuzzy -msgid "(wrong captcha)" -msgstr "Captcha inválido" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "Enviar comentario" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "volver a la página inicial" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "enviar una pregunta" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "buscar" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "preguntas" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "usuarios" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "bienvenidos a " - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "Salir" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "Pulsa el botón para desconectarte de la web." - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "Salir ahora" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "Ayuda del editor Markdown" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "Sintaxis del formato Markdown" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" -"Este documento describe algunas de las partes más importantes del formato " -"Markdown. Además de lo que se explica aquà hay mucho más. Puedes conocer " -"la sintaxis completa en la página de John Gruber <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" rel=\"nofollow\">Sintaxis de " -"Markdown</a> (en inglés)." - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "Cabeceras" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" -"Para los encabezamientos principales subraya el texto con el signo igual. " -"Para los encabezamientos de segundo nivel utiliza guiones para subrayar." - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "Esto es un H1" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "Esto es un H2" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" -"Si lo prefieres, puedes marcar los encabezamientos usando una almohadilla " -"(#) como prefijo. El número de almohadillas indica el nivel del " -"encabezamiento. Por ejemplo, una única almohadilla indica un encabezamiento " -"de primer nivel mientras que dos indican uno de segundo nivel:" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "Esto es un H3" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" -"Lo que elijas es una cuestión de preferencia. En ambos casos el documento " -"formateado queda igual." - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "Párrafos" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "Los párrafos se separan mediante lÃneas en blanco." - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "Éste es el primer párrafo." - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "Éste es el segundo párrafo." - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "Enlaces" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" -"\n" -" Los enlaces tienen dos partes.\n" -" La primera es el texto que el usuario verá, y se escribe " -"entre corchetes.\n" -" La segunda es la dirección de la página hacia la que quieres " -"enlazar y se escribe entre paréntesis.\n" -" " - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "texto del enlace" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "http://ejemplo.com/" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "Formato" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" -"Para indicar texto en negrita, escrÃbelo entre dos asteriscos (**) o dos " -"guiones bajos (__):" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "Esto es negrita" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "Esto también es negrita" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" -"Para indicar cursiva escribe el texto entre un único asterisco (*) o guión " -"bajo (_):" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "Esto es cursiva" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "Esto también es cursiva" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" -"Para indicar cursiva y negrita escribe el texto entre tres asteriscos (***) " -"o guiones bajos (___):" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "Esto es negrita y cursiva" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "Esto es también negrita y cursiva" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "Bloques de cita" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" -"Para indentar un texto utiliza el signo 'mayor que' (>) antes de cada " -"lÃnea que forme parte de la cita." - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "Esto es parte de un bloque de cita." - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "Esto es parte del mismo bloque de cita." - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" -"En lugar de ponerlo delante de cada lÃnea puedes ponerlo al principio y al " -"final del bloque usando un salto de lÃnea." - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "Esto continúa el bloque incluso aunque no hay sÃmbolo 'mayor que'." - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "La lÃnea en blanco finaliza el bloque." - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "Listas" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" -"Para crear una lista numerada con Markdown, escribe delante de cada elemento " -"de la lista un prefijo con un número, un punto y un espacio. El número que " -"utilices no importa." - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "Elemento" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" -"Para crear una lista de puntos, escribe cada elemento de la lista con el " -"prefijo asterisco (*)." - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "Un elemento de la lista" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "Otro elemento de la lista" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "El tercer elemento de la lista" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "Mucho más" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" -"La sintaxis de Markdown permite muchas más cosas además de las descritas " -"aquÃ. Pero éstas cubren muchas de las necesidades habituales. Para saber " -"más del formato Markdown puedes ir a <a href=\"http://daringfireball.net/" -"projects/markdown/syntax\" target=\"_blank\" rel=\"nofollow\">la página de " -"Markdown donde empezó todo</a> (en inglés)." - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "Por favor demuestra que eres un ser humano" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "Soy un ser humano" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "Buscar" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "usando tu navegador." - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "preguntas por página" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "anterior" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "página actual" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "número de páginas" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "página siguiente" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "PolÃtica de privacidad" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "mensaje general sobre privacidad" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "Visitantes del sitio" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "qué información técnica se recopila sobre los visitantes" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "Información personal" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "detalles sobre polÃticas de información personal" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "Otros servicios" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "detalles sobre la compartición de datos con terceras partes" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "detalles de polÃtica de cookies" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "Cambios de polÃtica" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "cómo se pueden cambiar las polÃticas de privacidad" - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "ver preguntas etiquetadas '%(tagname)s'" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" -"La pregunta ha sido cerrado por el siguiente motivo \"%(close_reason)s\" " -"por La pregunta ha sido cerrado por la siguiente razón " -"\"%(close_reason)s\" by\n" -" " - -# This requires a plural in the header. Don't know how to set it up. -- Javier Candeira -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "Una Respuesta:" -msgstr[1] "%(counter)s Respuestas:" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "Tu respuesta" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "¡Sé el primero en responder a esta pregunta!" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" -"Enviar la respuesta (después debes identificarte o registrarte para " -"publicarla)" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "Responde tu propia pregunta" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "Responde la pregunta" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "Etiquetas de la pregunta" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "ver preguntas etiquetadas " - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "usando etiquetas" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "pregunta realizada" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "pregunta vista" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "veces" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "última modificación" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "Preguntas relacionadas" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "Editar pregunta" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "Consejos para preguntar" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "Qué son las etiquetas" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "Cambiar las etiquetas" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "¿Por qué usar y modificar las etiquetas?" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "las etiquetas ayudan a organizar las preguntas" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "los que editan etiquetas reciben medallas" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "respuestas" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "votos" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "lecturas" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "suscribirse al RSS de preguntas" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "Reabrir la pregunta" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "Abrir la pregunta cerrada previamente" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "Esta pregunta fue cerrada por el siguiente motivo" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "el" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "fecha de cierre" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "Reabrir esta pregunta" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "Histórico de versiones" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "haz click para ocultar/mostrar la versión" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" -"\n" -"\t Buscar en %(app_name)s\n" -"\t" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "Seguir esta pregunta" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "Por Email" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "Has sido suscrito automáticamente a esta pregunta." - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "Estás suscrito a esta pregunta." - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "No estás suscrito a esta pregunta." - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "dar de baja mi suscripción" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "suscribirme" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" -"\n" -" (puedes ajustar las opciones de notificación en tu <a href=" -"\"%(subscriptions_url)s\">perfil</a>)\n" -" " - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" -"Una vez que entres podrás suscribirte desde aquà para recibir actualizaciones" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "Por RSS" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "suscribirme a las respuestas" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "Respuestas" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "suscribirme a los comentarios y a las respuestas" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "Respuestas y Comentarios" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "Lista de etiquetas" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "Todas las etiquetas que coinciden con la búsqueda" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "No se ha encontrado nada" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "Opciones de acceso" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" -"Estas son las cuentas externas que están asociadas con este usuario " -"actualmente" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" -"Actualmente no tienes cuentas externas asociadas con este usuario. Puedes " -"añadirlas para conectarte fácilmente usando por ejemplo tu cuenta de " -"Facebook o Google." - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "Añadir una nueva forma de identificarme" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "Aquà puedes cambiar tu contraseña. ¡Asegúrate de recordarla!" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" -"Puedes configurar una contraseña para tu cuenta, para poder entrar usando " -"usuario y contraseña." - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "Crear contraseña" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "Conectar tu OpenID con esta web" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "Crear una cuenta en esta web" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "Ésta es tu primera conexión a través de " - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "Esta cuenta ya existe, por favor usa otra." - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "Crear cuenta" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -#, fuzzy -msgid "This e-mail has already been validated" -msgstr "este email ya ha sido registrado, por favor utiliza otro" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -#, fuzzy -msgid "Already validated" -msgstr "No validado" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "%(prefix)s Valida tu email en %(app_name)s" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" -"Por favor haz click en este enlace para que podamos verificar tu dirección " -"de email:" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "Validar mi dirección de email" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" -"si el enlace de arriba no es clicable, por favor copie y pegue este URL en " -"la barra de direcciones de su navegador:" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" -"Copie y pegue esta dirección en la barra de direcciones de su navegador para " -"ayudarnos a verificar su dirección de correo electrónico:" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "Entrar" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "Acceso de usuarios" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "O bien..." - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" -"\n" -" Haz click para identificarte a través de tu cuenta en cualquiera de " -"estas webs. Es lo más fácil y seguro:\n" -" " - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "Validar mi dirección de correo electrónico después de mi registro." - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "Haz click" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#, fuzzy -msgid "if you're having trouble signing in." -msgstr "si tienes problemas para entrar." - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "Introduce tu" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "¿Por qué usar OpenID?" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "con openid es más sencillo" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "reusar openid" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "openid está adoptado ampliamente" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "openid es un estándar abierto soportado" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "Para saber más" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "Obtener OpenID" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "%(prefix)s Enlace de acceso temporal" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" -"El siguiente enlace te permitirá acceder una vez a tu cuenta en %(app_name)s." - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "Ir a tu cuenta" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" -"El siguiente URL te permite el acceso por una sola vez a tu dirección en " -"%(app_name)s." - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "Solicitar una clave de acceso temporal" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "Solicitar una clave de acceso temporal" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "Enviar enlace" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "%(prefix)s Bienvenido a %(app_name)s" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" -"Hola y bienvenido a %(app_name)s. Sabemos que tienes mucho que hacer, asà " -"que seremos breves." - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" -"Aquà va tu información de registro (almacénalo en un lugar fresco y seco):" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "Nombre de usuario:" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" -"Contraseña: ¿no creerÃas que te Ãbamos a mandar la contraseña legible por " -"cualquiera!" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "El siguiente enlace nos permitirá verificar tu dirección de email:" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "Respuesta por %(author)s" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "%(who)s ha seleccionado esta respuesta como la respuesta correcta" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "marca esta respuesta como la respuesta aceptada" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -#, fuzzy -msgid "Points:" -msgstr "Puntos" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "caracteres faltan" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "caracteres restantes" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr " comentar" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "cancelar" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "Respuestas y Comentarios" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "Editar comentario" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "Borrar comentario" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -#, fuzzy -msgid "Convert comment to answer" -msgstr "convertir en comentario" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "ahora mismo" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "Me gusta este comentario (haz click otra vez para cancelar)" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "Cerrar la pregunta" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "mostrando %(showing)s de %(total)s" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "añadir nuevo comentario" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "Colocar el comentario bajo:" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -#, fuzzy -msgid "Convert to question" -msgstr "Cerrar la pregunta" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" -"marcar/desmarcar esta pregunta como favorita (haz click otra vez para " -"cancelar)" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -#, fuzzy -msgid "Permanent link" -msgstr "enlace permanente" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "más" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -#, fuzzy -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" -"Por favor selecciona un motivo o utiliza la caja de texto para explicar " -"otros motivos" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "Me gusta (haz click otra vez para cancelar)" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "número actual de votos" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "No me gusta (haz click otra vez para cancelar)" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "Esta %(post_type)s está marcada como \"wiki comunitario\"." - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "Puedes <a href=\"%(edit_url)s\">editarla</a> libremente." - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "%(prefix)s Una respuesta a: %(question_title)s ha sido aceptada" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" -"\n" -" %(accepted_by_link)s ha aceptado la respuesta de " -"%(answer_author_link)s a su pregunta\n" -" %(question_link)s.\n" -" " - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" -"\n" -"%(accepted_by)s ha aceptado la respuesta de %(answer_author)s a su pregunta\n" -"\"%(question_title)s\".\n" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "Hola" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "Gracias" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "PD: Puedes configurar las notificaciones que recibes" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "PD: Puedes configurar las notificaciones que recibes aquÃ:" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "%(prefix)s Resumen diario" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -" Esto es un resumen de las novedades que ha habido en " -"%(app_name)s desde el último resumen que te enviamos.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" -"\n" -" Hay %(new_member_count)s nuevos miembros en la comunidad. " -"%(new_member_links)s han sido los más activos hasta ahora.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -" %(new_member_links)s se han unido a %(app_name)s.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" -"\n" -" %(new_question_count)s %(new_questions_link)s se han publicado " -"desde el último resumen.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "Creemos que pueden interesarte estas preguntas:" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -#, fuzzy -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" -"Estas preguntas no han recibido mucha atención de la comunidad, pero creemos " -"que podrÃas echar una mano:" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" -"Mientras tanto, algunas de tus %(subscriptions_link)s tienen nuevas " -"actualizaciones desde que las visitaste por última vez:" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, fuzzy, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" -"\n" -" Esto es un resumen de las novedades que ha habido en " -"%(app_name)s desde el último resumen que te enviamos.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:112 -#, fuzzy, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" -"\n" -" Hay %(new_member_count)s nuevos miembros en la comunidad. " -"%(new_member_links)s han sido los más activos hasta ahora.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:114 -#, fuzzy, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" -"\n" -" %(new_member_links)s se han unido a %(app_name)s.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:119 -#, fuzzy, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" -"\n" -" %(new_question_count)s %(new_questions_link)s se han publicado " -"desde el último resumen.\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:134 -#, fuzzy -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" -"Mientras tanto, algunas de tus %(subscriptions_link)s tienen nuevas " -"actualizaciones desde que las visitaste por última vez:" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "%(prefix)s Mensaje de contacto desde %(app_name)s" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "Remitente" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "anónimo" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "email" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "Cuerpo del mensaje:" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "%(prefix)s Nueva respuesta a: %(question_title)s" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -" %(author_link)s ha publicado una respuesta nueva en %(app_name)s " -"a la pregunta\n" -" %(question_link)s:\n" -" " - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "No te olvides de ir a la web y votar." - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" -"\n" -"%(answer_author)s ha publicado una respuesta nueva en %(safe_app_name)s a la " -"pregunta\n" -"\"%(question_title)s\":\n" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "%(prefix)s Nuevo comentario en: %(question_title)s" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "%(author_link)s ha publicado un comentario a " - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "la respuesta publicada por %(post_author)s a " - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "la pregunta %(question_link)s" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "%(comment_author)s acaba de publicar un comentario a " - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "la respuesta publicada por %(safe_post_author)s a " - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "la pregunta \"%(question_title)s\"" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" -"%(prefix)s %(safe_newmember_name)s se ha registrado en %(safe_app_name)s" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" -"\n" -" %(newmember_link)s se ha unido a %(app_name)s.\n" -" Ver el <a style=\"%(a_style)s\" href=\"%(app_url)s" -"%(newmember_url)s\">perfil de %(newmember_name)s</a>.\n" -" " - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" -"\n" -"%(safe_newmember_name)s se ha unido a %(safe_app_name)s. Puedes visitar el " -"perfil de %(safe_newmember_name)s usando el siguiente enlace:\n" -"%(app_url)s%(newmember_url)s\n" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "%(prefix)s Nueva pregunta: %(question_title)s en %(safe_app_name)s" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" -"\n" -" %(author_link)s ha publicado una pregunta nueva en %(app_name)s, " -"titulada\n" -" %(question_link)s\n" -" y etiquetada \"<em>%(tag_links)s</em>\". Esto es lo que dice:\n" -" " - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" -"\n" -"%(question_author)s ha publicado una pregunta nueva en %(safe_app_name)s, " -"titulada\n" -"\"%(question_title)s\" y etiquetada %(question_tags)s:\n" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -#, fuzzy -msgid "Site Administration" -msgstr "administración" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "Ãrea de administración" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "Cambiar a interfaz estilo Django" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "Menú de administración" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "Modo de mantenimiento" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "Mensajes denunciados" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -#, fuzzy -msgid "Create User" -msgstr "Respuesta Genial" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -#, fuzzy -msgid "Quick creation of a new user" -msgstr "Preguntas que respondo" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "Guardar" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "Tablero" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "Bienvenido al área de administración" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "EstadÃsticas rápidas" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "en las últimas 24 horas" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "usuario" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "se unió en las últimas 24 horas" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "Estado de la web" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" -"Tu sitio está funcionando en modo 'bootstrap'. Pulsa el botón inferior para " -"volver a la configuración por defecto." - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" -"Tu sitio está funcionando en modo standard. Pulsa el botón inferior para " -"pasar a modo 'bootstrap'." - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" -"Tu sitio está funcionando con algunas configuraciones personalizadas. Pulsa " -"los botones inferiores para pasar a los modos por defecto o 'bootstrap'." - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "¿Estás seguro de que quieres volver a la configuracón por defecto?" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "volver a la configuración por defecto" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "¿Estás seguro de que quieres pasar al modo 'bootstrap'?" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "¡vamos a bootstrap!" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "Actividad reciente" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "Ãrea de administración" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "Bienvenido," - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "A la interfaz estándar" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "Volver a la página inicial" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "Salir" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "Inicio" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "Cambios sin publicar" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "Los elementos marcados con este icono tienen cambios sin publicar." - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "Ajustes del workflow" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "Ajustes del foro" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "Contenido estático" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "Páginas Personalizadas" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "Cambios no guardados" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "Otros ajustes" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "Herramientas" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "Editando la página" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "Páginas Estáticas" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "Creando la página" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "Nueva página" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "Publicada" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "No publicada" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "Editar" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "Dejar de publicar" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "Publicar" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "Estos son los mensajes que han sido denunciados por los usuarios." - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "EstadÃsticas de la web" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "Recalcular puntuaciones y reputación" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "Esta es una operación pesada, ¿estás seguro?" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "Recalcular" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, fuzzy, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "%(prefix)s Valida tu email en %(app_name)s" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" -"El modo de mantenimiento te permite cerrar el sitio para mantenimento, " -"restringiendo el acceso a un número predeterminado de direcciones IP." - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "El sitio está funcionando actualmente en modo de mantenimiento" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -#, fuzzy -msgid "You can adjust the settings bellow" -msgstr "Puedes ajustar las configuraciones aquà abajo" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "Configurar ajustes" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "Sitio abierto" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "Cerrado por mantenimiento" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "Moderación" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" -"Estas herramientas te ayudan a buscar comportamientos no deseados y patrones " -"de trampa." - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "Verificar:" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "usuarios con más karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "usuarios más recientes" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "usuarios más antiguos" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "usuarios con estas IDs" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "(Lista separada por comas de IDs de usuarios)" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "Ir" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "Posibles tramposos" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "Email" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "Validado" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "No validado" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "Karma:" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "Karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "Acciones que afectan" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "IPs cruzadas" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "Puntuación de hacer trampas" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "Posibles cuentas falsas" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "de" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -#, fuzzy -msgid "rep" -msgstr "reabrir" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -#, fuzzy -msgid "uses" -msgstr "usuarios" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -#, fuzzy -msgid "Node manager" -msgstr "gestionar" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -#, fuzzy -msgid "Filter" -msgstr "plata" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -#, fuzzy -msgid "any" -msgstr "dÃa" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -#, fuzzy -msgid "By tag(s)" -msgstr "etiquetas" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -#, fuzzy -msgid "Filter name..." -msgstr "nombre de usuario" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -#, fuzzy -msgid "Action" -msgstr "Ubicación" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -#, fuzzy -msgid "Mark deleted" -msgstr "borrar" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -#, fuzzy -msgid "Undelete" -msgstr "recuperar" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -#, fuzzy -msgid "Delete completely" -msgstr "Borrar comentario" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -#, fuzzy -msgid "Close (questions only)" -msgstr "Cerrar pregunta" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -#, fuzzy -msgid "Type" -msgstr "Tipo MIME" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -#, fuzzy -msgid "State" -msgstr "Guardar" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -#, fuzzy -msgid "Last activity by" -msgstr "Actividad reciente" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -#, fuzzy -msgid "Last activity at" -msgstr "Actividad reciente" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -#, fuzzy -msgid "Tags" -msgstr "etiquetas" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "Vista previa" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "Deshacer los Cambios" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "Páginas estáticas" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "Te permite crear un juego de páginas estáticas" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "Seleccionar página a editar" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "Páginas" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -#, fuzzy -msgid "Are you sure you want to delete this page?" -msgstr "¿Estás seguro de que quieres volver a la configuracón por defecto?" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "borrar" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" -"Algunos gráficos sencillos para ayudarte a hacerte una idea de qué está " -"pasando en tu sitio." - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#, fuzzy -msgid "next" -msgstr "texto" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "voto" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "esta pregunta tiene una respuesta aceptada" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "lectura" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "Etiquetas relacionadas" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "ver preguntas etiquetadas '%(tag_name)s'" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "últimas preguntas actualizadas" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "activas" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "preguntas enviadas más recientemente" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "las más recientes" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "preguntas más candentes" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "candentes" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "preguntas más votadas" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "las más votadas" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "Dar de baja" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "Último comprobado" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "Etiquetas que me interesan:" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "quitar '%(tag_name)s' de la lista de etiquetas que me interesan" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "Añadir" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "Etiquetas que quiero ocultar:" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "quitar '%(tag_name)s' de la lista de etiquetas ignoradas" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "Encontrados por etiquetas" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "Resultados de la búsqueda" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "Encontrados por tÃtulo" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "Preguntas sin responder" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "Todas las preguntas" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "Trucos del editor" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "*cursiva* o _cursiva_" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "**negrita** o __negrita__" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "enlace" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "texto" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "imagen" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "lista numerada:" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" -"Para añadir un salto de lÃnea simplemente añade dos espacios donde desearÃas " -"que estuviera el salto de lÃnea." - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "se permite código HTML básico" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "aprender más del editor Markdown" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "Medallas recientes" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "todas las medallas" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "Etiquetas recientes" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "etiquetas populares" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "Editar perfil de usuario" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "es la imagen asociada a tu dirección de email en gravatar.com" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "gravatar" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "Usuario registrado" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "Nombre de Usuario" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "Actualizar" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "karma" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "Suspendido" - -#: forum/skins/default/templates/users/info.html:42 -#, fuzzy -msgid "Administrator" -msgstr "administración" - -#: forum/skins/default/templates/users/info.html:45 -#, fuzzy -msgid "Moderator" -msgstr "Moderación" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "nombre real" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "miembro desde" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "última visita" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "web del usuario" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "ubicación" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "edad" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "y pico" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "no validado" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "votos sin usar de hoy" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "votos restantes" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "Puntos" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "Herramientas del usuario" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -#, fuzzy -msgid "Users Online" -msgstr "Acceso de usuarios" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "usuarios que coinciden con la búsqueda %(suser)s:" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "No se ha encontrada nada." - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "Preferencias" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "Aquà puedes configurar algunas preferencias." - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "Navegación:" - -#: forum/skins/default/templates/users/preferences.html:22 -#, fuzzy -msgid "Always remember the sort order I apply to the lists I view" -msgstr "Ver las listas en el último orden que las consulté" - -#: forum/skins/default/templates/users/questions.html:11 -#, fuzzy -msgid "No favorite questions to display." -msgstr "preguntas más votadas" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "medallas" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "(suspendido)" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> Pregunta\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> Preguntas\n" -" " - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> Respuesta\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> Respuestas\n" -" " - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "la respuesta ha sido votada %(vote_count)s veces" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "esta respuesta ha sido seleccionada como correcta" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(cnt)s</span> Voto\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votos\n" -" " - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "voto positivo" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "número de veces que el usuario ha votado positivamente" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "voto negativo" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "número de veces que el usuario ha votado negativamente" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> Etiqueta\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> Etiquetas\n" -" " - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" -"ver otras preguntas con contribuciones de %(view_user)s etiquetadas " -"'%(tag_name)s' " - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> Medalla\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> Medallas\n" -" " - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "Gestiona tus suscripciones actuales" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "no mostrar auto-suscripción" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "mostrar auto-suscripción" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "Opciones de notificación y suscripción" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" -"\n" -" Aquà puedes decidir qué tipos de notificaciones deseas recibir, y su " -"frecuencia.<br />\n" -" " - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "Notificadme cuando:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "Se registra un usuario nuevo" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "Se publica una pregunta nueva" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "Se publica una pregunta con alguna etiqueta que me interesa" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "Hay cambios en una pregunta a la que estoy suscrito" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "Suscribidme automáticamente a:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "Preguntas que leo" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "Preguntas que contienen etiquetas que me interesan" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "Todas las preguntas" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "En mis suscripciones, notificadme cuando:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "Se publica una respuesta" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "Se publica un comentario a uno de mis mensajes" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "Se publica un comentario" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "Se acepta una respuesta" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -#, fuzzy -msgid "Daily Digest:" -msgstr "%(prefix)s Resumen diario" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" -"Enviadme un resumen diario con las novedades de la web (preguntas nuevas, " -"etc.)" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" -"Notificadme cuando alguien responde a uno de mis comentarios a cualquier " -"mensaje usando la notación <pre>@usuario</pre>" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "Suspender usuario" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "Indefinidamente" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "Por X dÃas" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "Suspender por" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "dÃas" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "Mensaje público" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "Este mensaje será visible en el registro de actividad del usuario." - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "Mensaje privado" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "Si se activa, sólo el usuario suspendido verá este mensaje." - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "Usuarios" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "votar positivamente" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "votar negativamente" - -# This requires a plural in the header. Don't know how to set it up. -- Javier Candeira -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "Una Respuesta:" -msgstr[1] "%(counter)s Respuestas:" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "las etiquetas son necesarias" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" -"\n" -" tamaño: \"hasta %(max_number_of_tags)s etiquetas, " -"menos de %(max_length_of_tags)s caracteres por cada una\"\n" -" " - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, fuzzy, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" -"\n" -" (puedes ajustar las opciones de notificación en tu <a href=" -"\"%(subscriptions_url)s\">perfil</a>)\n" -" " - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "ocultar las preguntas ignoradas" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "" -"la subida de imágenes está limitada a usuario con más de 60 puntos de karma" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "mostrar todos" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -#, fuzzy -msgid "Score" -msgstr "más" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -#, fuzzy -msgid "*italic* or __italic__" -msgstr "*cursiva* o _cursiva_" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -#, fuzzy -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "Ver las listas en el último orden que las consulté" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "puntos de karma" - -#: forum/templatetags/extra_tags.py:114 -#, fuzzy, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "esta pregunta tiene una respuesta aceptada" - -#: forum/templatetags/extra_tags.py:120 -#, fuzzy, python-format -msgid "%s has one accepted answer" -msgstr "esta pregunta tiene una respuesta aceptada" - -#: forum/templatetags/extra_tags.py:126 -#, fuzzy, python-format -msgid "%s has no accepted answers" -msgstr "esta pregunta tiene una respuesta aceptada" - -#: forum/templatetags/extra_tags.py:132 -#, fuzzy -msgid "accept rate" -msgstr "aceptar respuestas" - -#: forum/templatetags/extra_tags.py:133 -#, fuzzy -msgid "Rate of the user's accepted answers" -msgstr "marca esta respuesta como la respuesta aceptada" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "hace 2 dÃas" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "ayer" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hour ago" -msgstr "hace %(hr)d hora" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hours ago" -msgstr "hace %(hr)d hora" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "hace %(hr)d hora" -msgstr[1] "hace %(hr)d horas" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "min ago" -msgstr "hace %(min)d minuto" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "mins ago" -msgstr "hace %(min)d minuto" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "hace %(min)d minuto" -msgstr[1] "hace %(min)d minutos" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy -msgid "sec ago" -msgstr "ver etiquetas" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy -msgid "secs ago" -msgstr "hace %(sec)d segundo" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "hace %(sec)d segundo" -msgstr[1] "hace %(sec)d segundos" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "enlace permanente" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "enlace permanente a la respuesta" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "reetiquetar" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "reabrir" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "cerrar" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "denunciar" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" -"denunciar este mensaje por ofensivo, con spam, publicidad, texto malicioso, " -"etc." - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "recuperar" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "ver versiones" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "transformar en wiki comunitario" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "cancelar wiki comunitario" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "convertir en comentario" - -#: forum/templatetags/node_tags.py:175 -#, fuzzy -msgid "convert to question" -msgstr "Responde la pregunta" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "enviada" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "Gráfico de preguntas" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "Gráfico de usuarios" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "'%s' opciones guardadas" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "Modo 'bootstrap' activado" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "Restaurados todos los valores por defecto" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "Todos los valores recalculados" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "Modo de mantenimiento activado" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "Configuración ajustada" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "El sitio se está ejecutando normalmente" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "Ahora mismo estamos de mantenimiento. Volvemos en un momento" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "createuser" -msgstr "creada" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "Create new user" -msgstr "Respuesta Genial" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, fuzzy, python-format -msgid "See %s profile" -msgstr "perfil editado" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -#, fuzzy -msgid "score" -msgstr "sort" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -#, fuzzy -msgid "act_at" -msgstr "contacto" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -#, fuzzy -msgid "nodeman" -msgstr "markdown-del-nodo/" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -#, fuzzy -msgid "filter" -msgstr "plata" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -#, fuzzy -msgid "bulk close" -msgstr "cerrar" - -#: forum/views/admin.py:496 -#, fuzzy -msgid "Selected questions were closed" -msgstr "Preguntas relacionadas" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" -"Lo sentimos, estos datos de acceso pertenecen a otro usuario. Por favor sal " -"de tu sesión actual e inténtalo de nuevo." - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "Ya estás conectado con este usuario." - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "Estos datos de acceso ya están asociados con tu cuenta." - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "Los nuevos datos de acceso se han asociado con tu cuenta" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" -"Vaya, algo ha ido mal en mitad del proceso. Por favor inténtalo de nuevo. " -"Ten en cuenta que debes tener las cookies activas para poder entrar." - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "Se ha enviado un email de bienvenida a tu dirección de email. " - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" -"Vaya, algo ha ido mal en mitad del proceso. Por favor inténtalo de nuevo." - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "Se ha enviado un email con tu clave de acceso temporal" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" -"Estás conectado con una clave de acceso temporal, por favor aprovecha para " -"arreglar tu problema de acceso." - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "Se ha enviado un mensaje con un enlace para que valides tu email." - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "Gracias, tu email ha sido validado." - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "Nueva contraseña guardada" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "Tu contraseña ha sido cambiada" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "Has quitado la conexión con %s" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "Bienvenido de nuevo %s, ya estás conectado" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "Tienes una %s pendiente de ser enviada." - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "guardarlo" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "revisar" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "cancelar" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "Lo sentimos, pero esta cuenta está suspendida" - -#: forum/views/commands.py:28 -#, fuzzy, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" -"Lo sentimos pero no tienes suficiente karma para %(action)s.<br />Por favor " -"consulta las <a href='%(faq_url)s'>preguntas frecuentes</a>" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"Lo sentimos pero no tienes suficiente karma para %(action)s.<br />Por favor " -"consulta las <a href='%(faq_url)s'>preguntas frecuentes</a>" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" -"Lo sentimos pero no puedes %(action)s tu propio mensaje.<br />Por favor " -"consulta las <a href='%(faq_url)s'>preguntas frecuentes</a>" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" -"Lo sentimos pero los usuarios anónimos no pueden %(action)s.<br />Por favor " -"entra con tu usuario o crea una cuenta <a href='%(signin_url)s'>aquÃ</a>." - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"Lo sentimos, pero hoy no te quedan suficientes %(action)s.<br />El lÃmite es " -"%(limit)s al dÃa.<br />Por favor consulta las <a " -"href='%(faq_url)s'>preguntas frecuentes</a>" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" -"Lo sentimos, pero no puedes %(action)s dos veces el mismo mensaje.<br />Por " -"favor consulta las <a href='%(faq_url)s'>preguntas frecuentes</a>" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" -"Lo sentimos pero no puedes cancelar un voto después de %(ndays)d %(tdays)s" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "dÃa" -msgstr[1] "dÃas" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "Te quedan %(nvotes)s %(tvotes)s hoy." - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "denunciar mensajes" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "denunciar" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "denuncias" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "Ya denunciaste este mensaje con este motivo: %(reason)s" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "Motivo vacÃo" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "Gracias por la información. Un moderador revisará tu envÃo pronto." - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "borrar comentarios" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "marcar una pregunta como favorita" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "Petición inválida" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "Comentario vacÃo" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "El comentario debe tener por lo menos %d caracteres." - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "El comentario no puede tener más de %d caracteres." - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "editar comentarios" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "aceptar respuestas" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "Lo sentimos pero no puedes aceptar la respuesta" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "Esta pregunta ya tiene una respuesta aceptada." -msgstr[1] "" -"Lo sentimos pero esta pregunta ha llegado al lÃmite de respuestas aceptadas." - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -"El autor de esta respuesta ya tiene una respuesta aceptada en esta pregunta." -msgstr[1] "" -"Lo sentimos pero el autor de esta respuesta ha llegado al lÃmite de " -"respuestas aceptadas por pregunta." - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -" <span class=\"count\">%(counter)s</span> Respuesta\n" -" " - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "borrar mensajes" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "cerrar preguntas" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "reabrir preguntas" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "transformar textos en wikis comunitarios" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "cancelar un wiki comunitario" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "convertir respuestas en comentarios" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "Respuesta de %(uname)s: %(snippet)s..." - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "Pregunta" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "No es posible hacer un comentario a ese texto" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -#, fuzzy -msgid "convert comments to answers" -msgstr "suscribirme a los comentarios y a las respuestas" - -#: forum/views/commands.py:503 -#, fuzzy -msgid "You do not have the correct credentials to preform this action." -msgstr "No tienes las credenciales actuales para realizar esta acción." - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -#, fuzzy -msgid "award" -msgstr "medalla/" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" -"Lo sentimos pero ha ocurrido un error desconocido.<br />Por favor inténtalo " -"de nuevo más tarde." - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "¡Gracias por el comentario!" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" -"Nos gustarÃa recibir tus comentarios. Por favor envÃanoslos la próxima " -"vez. :)" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "Preguntas <strong>actualizadas más recientemente</strong>" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "preguntas <strong>realizadas más recientemente</strong>" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "preguntas más <strong>activas</strong> en las últimas 24 horas" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "mostvoted" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "preguntas más <strong>votadas</strong>" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "los más antiguos" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "respuestas más antiguas" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "mostrar primero las respuestas más antiguas" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "respuestas más recientes" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "mostrar primero las respuestas más recientes" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "respuestas populares" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "mostrar primero las respuestas más votadas" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "name" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "por nombre" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "ordenadas alfabéticamente" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "used" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "por popularidad" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "ordenadas según la frecuencia de uso de la etiqueta" - -#: forum/views/readers.py:72 -msgid " - " -msgstr " - " - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "últimas preguntas" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "sin responder" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "preguntas abiertas sin una respuesta aceptada" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "Preguntas sin responder" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "Preguntas etiquetadas <span class=\"tag\">%(tag)s</span>" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "Preguntas etiquetadas %(tag)s" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "Preguntas enviadas por %s" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "Preguntas respondidas por %s" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "Preguntas a las que estás suscrito %s" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "Preguntas a las que está suscrito %s" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "Preguntas" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "relevancia" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "preguntas más relevantes" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "preguntas que contienen '%(keywords)s'" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "Versión número %(rev_number)d" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "ordenados por karma" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "recientes" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "miembros más recientes" - -#: forum/views/users.py:40 -msgid "last" -msgstr "last" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "miembros más antiguos" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "alfabéticamente" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "ordenados por nombre" - -#: forum/views/users.py:72 -#, fuzzy -msgid "Online Users" -msgstr "usuarios-online/" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "Perfil actualizado." - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" -"Sólo los superusuarios están autorizados para alterar los permisos de otros " -"usuarios" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" -"Sólo el dueño del sitio puede quitarle el estátus de superusuario a otro " -"usuario." - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "Sólo los superusuarios pueden otorgar puntos de reputación." - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "Número no válido de puntos otorgados." - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "Sólo los superusuarios pueden suspender a otros usuarios" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "Argumento numérico no válido para número de dÃas." - -#: forum/views/users.py:321 -msgid "overview" -msgstr "resumen" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "resumen del usuario" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "actividad reciente" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "actividad reciente del usuario" - -#: forum/views/users.py:367 -#, fuzzy -msgid "reputation history" -msgstr "puntos de karma" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "gráfico del karma del usuario" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "registro de votos del usuario" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "favoritas" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "preguntas que el usuario seleccionó como sus favoritas" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "suscripción" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "notificaciones por email" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "Se han guardado los nuevos ajustes de notificación" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "preferencias" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "Preferencias nuevas guardadas" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "" -"la subida de imágenes está limitada a usuario con más de 60 puntos de karma" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" -"los tipos de fichero permitidos son 'jpg', 'jpeg', 'gif', 'bmp', 'png', " -"'tiff'" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "el tamaño máximo de los ficheros subidos es de %sM" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" -"Error al subir fichero. Por favor contacta con el administrador. Gracias. %s" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "Tu pregunta está pendientes hasta que %s." - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "validar tu email" - -#: forum/views/writers.py:129 -#, fuzzy -msgid "Converted to question" -msgstr "Cerrar la pregunta" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "Tu respuesta está pendiente hasta que %s." - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "Clave de la API de WordPress" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" -"Tu clave de la API de WordPress. Puedes obtener una en <a href='http://" -"wordpress.com/'>http://wordpress.com/</a>." - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "Karma mÃnimo para que tus mensajes no sean revisados" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" -"Karma mÃnimo de un usuario para que sus mensajes no sean comprobados por si " -"son spam" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "Lo sentimos, pero akisment piensa que tu %s es spam." - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "mensaje de Akisment" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "Akismet cree que tu %(action_name)s es spam." - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" -"\n" -"Lo sentimos, pero Akismet cree qu etu %(action_name)s es spam.<br />\n" -"Si crees que es un error, por favor contacta al administrador del foro.\n" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "Pregunta realizada con más de %s lecturas" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "Pregunta Popular" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "Pregunta Notoria" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "Pregunta Famosa" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "Pregunta votada positivamente %s veces" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "Buena Pregunta" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "Gran Pregunta" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "Pregunta Genial" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "Respuesta votada positivamente %s veces" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "Buena Respuesta" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "Gran Respuesta" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "Respuesta Genial" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "Pregunta marcada como favorita por %s usuarios" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "Pregunta Favorita" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "Pregunta Estelar" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "Disciplinado" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "Borrar un mensaje propio con una puntuación de %s o superior" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "Presión Popular" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "Borrar un mensaje propio con una puntuación de %s o inferior" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "CrÃtico" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "Primer voto negativo" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "Colaborador" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "Primer voto positivo" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "Patrulla Ciudadana" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "Primer mensaje denunciado" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "Organizador" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "Primer reetiquetado" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "Editor" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "Primera edición" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "Alumno" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "Primera respuesta aceptada en una pregunta propia" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "Limpieza" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "Primer cambio deshecho" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "Autobiógrafo" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "Completados todos los datos del perfil de usuario" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "Deber CÃvico" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "%s votos emitidos" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "Comentarista" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "%s comentarios hechos" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "Autodidacta" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "Respondido a tu propia pregunta con al menos %s votos positivos" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "MarÃa Moliner" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "%s entradas editadas" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "Estudiante" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "Primera pregunta con por lo menos un voto positivo" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "Profesor" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "Primera respuesta con por lo menos un voto positivo" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "Ilustrado" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "Primera respuesta aceptada con por lo menos %s votos positivos" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "Gurú" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "Respuesta aceptada y votada positivamente %s veces" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "Nigromante" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" -"Respuesta a una pregunta de hace más de %(dif_days)s dÃas con al menos " -"%(up_votes)s votos" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "Taxónomo" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "Crear una etiqueta usada por %s preguntas" - -#: forum_modules/default_badges/badges.py:326 -#, fuzzy -msgid "Validated Email" -msgstr "validar tu email" - -#: forum_modules/default_badges/badges.py:327 -#, fuzzy -msgid "User who has validated email associated to the account" -msgstr "Cambiar OpenID asociado con tu cuenta" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "Lecturas de una Pregunta Popular" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" -"\n" -"Número de lecturas de una pregunta requeridas para otorgar una medalla de " -"Pregunta Popular al autor de la pregunta.\n" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "Vistas de Preguntas Notables" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" -"\n" -"Número de lecturas de una pregunta requeridas para otorgar una medalla de " -"Pregunta Notable al autor de la pregunta.\n" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "Vistas de Pregunta Famosa" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" -"\n" -"Número de lecturas de una pregunta requeridas para otorgar una medalla de " -"Pregunta Famosa al autor de la pregunta.\n" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "Votos positivos para Buena Respuesta" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"Número de votos positivos requeridos para otorgar una medalla de Buena " -"Respuesta al autor de una respuesta\n" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "Votos positivos para Buena Pregunta" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" -"\n" -"Número de votos positivos requeridos para otorgar una medalla de Buena " -"Pregunta al autor de una pregunta\n" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "Vistas para Gran Pregunta" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"Número de votos positivos requeridos para otorgar una medalla de Gran " -"Respuesta al autor de una respuesta\n" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "Votos para Buena Pregunta" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" -"\n" -"Número de votos positivos requeridos para otorgar una medalla de Gran " -"Pregunta al autor de una pregunta\n" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "Votos para Respuesta Genial" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"Número de votos positivos requeridos para otorgar una medalla de Respuesta " -"Genial al autor de una respuesta\n" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "Votos para Pregunta Genial" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" -"\n" -"Número de votos positivos requeridos para otorgar una medalla de Pregunta " -"Genial al autor de una pregunta\n" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "Cuenta para Pregunta Favorita" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" -"\n" -"Cuántas veces tiene que estar declarada como favorita por otros usuarios una " -"pregunta para otorgar una medalla de Pregunta Favorita al autor de la " -"pregunta\n" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "Cuenta para Pregunta Estelar" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" -"\n" -"Cuántas veces tiene que estar declarada como favorita por otros usuarios una " -"pregunta para otorgar una medalla de Pregunta Estelar al autor de la " -"pregunta\n" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "Puntuación mÃnima para Disciplinado" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" -"\n" -"Puntuación mÃnima que tiene que tener una pregunta para otorgarle la medalla " -"de Disciplinado al autor de una pregunta que la borra.\n" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "Puntuación Máxima de Presión Social" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" -"\n" -"Puntuación máxima que tiene que tener una pregunta para otorgarle la medalla " -"de Presión Social al autor de una pregunta que la borra.\n" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "Votos para Deber CÃvico" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" -"\n" -"Número de votos que tiene que emitir un usuario para recibir la medalla al " -"Deber CÃvico.\n" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "Comentarios para Comentarista" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" -"\n" -"Número de comentarios que tiene que publicar un usuario para recibir la " -"medalla de Comentarista.\n" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "Votos para Autodidacta" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" -"\n" -"Número de votos que necesita recibir una respuesta del autor de la pregunta " -"para que el autor reciba la medalla de Autodidacta.\n" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "Correcciones para MarÃa Moliner" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" -"\n" -"Número de correcciones a preguntas o respuestas que tiene que hacer un " -"usuario para recibir la medalla de MarÃa Moliner.\n" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "Votos positivos para Ilustrado" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" -"\n" -"Número de votos positivos que ha de recibir una respuesta aceptada para que " -"el autor reciba la medalla de Ilustrado.\n" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "Votos positivos para ser gurú" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" -"\n" -"Número de votos positivos que ha de recibir una respuesta aceptada para que " -"el autor reciba la medalla de Gurú.\n" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "Votos positivos para ser nigromante" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" -"\n" -"Número de votos positivos que ha de recibir una respuesta aceptada para que " -"el autor reciba la medalla de Nigromante.\n" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "Diferencia en dÃas para Nigromante" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" -"\n" -"Diferencia en dÃas entre las fechas de publicación de la pregunta y la " -"respuesta para que el autor de la respuesta reciba la medalla de " -"Nigromante.\n" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "Cuenta de uso para Taxónomo" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" -"\n" -"Cuántos usos de una etiqueta se requieren para que el creador de la etiqueta " -"reciba la medalla de Taxónomo. \n" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -#, fuzzy -msgid "Writing inf file." -msgstr "Acceso fallido." - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -#, fuzzy -msgid "Queued" -msgstr "used" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -#, fuzzy -msgid "Starting" -msgstr "interesante" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -#, fuzzy -msgid "Exporting" -msgstr "Formato" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -#, fuzzy -msgid "Done" -msgstr "Ninguno" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -#, fuzzy -msgid "Nodes" -msgstr "los más antiguos" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -#, fuzzy -msgid "Actions" -msgstr "Ubicación" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -#, fuzzy -msgid "Awards" -msgstr "medalla/" - -#: forum_modules/exporter/exporter.py:538 -#, fuzzy -msgid "Settings" -msgstr "ajustes/" - -#: forum_modules/exporter/forms.py:5 -#, fuzzy -msgid "tar.gz" -msgstr "etiquetas" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -#, fuzzy -msgid "Uploaded files" -msgstr "Alias para subida de ficheros" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -#, fuzzy -msgid "Importing" -msgstr "Formato" - -#: forum_modules/exporter/settings.py:7 -#, fuzzy -msgid "Exporter settings" -msgstr "Otros ajustes" - -#: forum_modules/exporter/settings.py:7 -#, fuzzy -msgid "Data export settings" -msgstr "Otros ajustes" - -#: forum_modules/exporter/settings.py:10 -#, fuzzy -msgid "Backups storage" -msgstr "Volver a la página inicial" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -#, fuzzy -msgid "exporter/" -msgstr "denunciar" - -#: forum_modules/exporter/urls.py:8 -#, fuzzy -msgid "state/" -msgstr "paginas-estaticas/" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -#, fuzzy -msgid "exporter" -msgstr "denunciar" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -#, fuzzy -msgid "XML data importer" -msgstr "Importador de Stack Exchange" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -#, fuzzy -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" -"\n" -" <span class=\"count\">%(counter)s</span> Medalla\n" -" " - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -#, fuzzy -msgid " of " -msgstr "de" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" -"Por favor introduce un nombre de usuario y contraseña (los dos distinguen " -"entre mayúsculas y minúsculas)" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "Acceso fallido." - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "El usuario no es válido" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "Por favor introduce nombre de usuario y contraseña" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "Por favor introduce tu contraseña" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "Por favor introduce tu nombre de usuario" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "local/" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "Por favor introduce nombre de usuario y contraseña" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "o identifÃcate con una cuenta externa de las de arriba" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "Nombre de usuario" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "Contraseña" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "Crear cuenta" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "¿Has olvidado tu contraseña?" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "Error, el token oauth no está en el servidor" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "Algo ha ido mal! Los tokens de autenticación no coinciden" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "Lo sentimos, no es un OpenID válido" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "La petición de autenticación OpenId ha sido cancelada" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "La autenticación OpenId ha fallado:" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "Necesaria configuración" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "La autenticación OpenID ha fallado con un estado desconocido:" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "Introduce tu dirección OpenId" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "Cazador de Errores" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "Recibir %s votos positivos en una pregunta etiquetada como \"bug\"" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "Captcha inválido" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "usuario-%(id)s" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "Importador de Stack Exchange" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "Bienvenido al importador de volcados de Stack Exchange" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "Tu identificador de usuario en Stack Exchange" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "Unificar usuarios con el mismo nombre y dirección de correo" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "Updater Settings" -msgstr "Ajustes de los usuarios" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "OSQA Update Checker Settings." -msgstr "Otros ajustes" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -#, fuzzy -msgid "updater/" -msgstr "actualizar" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -#, fuzzy -msgid "updater" -msgstr "actualizar" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -#, fuzzy -msgid "Update Checker" -msgstr "Último comprobado" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" - -#, fuzzy -#~ msgid "Create some canned comments to be used for easier moderation." -#~ msgstr "" -#~ "Puedes escribir más opciones para razones que dar para cerrar una " -#~ "pregunta." - -#~ msgid "Change email " -#~ msgstr "Cambiar email" - -#~ msgid "Add or update the email address associated with your account." -#~ msgstr "Añadir o actualizar la dirección de email asociada con tu cuenta." - -#~ msgid "Change OpenID" -#~ msgstr "Cambiar OpenID" - -#~ msgid "Delete account" -#~ msgstr "Borrar cuenta" - -#~ msgid "Erase your username and all your data from website" -#~ msgstr "Borrar tu nombre de usuario y todos tus datos de la web" - -#~ msgid "You can answer anonymously and then login." -#~ msgstr "" -#~ "Para publicar la respuesta después deberás identificarte con una cuenta " -#~ "externa (Facebook, Google, etc.) o registrarte." - -#~ msgid "Answer your own question only to give an answer." -#~ msgstr "Responde a tu propia pregunta sólo para dar una respuesta." - -#~ msgid "Please only give an answer, no discussions." -#~ msgstr "" -#~ "Por favor responde sólo a la pregunta original, no a otras respuestas " -#~ "(para eso están los comentarios)." - -#~ msgid "" -#~ "Remember, your answer will not be published until you validate your email." -#~ msgstr "" -#~ "Recuerda que tu respuesta no será publicada hasta que valides tu email." - -#~ msgid "Existing account" -#~ msgstr "Cuenta existente" - -#~ msgid "user name" -#~ msgstr "nombre de usuario" - -#~ msgid "password" -#~ msgstr "Contraseña" - -#~ msgid "Register" -#~ msgstr "Registrar" - -#~ msgid "Check to make the sort order sticky" -#~ msgstr "Activa esta opción para hacer que la ordenación se mantenga" - -#~ msgid "Sorry, your Facebook session has expired, please try again" -#~ msgstr "" -#~ "Lo sentimos, tu sesión de Facebook ha expirado, por favor inténtalo de " -#~ "nuevo" - -#~ msgid "" -#~ "The authentication with Facebook connect failed, cannot find " -#~ "authentication tokens" -#~ msgstr "" -#~ "La autenticación con Facebook ha fallado, no se encuentran los tokens de " -#~ "autenticación" - -#~ msgid "" -#~ "The authentication with Facebook connect failed due to an invalid " -#~ "signature" -#~ msgstr "" -#~ "La autenticación con Facebook ha fallado debido a una firma incorrecta" - -#~ msgid "okay, let's try!" -#~ msgstr "OK, lo probaré" - -#~ msgid "no OSQA community email please, thanks" -#~ msgstr "No quiero recibir emails, gracias" - -#~ msgid "please choose one of the options above" -#~ msgstr "por favor elige una de las opciones de arriba" - -#, fuzzy -#~ msgid "Does your SMTP server use TLS for authentication." -#~ msgstr "Usa tu servidor SMTP autentificación mediante TLS?" - -#~ msgid "" -#~ "\n" -#~ " ask a question relevant to the %(app_title)s community \n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ " Haz una pregunta que pueda ser interesante también para " -#~ "otros usuarios de %(app_title)s \n" -#~ " " - -#~ msgid "please try provide enough details" -#~ msgstr "Por favor intenta dar suficientes detalles" - -#~ msgid "Tags are words that will tell others what this question is about." -#~ msgstr "" -#~ "Las etiquetas son palabras que indican de qué temas trata la pregunta." - -#~ msgid "They will help other find your question." -#~ msgstr "Sirven para que otras personas puedan encontrar tu pregunta." - -#~ msgid "" -#~ "\n" -#~ " A question can have up to %(max_number_of_tags)s tags, " -#~ "but it must have at least %(min_number_of_tags)s.\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ " Una pregunta puede tener un máximo de " -#~ "%(max_number_of_tags)s etiquetas, y como mÃnimo %(min_number_of_tags)s.\n" -#~ " " - -#~ msgid "" -#~ "Please create your screen name and save your email address. Saved email " -#~ "address will let you subscribe for the updates on the most interesting " -#~ "questions and will be used to create and retrieve your unique avatar " -#~ "image. " -#~ msgstr "" -#~ "Por favor elige un nombre de usuario e introduce tu dirección de email. " -#~ "Esta dirección de email te permitirá suscribirte para recibir avisos de " -#~ "las preguntas que te interesen. También puedes usarla para crear tu " -#~ "imagen avatar." - -#~ msgid "receive updates motivational blurb" -#~ msgstr "" -#~ "¿Quieres recibir notificaciones por email (por ejemplo cuando recibas una " -#~ "respuesta)?" - -#~ msgid "please select one of the options above" -#~ msgstr "por favor selecciona una de las opciones de arriba" - -#~ msgid "Tag filter tool will be your right panel, once you log in." -#~ msgstr "" -#~ "Encontrarás la herramienta para filtrar etiquetas en el lateral derecho, " -#~ "una vez que hayas entrado." - -#~ msgid "" -#~ "\n" -#~ " Currently you have notifications enabled. You can always stop all " -#~ "notifications without losing your settings and restart them afterwards." -#~ "<br />\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ " Actualmente tienes las <b>notificaciones activas</b>. Siempre puedes " -#~ "parar todas las notificaciones sin perder tus opciones y reiniciarlas más " -#~ "adelante.<br />\n" -#~ " " - -#~ msgid "" -#~ "\n" -#~ " Currently you have notifications disabled. You can enable them by " -#~ "clicking on the <strong>Start notifications</strong> button below.<br />\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ " Actualmente tienes las <b>notificaciones desactivadas</b>. Puedes " -#~ "activarlas haciendo click en el botón <strong>Activar notificaciones</" -#~ "strong> de abajo.<br />\n" -#~ " " - -#~ msgid "Questions I ask" -#~ msgstr "Preguntas que realizo" - -#~ msgid "Questions I answer" -#~ msgstr "Preguntas que respondo" - -#~ msgid "Questions I comment" -#~ msgstr "Preguntas que comento" - -#~ msgid "More:" -#~ msgstr "Más:" - -#~ msgid "Stop notifications" -#~ msgstr "Desactivar las notificaciones" - -#~ msgid "Start notifications" -#~ msgstr "Activar las notificaciones" - -#~ msgid "karma history" -#~ msgstr "histórico del karma" - -#~ msgid "Notifications are now enabled" -#~ msgstr "Las notificaciones han sido activadas" - -#~ msgid "Notifications are now disabled" -#~ msgstr "Las notificaciones han sido desactivadas" - -#, fuzzy -#~ msgid "import/" -#~ msgstr "denunciar" - -#~ msgid "moderation/" -#~ msgstr "moderation/" - -#~ msgid "this answer has been accepted to be correct" -#~ msgstr "esta respuesta ha sido aceptada como correcta" - -#~ msgid "Markdown tips" -#~ msgstr "Consejos del editor" diff --git a/locale/fi/.svn/all-wcprops b/locale/fi/.svn/all-wcprops deleted file mode 100644 index 51b78e16939d2950860a4dca23ef8ea1a1f5c69d..0000000000000000000000000000000000000000 --- a/locale/fi/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fi -END diff --git a/locale/fi/.svn/entries b/locale/fi/.svn/entries deleted file mode 100644 index 51fc82f9219c3a2c811a01377d7617767bb6b959..0000000000000000000000000000000000000000 --- a/locale/fi/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/fi -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/fi/LC_MESSAGES/.svn/all-wcprops b/locale/fi/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index aded6a6274af2e4124c8966b6cadb2a101adf408..0000000000000000000000000000000000000000 --- a/locale/fi/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fi/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fi/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fi/LC_MESSAGES/django.po -END diff --git a/locale/fi/LC_MESSAGES/.svn/entries b/locale/fi/LC_MESSAGES/.svn/entries deleted file mode 100644 index e923685e5c6ebbf1d162d5d9d8c7d433b27e40ce..0000000000000000000000000000000000000000 --- a/locale/fi/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/fi/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.909326Z -db16576253448cdb1dd9de5c87cdc0cb -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -136565 - -django.po -file - - - - -2012-06-22T20:34:48.905328Z -7d31674d7b60ba6a678f42e2ec9d6187 -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -297983 - diff --git a/locale/fi/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/fi/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/fi/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/fi/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/fi/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index ed41a78abf21c2d201c67d3eae494f7e1349554f..0000000000000000000000000000000000000000 Binary files a/locale/fi/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/fi/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/fi/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index dac407a717de13ebadd81558887383f28c176b95..0000000000000000000000000000000000000000 --- a/locale/fi/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9354 +0,0 @@ -# Finnish translation of PACKAGE. -# Copyright (C) 2010 THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# Petteri Aimonen <jpa@osqa.mail.kapsi.fi>, 2010. -# , fuzzy -# -# -msgid "" -msgstr "" -"Project-Id-Version: 0.1\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:15-0700\n" -"PO-Revision-Date: 2010-12-19 14:24+0200\n" -"Last-Translator: Petteri Aimonen <jpa@osqa.mail.kapsi.fi>\n" -"Language-Team: Finnish\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "sivu" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "pagesize" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "sort" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "Vastaukset kysymykseen %s" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "%s:n vastaus" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "%(cauthor)s:n kommentti, jonka kohteena on %(pauthor)s:n %(qora)s" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "vastaus" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "kysymys" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "sivuston ohjeet" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "tietoa sivustosta" - -#: forum/registry.py:28 -msgid "logout" -msgstr "kirjaudu ulos" - -#: forum/registry.py:28 -msgid "login" -msgstr "kirjaudu sisään" - -#: forum/registry.py:41 -msgid "administration" -msgstr "ylläpito" - -#: forum/registry.py:54 -msgid "contact" -msgstr "ota yhteyttä" - -#: forum/registry.py:57 -msgid "support" -msgstr "tuki" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "yksityisyys" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "muokkaa profiilia" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "kirjautumisasetukset" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "ilmoitusasetukset" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "muut asetukset" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "Moderointityökalut" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "poista tunnuksen lukitus" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "lukitse käyttäjätunnus" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "muokkaa karmaa" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "poista moderaattorioikeudet" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "anna moderaattorioikeudet" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "poista pääkäyttäjäoikeudet" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "anna pääkäyttäjäoikeudet" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "nimda/" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "upfiles/" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "faq/" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "Sivuston ohjeet" - -#: forum/urls.py:46 -msgid "about/" -msgstr "about/" - -#: forum/urls.py:46 -msgid "About" -msgstr "Tietoja sivustosta" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "markdown_help/" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "privacy/" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "logout/" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "answers/" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "edit/" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "revisions/" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "questions/" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "ask/" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "related_questions/" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "unanswered/" - -#: forum/urls.py:62 -msgid "close/" -msgstr "close/" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "reopen/" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "answer/" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "pending-data/" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "vote/" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "like_comment/" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "comment/" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "delete_comment/" - -#: forum/urls.py:71 -#, fuzzy -msgid "convert_comment/" -msgstr "muuta kommentiksi" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "accept_answer/" - -#: forum/urls.py:73 -#, fuzzy -msgid "answer_link/" -msgstr "answer/" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "mark_favorite/" - -#: forum/urls.py:75 -#, fuzzy -msgid "award_points/" -msgstr "award/" - -#: forum/urls.py:75 -#, fuzzy -msgid "user/" -msgstr "users/" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "flag/" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "delete/" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "subscribe/" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "matching_tags/" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "matching_users/" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "node_markdown/" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "convert/" - -#: forum/urls.py:85 -#, fuzzy -msgid "convert_to_question/" -msgstr "related_questions/" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "wikify/" - -#: forum/urls.py:88 -msgid "question/" -msgstr "question/" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "tags/" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "mark-tag/" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "interesting/" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "ignored/" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "unmark-tag/" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "users/" - -#: forum/urls.py:104 -msgid "award/" -msgstr "award/" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "suspend/" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "powers/" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "subscriptions/" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "preferences/" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "favorites/" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "reputation/" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "votes/" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "recent/" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "badges/" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "upload/" - -#: forum/urls.py:119 -msgid "search/" -msgstr "search/" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "contact/" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "account/" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "signin/" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "signout/" - -#: forum/urls.py:127 -msgid "done/" -msgstr "done/" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "register/" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "validate/" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "tempsignin/" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "authsettings/" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "providers/" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "remove/" - -#: forum/urls.py:134 -msgid "add/" -msgstr "add/" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "send-validation/" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "admin/" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "switch_interface/" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "statistics/" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "denormalize/" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "go_bootstrap/" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "go_defaults/" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "settings/" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "maintenance/" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "flagged_posts/" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "static_pages/" - -#: forum/urls.py:149 -msgid "new/" -msgstr "new/" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "tools/" - -#: forum/urls.py:157 -#, fuzzy -msgid "test_email_settings/" -msgstr "Sähköpostiasetukset" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "%(user)s %(vote_desc)s viestille %(post_desc)s" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "antoi plusäänen" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "antoi miinusäänen" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "antoi plusäänen" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "Ei syytä" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "%(user)s merkitsi viestin \"%(post_desc)s\" häiritseväksi: %(reason)s" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "sinun" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "profiiliaan" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" -"%(user)s hyväksyi %(answerer)s:n vastauksen %(asker)s:n kysymykseen " -"%(question)s" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "%(user)s lisäsi suosikin: %(post_desc)s" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "%(user)s poisti viestin %(post_desc)s" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "useampi käyttäjä on merkinnyt häiritseväksi: " - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "Ensimmäinen versio" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "kysyi" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "%(user)s kysyi: %(question)s" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "vastasi" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "%(user)s vastasi %(asker)s:n kysymykseen %(question)s" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "kommentoi" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "%(user)s kommentoi %(post_desc)s" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "muokattu" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "%(user)s muokkasi %(post_desc)s" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "muutti avainsanoja" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "Avainsanat" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "%(user)s muutti avainsanoja %(post_desc)s" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "palautti" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" -"%(user)s palautti viestin \"%(post_desc)s\" versiosta %(initial)d " -"(%(initial_sum)s) takaisin versioon %(final)d (%(final_sum)s)" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "sulki" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "%(user)s sulki viestin %(post_desc)s: %(reason)s" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "muutti" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" -"%(user)s muutti kysymykseen %(question)s jätetyn vastauksen kommentiksi" - -#: forum/actions/node.py:201 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" -"%(user)s muutti kysymykseen %(question)s jätetyn vastauksen kommentiksi" - -#: forum/actions/node.py:225 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" -"%(user)s muutti kysymykseen %(question)s jätetyn vastauksen kommentiksi" - -#: forum/actions/node.py:231 -#, fuzzy -msgid "converted to question" -msgstr "Vastaa kysymykseen" - -#: forum/actions/node.py:256 -#, fuzzy, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" -"%(user)s muutti kysymykseen %(question)s jätetyn vastauksen kommentiksi" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "merkitsi yhteisomaisuudeksi" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "%(user)s merkitsi viestin \"%(node)s\" yhteisomaisuudeksi" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "luotu" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "%(user)s loi uuden sivun %(page)s" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "%(user)s muokkasi sivua %(page)s" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "julkaistu" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "%(user)s julkaisi sivun %(page)s" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "liittynyt" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "%(user)s %(have_has)s liittynyt %(app_name)s-yhteisöön" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "olet" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "on" - -#: forum/actions/user.py:27 -#, fuzzy -msgid "logged in" -msgstr "Et ole kirjautunut." - -#: forum/actions/user.py:30 -#, fuzzy, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "%(user)s %(have_has)s liittynyt %(app_name)s-yhteisöön" - -#: forum/actions/user.py:36 -#, fuzzy -msgid "validated e-mail" -msgstr "varmennat sähköpostiosoitteesi" - -#: forum/actions/user.py:46 -#, fuzzy, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "%(user)s %(have_has)s liittynyt %(app_name)s-yhteisöön" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "muokkasi profiilia" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "%(user)s muokkasi %(hes_or_your)s %(profile_link)s" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "profiili" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "lisäsi karmaa" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "Onneksi olkoon, sinulle on annettu %s karmapistettä" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "Kiitos" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "Sinua on rangaistu %s karmapisteen menetyksellä" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "tuntematon" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" -"%(user)s palkitsi %(users)s:n %(value)s:llä karmapisteellä: %(message)s" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" -"%(user)s rankaisi %(users)s:ää %(value)s:n karmapisteen menetyksellä: " -"%(message)s" - -#: forum/actions/user.py:101 -#, fuzzy -msgid "gave reputation points" -msgstr "karma" - -#: forum/actions/user.py:114 -#, fuzzy, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "Onneksi olkoon, sinulle on annettu %s karmapistettä" - -#: forum/actions/user.py:116 -#, fuzzy -msgid "point" -msgid_plural "points" -msgstr[0] "Annettavat arvostuspisteet" -msgstr[1] "Annettavat arvostuspisteet" - -#: forum/actions/user.py:125 -#, fuzzy, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" -"%(user)s palkitsi %(users)s:n %(value)s:llä karmapisteellä: %(message)s" - -#: forum/actions/user.py:130 -#, fuzzy, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" -"%(user)s rankaisi %(users)s:ää %(value)s:n karmapisteen menetyksellä: " -"%(message)s" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "palkittiin" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" -"Onneksi olkoon, olet saanut \"%(badge_name)s\" -arvomerkin.Katso <a href=" -"\"%(profile_url)s\">omat tietosi</a>." - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "%(user)s %(were_was)s palkittiin \"%(badge_name)s\"-arvomerkillä" - -#: forum/actions/user.py:190 -msgid "were" -msgstr " " - -#: forum/actions/user.py:190 -msgid "was" -msgstr " " - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "lukittu" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "Käyttäjätunnuksesi lukitus on poistettu" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "%s:n päivän ajaksi" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "ikuisesti" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "%(user)s lukitsi %(users)s käyttäjätunnuksen %(suspension)s: %(msg)s" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "Huono käytös" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "Syötä vähintään yksi ip-osoite" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "IP-osoite ei kelpaa: %s" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "Käytä ip-osoitteelle muotoa xxx.xxx.xxx.xxx." - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "Sallitut ip-osoitteet" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" -"Pilkulla erotettu lista ip-osoitteista, joille sallitaan pääsy sivustoon " -"huoltomoodin aikana." - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "Viesti" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "Kävijöille näytettävä viesti sivuston ollessa huoltokatkolla." - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "Oletus" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "Oletus ja sivupalkki" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "Ei mitään" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "Markdown" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "HTML" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "Pelkkä teksti" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "Otsikko" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "Sivun URL" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "Sivun sisältö" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "Mimetyyppi" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "Tekstin muotoilu" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "Sivupohja" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "Sivupalkin sisältö" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "Rivitä sivupalkin teksti" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "Sivupalkin muotoilu" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "Salli kommentit" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "lähetä varmistussähköposti" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "sähköpostiosoite" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "Sähköpostiosoitteesi" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "Tätä kenttää ei voi jättää tyhjäksi" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "syötä oikea sähköpostiosoite" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "Sähköpostiosoitetta ei ole tietokannassa" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "Tämänhetkinen salasanasi" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "Nykyinen salasana on väärin. Syötä oikea salasana." - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "tämä kenttä on vaadittu" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "valitse käyttäjätunnus" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "käyttäjätunnus vaaditaan" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "tämä tunnus on jo käytössä, valitse toinen" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "tämä tunnus on kielletty, valitse toinen" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "tätä käyttäjätunnusta ei ole olemassa" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "vakava virhe - sama käyttäjätunnus on useammalla käyttäjällä" - -#: forum/forms/general.py:52 -#, fuzzy -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" -"käyttäjätunnuksessa voi olla vain kirjaimia, välilyöntejä ja alaviivoja" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "käyttäjätunnuksen täytyy olla vähintään %d merkkiä pitkä" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "sähköpostiosoitteesi" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "sähköpostiosoite vaaditaan" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "tämä sähköpostiosoite on jo liitetty toiseen käyttäjätunnukseen" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "valitse salasana" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "salasana vaaditaan" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "kirjoita salasana uudelleen" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "kirjoita salasana uudelleen" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "syötetyt salasanat eroavat toisistaan, yritä uudelleen" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "otsikko" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "anna kysymyksellesi kuvaava otsikko" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "otsikon pitää olla vähintään %s merkkiä pitkä" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "sisältö" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "kysymyksen pitää olla vähintään %s merkkiä pitkä" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "vastauksen pitää olla vähintään %s merkkiä pitkä" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "avainsanat" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" -"Avainsanoilla luokitellaan kysymyksiä. Avainsanoja on oltava vähintään " -"%(min)s ja enintään %(max)s. Välilyönnit eivät ole sallittuja avainsanan " -"sisällä." - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "käytä %(min)s-%(max)s avainsanaa" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "käytä %(min)s-%(max)s merkkisiä salasanoja" - -#: forum/forms/qanda.py:108 -#, fuzzy -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "avainsanoissa voi käyttää kirjaimia, numeroita ja merkkejä ., - ja _." - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" -"Arvostuspisteesi eivät riitä uusien avainsanojen luomiseen. Näitä " -"avainsanoja ei ole vielä olemassa: %s" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "yhteisomaisuutta" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" -"Jos merkitset tekstin yhteiseksi omaisuudeksi, ei kysymyksestä tai " -"vastauksesta jaeta pisteitä eikä kirjoittajan nimi näy. Kuka tahansa voi " -"muokata tekstiä." - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "muutoksen yhteenveto:" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" -"kirjoita lyhyt kuvaus tekemistäsi muutoksista (esimerkiksi \"korjasin " -"kirjoitusvirheen\")" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "Viestisi:" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "Nimesi:" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "Sähköpostiosoite (pidetään salaisena):" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "tätä sähköpostiosoitetta ei tarvitse liittää gravatariin" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "Oikea nimi" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "Kotisivu" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "Asuinpaikka" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "Syntymäaika" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" -"ei tule suoraan näkyviin vaan käytetään iän laskemiseen, syötä muodossa: " -"vuosi-kuukausi-päivä" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "Omat tiedot" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "Nimimerkki" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "sähköposti on jo liitetty tunnukseen" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "Heti" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "Ei ilmoituksia" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "Ekaa kertaa täällä? Tarkista <a href=\"%s\">sivuston ohjeet</a>!" - -#: forum/models/action.py:216 -msgid "You" -msgstr "Sinä" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "kysymykseen %(link)s" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "%(user)s:n %(node_name)s %(node_desc)s" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "kommentti" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "Tuntematon" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "Kuvausta ei ole saatavilla" - -#: forum/models/node.py:250 -msgid "post" -msgstr "viesti" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "[Julkaisematon] %s" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "[poistettu] " - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "[suljettu] " - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "kiinnostava" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "piilotettu" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "asked-by" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "answered-by" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "subscribed-by" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "Arvomerkkien asetukset" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "Säädä käyttäjille jaettavien arvomerkkien asetukset." - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "Vastausten hyväksyminen" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "Asetukset, jotka liittyvät vastausten merkitsemiseen hyväksytyksi." - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "Kysymyksiä ei voi merkitä hyväksytyksi" - -#: forum/settings/accept.py:9 -#, fuzzy -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" -"Ota vastausten hyväksyminen pois käytöstä. Jos myöhemmin kytket sen takaisin " -"päälle, muistetaan tällä hetkellä hyväksytyt vastaukset." - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "Hyväksyttyjä vastauksia per kysymys" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" -"Enimmäismäärä hyväksytyille vastauksille yhdessä kysymyksessä. Arvo 0 " -"tarkoittaa rajoittamatonta." - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "Yhdeltä käyttäjältä hyväksyttyjä vastauksia" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" -"Montako vastausta samalta käyttäjältä voidaan enintään merkitä hyväksytyksi " -"yhteen kysymykseen?" - -#: forum/settings/accept.py:21 -msgid "Users an accept own answer" -msgstr "Käyttäjät voivat hyväksyä oman vastauksensa" - -#: forum/settings/accept.py:22 -#, fuzzy -msgid "Are normal users allowed to accept their own answers.." -msgstr "Salli tavallisten käyttäjien merkitä oma vastauksensa hyväksytyksi." - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "Perusasetukset" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "Sivuston perusasetukset" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "Sivuston logo" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "Sivustosi logo, joka näytetään oletusteemassa vasemmassa yläkulmassa." - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "Sivustokuvake" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "Sivustokuvake, joka näkyy selaimen osoiterivillä." - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "Sivuston nimi" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "Sivuston nimi, joka näkyy mm. selaimen otsikkopalkissa." - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "Sivuston lyhytnimi" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "Sivuston avainsanat" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" -"HTML:n meta-tagiin merkittävät avainsanat, joita hakukoneet voivat käyttää " -"sivuston indeksoinnissa." - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "Sivuston kuvaus" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" -"HTML:n meta-tagiin merkittävä sivuston kuvaus, jonka hakukoneet voivat " -"näyttää hakutuloksissa." - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "Sivuston tekijänoikeudet" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "Sivuston alareunassa näkyvä teksti sivuston tekijänoikeuksista." - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "Opastus-URL" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" -"Osoite, josta käyttäjät voivat pyytää apua sivuston käytössä.Osoite voi " -"käyttää haluamaasi protokollaa, kuten http: tai mailto:." - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "Yhteydenotto-URL" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" -"Osoite, jonka kautta käyttäjät voivat ottaa yhteyttä sivuston ylläpitoon." -"Osoite voi käyttää haluamaasi protokollaa, kuten http: tai mailto:." - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "Sähköpostiasetukset" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "Sähköpostipalvelin ja muut sähköpostiin liittyvät asetukset." - -#: forum/settings/email.py:10 -#, fuzzy -msgid "E-Mail settings test" -msgstr "Sähköpostiasetukset" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "Lähtevän postin palvelin" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "SMTP-palvelin, jonka kautta sivusto lähettää sähköpostiviestit." - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "SMTP-portti" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "SMTP-palvelimen portti. Oletusportti on 25." - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "Käyttäjätunnus" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "Käyttäjätunnus SMTP-palvelimelle kirjautumista varten." - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "Salasana" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "Salasana SMTP-palvelimelle kirjautumista varten." - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "Käytä TLS-salausta" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -#, fuzzy -msgid "Site 'from' Email Address" -msgstr "Lähettäjän osoite" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" -"Osoite, joka näkyy \"Lähettäjä\"-kentässä sivuston lähettämissä " -"sähköpostiviesteissä." - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "Lähettäjän osoite" - -#: forum/settings/email.py:48 -#, fuzzy -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" -"Osoite, joka näkyy \"Lähettäjä\"-kentässä sivuston lähettämissä " -"sähköpostiviesteissä." - -#: forum/settings/email.py:52 -#, fuzzy -msgid "Email Subject Prefix" -msgstr "Otsikon alkuosa" - -#: forum/settings/email.py:53 -#, fuzzy -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" -"Tämä teksti lisätään otsikon alkuun sivuston lähettämissä viesteissä.Sen " -"käyttö helpottaa esimerkiksi viestien suodatusta sähköpostiohjelmissa." - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "Allekirjoitus" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" -"Sähköpostin loppuun lisättävä teksti, esimerkiksi sivuston nimi ja " -"yhteystiedot." - -#: forum/settings/email.py:62 -#, fuzzy -msgid "Email Border Color" -msgstr "Sähköpostin reunaväri" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "HTML-sähköposteissa käytettävän pohjan reunaväri." - -#: forum/settings/email.py:67 -#, fuzzy -msgid "Email Paragraph Style" -msgstr "Sähköpostin tekstityyli" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" -"CSS-tyylimääre, jota käytetään HTML-sähköpostien kappaleiden (p-tagien) " -"muotoilussa." - -#: forum/settings/email.py:72 -#, fuzzy -msgid "Email Link Style" -msgstr "Sähköpostin linkkityyli" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" -"CSS-tyylimääre, jota käytetään HTML-sähköpostien linkkien (a-tagien) " -"muotoilussa." - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "Avaimet muihin sivustoihin" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "Avaimet ulkopuolisiin sivustoihin, joita OSQA voi käyttää." - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "Google sivustokarttojen avainkoodi" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" -"Saat tämän avainkoodin rekisteröidessäsi sivuston <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster centralissa</a>." - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "Google analytics -avainkoodi" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" -"Googlen liikenneseurannan avainkoodi. Saat sen <a href='http://www.google." -"com/analytics/'>Google analyticsin verkkosivuilta</a>." - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "Lomakeasetukset" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "Sivustolla olevien lomakkeiden asetukset." - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "Ota \"yhteisomaisuus\"-merkintä käyttöön" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" -"Käyttäjät voivat halutessaan merkitä kysymyksensä tai vastauksensa " -"yhteisomaisuudeksi, jolloin käyttäjätunnusta ei näytetä ja kuka tahansa voi " -"muokata viestiä." - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "Rajoita avainsanojen luomista" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" -"Salli avainsanojen luominen vain käyttäjille, joilla on joko " -"moderaattoristatus tai vähimmäismäärä arvostusta." - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "Kysymyksen otsikon minimipituus" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" -"Kysymyslomakkeen otsikkokenttään syötettävän tekstin vähimmäispituus " -"merkeissä." - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "Kysymyksen sisällön minimipituus" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "Kysymyslomakkeen viestikenttään syötettävän tekstin vähimmäispituus" - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "Salli tyhjät kysymykset" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" -"Voiko kysymyksen sisältö olla tyhjä, jolloin kysymyksellä on pelkkä otsikko?" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "Avainsanojen vähimmäismäärä" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "Montako avainsanaa kysymyksen lähettäjän täytyy vähintään syöttää?" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "Avainsanojen enimmäismäärä" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "Montako avainsanaa kysymykseen voidaan enintään liittää?" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "Avainsanan minimipituus" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "Alaraja luotavien avainsanojen pituudelle." - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "Avainsanan maksimipituus" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "Yläraja luotavien avainsanojen pituudelle." - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "Kommentin minimipituus" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "Alaraja kommentin tekstin pituudelle." - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "Kommentin maksimipituus" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "Yläraja kommentin tekstin pituudelle." - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "Salli markdown-muotoilu kommenteissa" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" -"Salli käyttäjien käyttää markdown-muotoilukomentoja kommenttien tekstissä." - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "Näytä kirjoittajan gravatar kommenteissa" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" -"Näytä gravatar-kuvat kysymyksen ja vastausten lisäksi myös kommenttien " -"kohdalla." - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "nimi" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "oletusarvo" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "Vaihda kuva:" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "Karmarajat" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" -"Aseta, montako karmapistettä käyttäjillä täytyy olla eri toimintojen " -"suorittamiseen.Pisteitä saa mm. kysymysten ja vastausten äänestyksen " -"perusteella." - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "Vähimmäiskarma plusäänten antamiseen" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi antaa " -"positiivisia ääniä." - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "Vähimmäiskarma miinusäänten antamiseen" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi antaa " -"negatiivisia ääniä." - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "Vähimmäiskarma viestin ilmoittamiseen" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi ilmoittaa " -"toisen käyttäjän lähettämän viestin häiritseväksi." - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "Vähimmäiskarma kommentointiin" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi kirjoittaa " -"kommentteja." - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "Vähimmäiskarma kommentin äänestämiseen" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla äänestääkseen kommentteja." -"Kommenteille voi antaa vain plusääniä." - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "Vähimmäiskarma tiedostojen lähetykseen" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla lähettääkseen tiedostoja " -"palvelimelle." - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "Vähimmäiskarma avainsanojen luontiin" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi luoda uusia " -"avainsanoja." - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "Vähimmäiskarma oman kysymyksen sulkemiseen" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi sulkea oman " -"kysymyksensä." - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "Vähimmäiskarma oman kysymyksen jälleenavaukseen" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi avata oman " -"kysymyksensä sen jälkeen kun se on suljettu." - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "Vähimmäiskarma avainsanojen muokkaamiseen" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi muokata " -"toisten jättämiin kysymyksiin liitettyjä avainsanoja." - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "Vähimmäinkarma yhteisomaisuuden muokkaukseen" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi muokata " -"yhteisomaisuudeksi merkittyjä viestejä." - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "Vähimmäiskarma yhteisomaisuudeksi merkitsemiseen" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi merkitä " -"toisen käyttäjän viestin yhteisomaisuudeksi. Yhteisomaisuudeksi merkityissä " -"viesteissä ei näytetä kirjoittajan nimeä, ja kuka tahansa riittävästi karmaa " -"omaava voi muokata niitä." - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "Vähimmäiskarma toisten viestien muokkaamiseen" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi muokata kenen " -"tahansa käyttäjän viestejä." - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "Vähimmäiskarma toisten kysymysten sulkemiseen" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi sulkea minkä " -"tahansa kysymyksen." - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "Vähimmäiskarma kommenttien poistamiseen" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi poistaa " -"kommentteja." - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "Vähimmäiskarma vastausten muuttamiseen kommenteiksi" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi muuttaa " -"toisen kirjoittaman vastauksen kommentiksi." - -#: forum/settings/minrep.py:80 -#, fuzzy -msgid "Minimum reputation to convert comments to answers" -msgstr "Vähimmäiskarma kommenttien poistamiseen" - -#: forum/settings/minrep.py:81 -#, fuzzy -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi muuttaa " -"toisen kirjoittaman vastauksen kommentiksi." - -#: forum/settings/minrep.py:84 -#, fuzzy -msgid "Minimum reputation to convert answers to questions" -msgstr "Vähimmäiskarma vastausten muuttamiseen kommenteiksi" - -#: forum/settings/minrep.py:85 -#, fuzzy -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hän voi muuttaa " -"toisen kirjoittaman vastauksen kommentiksi." - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "Vähimmäiskarma ilmoitusten tarkasteluun" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla nähdäkseen ilmoitukset " -"häiritsevistä viesteistä." - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "Moderointiasetukset" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "Määritä kysymyspalstan moderointiasetukset" - -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "Vastaukset ja kommentit" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "kommentointia" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "Raportointisyyt" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" -"Valitse syyt, joista käyttäjät voivat valita ilmoittaessaan häiritsevästä " -"viestistä." - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "Sulkemissyyt" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "Valitse syyt, joista käyttäjät voivat valita sulkiessaan kysymyksiä." - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "Karman kertyminen" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" -"Säädä, paljonko mistäkin tapahtumasta kertyy käyttäjälle karmapisteitä." - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "Alkukarma" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "Uuden käyttäjän aloituspisteet." - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" -"Enimmäismäärä uusia pisteitä, jonka yhdessä päivässä voi saada äänestyksen " -"perusteella." - -#: forum/settings/repgain.py:15 -#, fuzzy -msgid "Rep gain by e-mail validation" -msgstr "Vaadi sähköpostin varmentaminen ennen..." - -#: forum/settings/repgain.py:16 -#, fuzzy -msgid "Reputation a user gains for validating his e-mail." -msgstr "" -"Montako pistettä käyttäjä saa, kun hänen vastauksensa merkitään hyväksytyksi." - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "Karmapisteet saadusta plusäänestä" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" -"Montako pistettä käyttäjä saa, kun joku antaa plusäänen hänen viestilleen." - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "Karmamenetys saadusta miinusäänestä" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" -"Montako pistettä käyttäjä menettää, kun joku antaa miinusäänen hänen " -"viestilleen." - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "Karmamenetys annetusta miinusäänestä" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" -"Montako pistettä käyttäjä menettää antaessaan miinusäänen toisen käyttäjän " -"viestille." - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "Karmapisteet hyväksytystä vastauksesta" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" -"Montako pistettä käyttäjä saa, kun hänen vastauksensa merkitään hyväksytyksi." - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "Karmapisteet vastauksen hyväksymisestä" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" -"Montako pistettä käyttäjä saa hyväksyessään jonkin omaan kysymykseensä " -"lähetetyn vastauksen." - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "Karmamenetys ilmoitetusta viestistä" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" -"Montako pistettä käyttäjä menettää, kun hänen lähettämänsä viesti " -"ilmoitetaan häiritseväksi." - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "Karmamenetys piilotetusta viestistä" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" -"Montako pistettä käyttäjä menettää, kun hänen lähettämänsä viesti " -"ilmoitetaan häiritseväksi niin monta kertaa että se piilotetaan." - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "Karmamenetys ilmoituksen vuoksi poistettavasta viestistä" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" -"Montako pistettä käyttäjä menettää, kun hänen lähettämänsä viesti " -"ilmoitetaan häiritseväksi niin monta kertaa että se poistetaan." - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "Näytä Tervetuloa-kehys" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" -"Toivotetaanko ensimmäistä kertaa sivulla käyvä tervetulleeksi sivun " -"ylälaitaan tulevalla tekstillä?" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "Johdatusteksi" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" -"Opastusteksti, joka näytetään sivupalkissa kirjautumattomille käyttäjille." - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "Ylemmän laatikon muotoilu" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "Kuinka ylemmän sivupalkkilaatikon teksti muotoillaan?" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "Alemman laatikon muotoilu" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "Kuinka alemman sivupalkkilaatikon teksti muotoillaan?" - -#: forum/settings/sitemaps.py:5 -#, fuzzy -msgid "Sitemap settings" -msgstr "Näyttöasetukset" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -#, fuzzy -msgid "Questions Sitemap Limit" -msgstr "Kysymysten määrä" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "Oma CSS" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "Käytä omia CSS-tyylimääreitä." - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "CSS-määreet" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "Syötä haluamasi CSS-tyylimääreet." - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "Käytä omaa yläosaa" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "Käytä omaa sivun alkuun tulevaa tekstipätkää." - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "Yläosa" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "Sivun alkuun tuleva teksti tai HTML-koodi." - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "Oman yläosan muotoilu" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "Kuinka itse syötetty sivun yläosan koodi muotoillaan?" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "Näytä ilmoituspalkki" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" -"Näytä hakupalkin alapuolella ilmoituspalkki, johon voit kirjoittaa " -"ilmoituksia." - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "Ilmoituspalkin sisältö" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" -"Teksti, joka näytetään ilmoituspalkissa, mikäli se on kytketty näkyviin." - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "Ilmoituspalkin muotoilu" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "Kuinka ilmoituspalkin sisältö muotoillaan?" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "Käytä omaa alaosaa" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "Haluatko käyttää omavalintaista sivun alaosaa?" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "Oma alaosa" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "Sivun loppuun tuleva teksti tai HTML-koodi." - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "Oman alaosan muotoilu" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "Kuinka omavalintaisen alaosan koodi muotoillaan?" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "Korvaa oletusalaosa" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "Ennen oletusalaosaa" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "Oletusalaosan jälkeen" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "Oman alaosan tila" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "Miten omavalintainen sivun alaosa sijoitetaan?" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "Omat head-elementit" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "Käytä omia <head>-tagin sisään tulevia elementtejä." - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "Omat head-elementit" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "Kirjoita oma HTML-koodi, joka liitetään sivujen <head>-osioon." - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "Tiedostojen lähetysasetukset" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" -"Asetukset, jotka liittyvät käyttäjien palvelimelle lataamiin tiedostoihin." - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "Ladattujen tiedostojen hakemisto" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" -"Palvelimen tiedostojärjestelmän hakemisto, johon palvelimelle ladatut " -"tiedostot tallennetaan.Hakemiston on oltava valmiiksi olemassa." - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "Ladattujen tiedostojen url-polku" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" -"URL-polku, jonka kautta ladatut tiedostot näkyvät.Jos muutat asetusta, " -"täytyy sivuston palvelinprosessi käynnistää uudelleen." - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "Tiedostojen enimmäiskoko" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "Palvelimelle ladattavien tiedostojen maksimikoko megatavuissa." - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "URL-asetukset" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" -"Asetuksia sivuston URL-osoitteiden toiminnan muuttamiseen (toiminto on " -"keskeneräinen)." - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "Salli unicode URL:ssa" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" -"Salli ascii-merkistön ulkopuoliset merkit URL-osoitteissa.Koskee esimerkiksi " -"kysymyksen otsikosta automaattisesti luotavaa URL:ia." - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "Pakota yksittäinen url" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" -"Tee HTTP-uudelleenohjaus jos käyttäjän käyttämä URL eroaa sivun " -"varsinaisesta URL:sta." - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "Käyttäjäasetukset" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" -"Käyttäjätunnuksia, -profiileita ja kirjautumissessioita koskevat asetukset." - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "Alkukarma" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "Muokattava käyttäjätunnus" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "Salli käyttäjien muokata käyttäjätunnustaan." - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "Käyttäjätunnuksen minimipituus" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "Käyttäjätunnuksen vähimmäispituus merkkeinä." - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "fuck" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "shit" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "ass" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "sex" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "add" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "muokkaa" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "tallenna" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "poista" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "manage" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "update" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "remove" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "new" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "Kielletyt käyttäjätunnukset" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "Lista käyttäjätunnuksista, joita ei sallita rekisteröidyttäessä." - -#: forum/settings/users.py:36 -#, fuzzy -msgid "Truncate long usernames" -msgstr "käyttäjätunnuksen mukaan aakkosjärjestyksessä" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -msgid "Show user accept rate" -msgstr "" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -msgid "Freeze accept rate" -msgstr "" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -#, fuzzy -msgid "Truncate usernames longer than" -msgstr "Käyttäjätunnuksen minimipituus" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "Näytä ylläpitäjästatus" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" -"Näytä moderaattorien ja pääkäyttäjien käyttäjätunnuksen vieressä statuksesta " -"kertovat vinokulmiot." - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "Vaadi yksilöllinen sähköpostiosoite" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "Vaadi, että jokaisella käyttäjällä on muista eroava sähköpostiosoite." - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "Vaadi sähköpostin varmentaminen ennen..." - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" -"Toimenpiteet, joita varten vaaditaan sähköpostiosoitteen varmentaminen." - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "kysymistä" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "vastaamista" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "kommentointia" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "viestien ilmoittamista häiritseväksi" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "Älä lähetä ilmoituksia varmentamattomiin osoitteisiin" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" -"Älä lähetä ilmoituksia ennen kuin käyttäjä on todistanut sähköpostiosoitteen " -"kuuluvan itselleen avaamalla sinne lähetetyn viestin." - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "Keskeneräisten viestien säilytysaika" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" -"Montako minuuttia viestiä säilytetään sillä aikaa, kun käyttäjä kirjautuu " -"sisään tai varmentaa sähköpostiosoitteensa." - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "Viive minuuteissa ennen huomautusta odottavista viesteistä" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" -"Montako minuuttia odotetaan ennen kuin käyttäjää varoitetaan säilytykseen " -"jääneestä viestistä." - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "vain kaikille ikäryhmille sopivat kuvat" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" -"kuvat voivat sisältää rumia eleitä, vihjailevaa pukeutumista, vähäistä " -"kiroilua ja vähäistä väkivaltaa" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" -"kuvat voivat sisältää mm. törkeyksiä, raakaa väkivaltaa, alastomuutta ja " -"huumeidenkäyttöä" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "kuvat voivat sisältää mitä tahansa" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "Gravatar-kuvien ikäluokitus" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" -"Voit valita, millaiset Gravatar-kuvat tulevat sivustolla näkyviin." -"Luokittelut ovat Gravatar-käyttäjien itsensä syöttämiä." - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "\"tuntematon mies\", pelkistetty ihmishahmon silhuetti" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "geometrinen kuvio, joka riippuu käyttäjän sähköpostiosoitteesta" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "\"hirviö\", jonka värit ja naamat riippuvat sähköpostiosoitteesta" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "kasvot, jonka piirteet ja taustakuvat riippuvat sähköpostiosoitteesta" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "Gravatar-oletuskuva" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" -"Valitse oletuskuva, joka näytetään käyttäjillä, joilla ei ole itse valittua " -"kuvaa." - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "Näyttöasetukset" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "Aseta, kuinka sivun eri osat näytetään." - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -#, fuzzy -msgid "Summary Length" -msgstr "Yhteenveto" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "Uusimmat avainsanat -kohdan koko" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" -"Montako avainsanaa näytetään etusivun kohdassa \"Uusimmat avainsanat\"?" - -#: forum/settings/view.py:28 -#, fuzzy -msgid "Show tags in a cloud" -msgstr "Näytä ylläpitäjästatus" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "Uusimmat arvomerkit -kohdan koko" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" -"Montako arvomerkkiä näytetään etusivun kohdassa \"Viimeisimmät arvomerkit\"?" - -#: forum/settings/view.py:53 -#, fuzzy -msgid "Update latest activity on tag edit" -msgstr "Viimeksi muutettu" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "Samankaltaiset avainsanat -kohdan koko" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" -"Rajoita kysymyslistassa näytettävän \"Samankaltaiset avainsanat\" -kohdan " -"kokoa.Aseta arvo 0 näyttääksesi kaikki löydetyt avainsanat" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "Äänestyssäännöt" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "Säädä äänestystoiminnon asetukset." - -#: forum/settings/voting.py:7 -#, fuzzy -msgid "Add reputation to max votes per day" -msgstr "Vähimmäiskarma plusäänten antamiseen" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "Ääniä päivässä enintään" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "Yläraja yhden käyttäjän päivässä antamille äänille." - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "Varoita, kun ääniä alle" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" -"Käyttäjää varoitetaan päivässä jäljellä olevien äänten määrästä, kun niitä " -"on jäljellä alle tämä määrä." - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "Häiritseväksi ilmoitettuja viestejä päivässä" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" -"Montako viestiä yksi käyttäjä voi ilmoittaa häiritseväksi saman päivän " -"aikana." - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "Piilota viesti ilmoitusten jälkeen" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" -"Monenko käyttäjän täytyy merkitä viesti häiritseväksi, ennen kuin se " -"piilotetaan pääsivulta." - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "Poista viesti ilmoitusten jälkeen" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" -"Monenko käyttäjän täytyy merkitä viesti häiritseväksi, ennen kuin se " -"poistetaan kokonaan." - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "Äänen peruuttaminen" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "Monenko päivän ajan käyttäjä voi peruuttaa antamansa äänen?" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "Et ole kirjautunut." - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "Et ole kirjautunut sisään..." - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -#, fuzzy -msgid "...and the resource you're trying to access is protected." -msgstr "" -"...ja pyytämäsi sivu on tarkoitettu vain rekisteröityneille käyttäjille." - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "Sinut uudelleenohjataan kohta kirjautumissivulle." - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "Jos viesti jää näkyviin yli 5 sekunniksi, klikkaa" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "tästä" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "Pääsy estetty" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "Sinulla ei ole tarvittavia käyttöoikeuksia tälle sivulle." - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "Tämä voi johtua jostain näistä syistä:" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" -"Seurasit sähköpostissa tullutta linkkiä, mutta olet tällä hetkellä " -"kirjautunut toisena käyttäjänä." - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "Url-osoite on virheellinen." - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "Jos epäilet että kyse on virheestä sivustolla, " - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "ilmoita asiasta sivuston ylläpidolle" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "Palaa etusivulle." - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "Palaa kysymyslistaan." - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "Palaa avainsanalistaan." - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "404 Sivua ei ole" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "404 Sivua ei ole" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "Hakemaasi sivua ei ole olemassa." - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "Tämä kysymys tai vastaus on poistettu." - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "Url-osoite on virheellinen" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "Jos epäilet että kyse on virheestä sivustolla, " - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "Palaa edelliselle sivulle" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "Ohjelmavirhe" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "Virhe on tallennettu sivuston lokiin ja korjataan pian." - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "Voit halutessasi ilmoittaa virheestä sivuston ylläpidolle." - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "Palaa kysymyslistaan" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "Palaa avainsanalistaan" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "Sivustolla on huoltokatko" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "Käyttäjätunnuksen asetukset" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "Vaihda salasana" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "Vaihda tunnuksesi salasana." - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "Muokkaa vastausta" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "piilota esikatselu" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "näytä esikatselu" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "palaa takaisin" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "versio" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "näytä historia" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "Kytke automaattinen esikatselu päälle tai pois päältä." - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "näytä/piilota esikatselu" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "Tallenna" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "Peruuta" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "Vinkkejä" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "Kirjoita vain oleellisista asioista." - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "Vastaa kysymykseen. Keskustelut on parempi käydä kommenteissa." - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "Yritä kertoa kaikki tarpeelliset tiedot." - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "Kirjoita selkeästi ja lyhyesti." - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "sivuston ohjeet" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "Uusi kysymys" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "Voit aloittaa kysymyksesi kirjoittamisen heti." - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" -"\n" -"Kysymystä lähettäessäsi sinun täytyy kuitenkin kirjautua sisään. Kysymys " -"säilyy muistissa sillä aikaa, kun kirjaudut tai luot uuden tunnuksen." - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "ja varmennat sähköpostiosoitteesi." - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" -"Muista, että kysymystäsi ei julkaista ennen kuin varmennat " -"sähköpostiosoitteesi." - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "Lähetä varmistussähköposti" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "(vaaditaan)" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "Kirjaudu lähettääksesi kysymyksen" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "Lähetä kysymys" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "Arvomerkki" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "Käyttäjät on palkittu arvomerkeillä:" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "Arvomerkit" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "Arvomerkit" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" -"Sivusto palkitsee sinut arvomerkeillä kysymyksistäsi, vastauksistasi ja " -"äänistäsi." - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" -"Alla on lista kaikista arvomerkeistä ja lukumäärä, montako kertaa kukin " -"arvomerkki on myönnetty." - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "Arvomerkkien tasot" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "Kultainen arvomerkki: korkein kunnia ja hyvin harvinainen saavutus" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "kulta" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" -"Kultaiset arvomerkit ovat sivuston korkein arvomerkkitaso. Sen " -"saavuttamiseksi täytyy osoittaa huomattavaa osaamista ja taitoa jatkuvan " -"kiinnostuksen lisäksi." - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "hopeinen arvomerkki: huomattavasta aktiivisuudesta sivustolla" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "hopea" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" -"Hopeinen arvomerkki ilmaisee pitkäjänteistä osallistumista. Jos olet saanut " -"sellaisen, panoksesi yhteisön hyväksi on ollut merkittävä." - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "pronssinen arvomerkki: aktiivisille sivuston käyttäjille" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "pronssi" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "" -"Pronssinen arvomerkki myönnetään tunnustukseksi sivuston aktiivisille " -"käyttäjille." - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "Oletko varma?" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "Kyllä" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "Ei" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "Viesti:" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "Sulje" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "Ok" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -msgid "word" -msgstr "sana" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "sanaa" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -msgid "character" -msgstr "merkki" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "merkkiä" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "Sulje kysymys" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" -"Sulje kysymys, jolloin siihen ei enää voi kirjoittaa uusia vastauksia. " -"Kommenttien lisääminen on yhä mahdollista." - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "Syy" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "OK" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "Sivuston etusivulle" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "Palaute" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "Anna palautetta!" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" -"\n" -"<span class=\"big strong\">%(user_name)s</span>, olemme kiinnostuneita " -"palautteestasi. Kirjoita ja lähetä viestisi allaolevalla lomakkeella." - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" -"\n" -"<span class='big strong'>Hyvä vierailija</span>, olemme kiinnostuneita " -"palautteestasi. Kirjoita ja lähetä viestisi allaolevalla lomakkeella." - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "(tämä kenttä on pakko täyttää)" - -#: forum/skins/default/templates/feedback.html:53 -#, fuzzy -msgid "(wrong captcha)" -msgstr "Kuvavarmenteen vastaus oli väärin" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "Lähetä palautetta" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "Palaa etusivulle" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "uusi kysymys" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "etsi" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "kysymykset" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "käyttäjät" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "Tervetuloa sivustolle " - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "Kirjaudu ulos" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" -"Voit kirjautua ulos sivustolta allaolevalla painikkeella. Se ei kuitenkaan " -"kirjaa sinua ulos muilta sivustoilta, mikä voi olla tarpeen jos olet " -"kirjautunut OpenID:n välityksellä." - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "Kirjaudu ulos" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "Markdown-syntaksi" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "Markdown-syntaksi" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" -"Alla on kuvattu Markdown-muotoilukielen tärkeimmät komennot. Syntaksissa on " -"kuitenkin myös muita yksityiskohtia, joista saat tarkan kuvauksen John " -"Gruberin <a href=\"http://daringfireball.net/projects/markdown/syntax\" rel=" -"\"nofollow\">ohjesivulta</a>." - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "Otsikot" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" -"Ylimmän tason otsikko luodaan alleviivaamalla teksti yhtäsuuruusmerkeillä. " -"Toiseksi ylimmällä tasolla käytetään tavuviivoja alleviivaukseen." - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "Tämä on ylin otsikkotaso" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "Tämä on toiseksi ylin otsikkotaso" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" -"Vaihtoehtoinen tapa on kirjoittaa otsikon eteen risuaitoja (#) otsikkotason " -"mukainen määrä. Esimerkiksi \"## Otsikko\" toiseksi ylintä otsikkotasoa " -"varten." - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "Tämä on kolmas otsikkotaso" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "Kummassakin tapauksessa muotoilun tuottama HTML-koodi on identtinen." - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "Tekstikappaleet" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "Tekstikappaleet erotetaan toisistaan tyhjällä rivillä." - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "Tämä on ensimmäinen kappale." - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "Tämä on toinen kappale." - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "Linkit" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" -"\n" -"Linkki koostuu kahdesta osasta: tekstistä ja osoitteesta. Linkin teksti " -"kirjoitetaan ensiksi ja ympäröidään hakasuluin. Sen perään kirjoitetaan " -"linkin osoite kaarisulkuihin." - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "linkin teksti" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "http://example.com/" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "Muotoilu" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" -"Tekstiä voi lihavoida ympäröimällä sen kahdella asteriskilla (*) tai " -"kahdella alaviivalla (_) kullakin puolella:" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "Tämä on lihavoitu" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "Tämä on myös lihavoitu" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" -"Kursivointi tehdään kirjoittamalla tekstin kullekin puolelle yksi asteriski " -"tai yksi alaviiva:" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "Tämä on kursivoitu" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "Tämä on myös kursivoitu" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" -"Teksti, joka on sekä lihavoitu että kursivoitu ilmaistaan kolmella " -"asteriskilla tai alaviivalla:" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "Tämä on lihavoitu ja kursivoitu" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "Tämä on myös lihavoitu ja kursivoitu" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "Sisennys" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "Tekstiä voi sisentää kirjoittamalla rivin alkuun kulmasulun (>)." - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "Tämä on sisennetty." - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "Tämä kuuluu samaan sisennykseen." - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" -"Toinen tapa on kirjoittaa yksi kulmasulku sisennysalueen alkuun ja lopettaa " -"sisennys rivinvaihdolla." - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "Sisennys jatkuu tässä, vaikka kulmasulku puuttuu." - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "Tyhjä rivi lopettaa sisennyksen." - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "Listat" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" -"Numeroitu lista luodaan kirjoittamalla jokaisen kohdan eteen numero, piste " -"ja välilyönti. Lista numeroidaan automaattisesti, joten käyttämälläsi " -"numerolla ei todellisuudessa ole merkitystä." - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "Kohta" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" -"Numeroimaton lista luodaan kirjoittamalla jokaisen kohdan eteen asteriski " -"(*)." - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "Listan kohta" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "Toinen kohta" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "Kolmas kohta" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "Paljon lisää" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" -"Markdown-syntaksi on huomattavasti laajempi kuin tässä on esitetty. Tämä " -"ohje sisältää tärkeimmät perusasiat. Oppiaksesi lisää, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">jatka Markdown-kielen omalle sivustolle</a>." - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "Todista itsesi ihmiseksi" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "Olen ihminen" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "Etsi sivustosta" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "suoraan selaimen hakupalkista." - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "viestiä sivulla" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "edellinen" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "nykyinen sivu" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "Mene sivulle numero " - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "." - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "seuraava sivu" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "Yksityisyysperiaatteet" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "Yleinen seloste sivuston keräämistä tiedoista." - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "Vierailijoista kerätyt tiedot" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" -"Kysymysten katsomiskerrat ja kysymysten ja vastausten muokkaukset " -"tallennetaan tietokantaan ja liitetään käyttäjätunnukseen. Tietojen " -"perusteella käyttäjää huomautetaan päivityksistä häntä kiinnostaviin " -"kysymyksiin." - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "Henkilötiedot" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" -"Sivuston käyttäjät voivat valita, mitä tietoja heidän profiilissaan " -"näytetään. Sähköpostiosoitetta lukuunottamatta henkilötietoja ei ole pakko " -"tallentaa sivustolle, eikä niitä myöskään näytetä ilman lupaa." - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "Tietojen jakaminen" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" -"Vain sivustolla julkisesti näkyvät tiedot ovat kolmansien osapuolien " -"käytettävissä." - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "Sivusto käyttää evästeitä kirjautumisistuntojen hallintaan." - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "Käytäntöjen muuttaminen" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" -"Sivuston yksityisyyskäytäntöjä voidaan tarvittaessa muuttaa. Ylläpito " -"ilmoittaa tällöin muutoksista viestijärjestelmän kautta." - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "näytä avainsanalla %(tagname)s merkityt kysymykset" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "Tämän kysymyksen sulki syystä \"%(close_reason)s\"" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "Yksi vastaus:" -msgstr[1] "%(counter)s vastausta:" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "Sinun vastauksesi" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "Olet ensimmäinen, joka vastaa tähän kysymykseen!" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "Kirjaudu lähettääksesi vastauksesi" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "Vastaa omaan kysymykseesi" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "Vastaa kysymykseen" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "Kysymyksen avainsanat" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "Näytä avainsanalla " - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr " merkityt kysymykset." - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "kysytty" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "katsottu" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "kertaa" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "päivitetty" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "Samankaltaiset kysymykset" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "Muokkaa kysymystä" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "Vinkkejä" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "Avainsanat" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "Muokkaa avainsanoja" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "Mitä hyötyä avainsanojen käytöstä on?" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "Avainsanat helpottavat kysymysten järjestelyä ja selaamista." - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "Avainsanojen muokkaamisesta palkitaan arvomerkeillä." - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "vastaukset" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "äänet" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "katselukerrat" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "Tilaa kysymysten RSS-syöte." - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "Avaa kysymys" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" -"Avaa aiemmin suljettu kysymys, jolloin siihen voi taas lähettää vastauksia." - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "Sulkemisen syy oli " - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr ", sulkija " - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "ja sulkemisaika " - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "suljettu" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "Avaa kysymys" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "Versiohistoria" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "Näytä tai piilota version teksti" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" -"\n" -"Etsi sivustolta %(app_name)s" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "Tarkkaile kysymystä" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "Sähköpostitse" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "Tämä kysymys lisättiin automaattisesti tarkkailulistallesi." - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "Tämä kysymys on tarkkailulistallasi." - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "Tämä kysymys ei ole tarkkailulistallasi" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "Poista tarkkailulistalta" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "Lisää tarkkailulistalle" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" -"\n" -"Voit muokata ilmoitusasetuksia omalla <a href=\"%(subscriptions_url)s" -"\">profiilisivullasi</a>" - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" -"Kirjautumisen jälkeen voit tilata tähän kysymykseen jätetyt uudet vastaukset " -"ja kommentit omaan sähköpostiisi." - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "RSS-lukijan kautta" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "RSS-syöte, joka sisältää tämän kysymyksen vastaukset." - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "Pelkät vastaukset" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "RSS-syöte, joka sisältää tämän kysymyksen vastaukset ja kommentit" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "Vastaukset ja kommentit" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "Avainsanat" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "Kaikki hakusanaa vastaavat avainsanat" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "Mitään ei löytynyt." - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "Kirjautumisasetukset" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "Tunnukseesi on liitetty nämä kirjautumistiedot:" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "Tunnukseesi ei ole liitetty erillisiä kirjautumistietoja." - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "Lisää uusi kirjautumistapa" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" -"Voit vaihtaa tämän sivuston salasanan alla. Lomake ei vaikuta muihin " -"kirjautumistapoihin." - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" -"Voit luoda tälle sivustolle oman salasanan, jolloin voit kirjautua sitä " -"käyttäen ylläolevien kirjautumistapojen sijaan." - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "Luo salasana" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "Liitä OpenID-tunnus sivustoon" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "Liitä OpenID-kirjautumistiedot omaan tunnukseesi." - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "Tämä on ensimmäinen kirjautumisesi käyttäen palvelua " - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "..." - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "Luo tunnus" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -#, fuzzy -msgid "This e-mail has already been validated" -msgstr "sähköposti on jo liitetty tunnukseen" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -#, fuzzy -msgid "Already validated" -msgstr "Ei varmennettu" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "%(prefix)s Sivuston %(app_name)s sähköpostivarmennus" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "Varmenna sähköpostiosoitteesi klikkaamalla allaolevaa linkkiä:" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "Varmenna sähköpostiosoite" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "Jos ylläoleva linkki ei toimi, kopioi tämä osoite www-selaimeen:" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "Kopioi tämä osoite www-selaimeesi sähköpostiosoitteen varmentamiseksi:" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "Kirjaudu sisään" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "Kirjaudu sisään" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "Tai..." - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" -"\n" -"Ulkopuolisten sivustojen käyttö kirjautumiseen perustuu <b><a href=\"http://" -"openid.net/\">OpenID</a></b>-protokollaan, jolloin salasanasi pysyy sinun ja " -"kirjautumistarjoajasi välisenä. Tälle sivustolle ei välitetä kuin tieto " -"kirjautumisen onnistumisesta sekä käyttäjätunnuksesi tai " -"sähköpostiosoitteesi." - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "Varmenna sähköpostiosoite kirjautumisen jälkeen" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "Klikkaa " - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#, fuzzy -msgid "if you're having trouble signing in." -msgstr "jos sinulla on ongelmia sisäänkirjautumisessa." - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "Syötä " - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "Miksi OpenID?" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "OpenID:ssä riittää yksi kirjautuminen" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "Sama tunnus käy monelle sivustolle" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "OpenID on laajalti käytössä" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "OpenID on avoin standardi" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "Lisätietoa" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "Hanki OpenID-tunnus" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "%(prefix)s Tilapäinen kirjautumislinkki" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" -"Tällä linkillä pääset kirjautumaan yhden kerran tunnuksellesi sivustolla " -"%(app_name)s." - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "Kirjaudu" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" -"Tällä osoitteella pääset kirjautumaan yhden kerran tunnuksellesi sivustolla " -"%(app_name)s." - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "Tilapäinen kirjautumisavain" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "Tilaa kertakäyttöinen kirjautumisavain" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" -"\n" -"Jos kirjautumistietosi eivät toimi tai unohdit salasanasi, voit tilata tältä " -"sivulta kertakäyttöisen kirjautumislinkin sähköpostiisi. Linkki toimii vain " -"kerran ja on voimassa rajatun ajan." - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "Lähetä" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "%(prefix)s Tervetuloa sivustolle %(app_name)s" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" -"Tervetuloa sivustolle %(app_name)s! Lienet kiireinen, joten kaikessa " -"lyhykäisyydessään:" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "Kirjautumistietosi:" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "Käyttäjätunnus" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "Salasana: Niin.. JOS me lähettäisimme salasanoja sähköpostissa!" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "Tällä linkillä voit varmentaa sähköpostiosoitteesi:" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "%(author)s:n vastaus" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "%(who)s on merkinnyt tämän vastauksen hyväksytyksi" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "Merkitse tämä vastaus hyväksytyksi" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -#, fuzzy -msgid "Points:" -msgstr "Annettavat arvostuspisteet" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "vähimmäispituus" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "merkkejä jäljellä" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr "Lähetä" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "Peruuta" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "Vastaukset ja kommentit" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "Muokkaa kommenttia" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "Poista kommentti" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -#, fuzzy -msgid "Convert comment to answer" -msgstr "muuta kommentiksi" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "Juuri äsken" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "Tämä on hyvä kommentti (klikkaa uudelleen peruuttaaksesi äänen)" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "Avaa kysymys" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "Näkyvissä %(showing)s yhteensä %(total)s kommentista" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "Lisää kommentti" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "Kommentti kuuluu tähän viestiin:" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -#, fuzzy -msgid "Convert to question" -msgstr "" -"Sulje kysymys, jolloin siihen ei enää voi kirjoittaa uusia vastauksia. " -"Kommenttien lisääminen on yhä mahdollista." - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" -"Merkitse kysymys suosikiksi (klikkaa uudelleen poistaaksesi merkinnän)." - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -#, fuzzy -msgid "Permanent link" -msgstr "ikilinkki" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "muut" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "Valitse syy alta tai kirjoita tekstilaatikkoon vapaamuotoisesti." - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "Tämä on hyvä viesti (klikkaa uudelleen peruuttaaksesi äänen)." - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "Viestin saamat äänestyspisteet." - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "Tämä on huono viesti (klikkaa uudelleen peruuttaaksesi äänen)." - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "Tämä %(post_type)s on merkitty yhteisomaisuudeksi." - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "Voit halutessasi <a href=\"%(edit_url)s\">muokata sitä</a>." - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "%(prefix)s Vastaus kysymykseen \"%(question_title)s\" on hyväksytty" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" -"\n" -"%(accepted_by_link)s on hyväksynyt %(answer_author_link)s:n vastauksen " -"kysymykseensä %(question_link)s." - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" -"\n" -"%(accepted_by)s on hyväksynyt %(answer_author)s:n vastauksen kysymykseensä " -"%(question_title)s.\n" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "Hei" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "Terveisin" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "PS. Voit säätää ilmoitusasetuksia" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "PS. Voit säätää ilmoitusasetuksia täällä:" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "%(prefix)s Kooste tapahtumista" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -"Tässä on kooste edellisen viestin jälkeen sivustolle %(app_name)s tehdyistä " -"päivityksistä." - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" -"\n" -"Sivustolle on liittynyt %(new_member_count)s uutta käyttäjää. Näistä " -"%(new_member_links)s ovat toistaiseksi olleet aktiivisimpia." - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -"%(new_member_links)s ovat liittyneet sivustolle %(app_name)s." - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" -"\n" -"Sivustolle on lisätty %(new_question_count)s %(new_questions_link)s." - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "Nämä kysymykset sisältävät yhden tai useamman omista avainsanoistasi:" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" -"Näihin kysymyksiin ei ole saatu vastausta, mutta ehkä sinä osaat auttaa:" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" -"Lopuksi, nämä %(subscriptions_link)s ovat päivittyneet edellisen käyntisi " -"jälkeen:" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, fuzzy, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" -"\n" -"Tässä on kooste edellisen viestin jälkeen sivustolle %(app_name)s tehdyistä " -"päivityksistä." - -#: forum/skins/default/templates/notifications/digest.html:112 -#, fuzzy, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" -"\n" -"Sivustolle on liittynyt %(new_member_count)s uutta käyttäjää. Näistä " -"%(new_member_links)s ovat toistaiseksi olleet aktiivisimpia." - -#: forum/skins/default/templates/notifications/digest.html:114 -#, fuzzy, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" -"\n" -"%(new_member_links)s ovat liittyneet sivustolle %(app_name)s." - -#: forum/skins/default/templates/notifications/digest.html:119 -#, fuzzy, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" -"\n" -"Sivustolle on lisätty %(new_question_count)s %(new_questions_link)s." - -#: forum/skins/default/templates/notifications/digest.html:134 -#, fuzzy -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" -"Lopuksi, nämä %(subscriptions_link)s ovat päivittyneet edellisen käyntisi " -"jälkeen:" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "%(prefix)s Palautetta sivustolta %(app_name)s" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "Lähettäjä" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "anonyymi" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "Sähköpostiosoite" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "Viesti:" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "%(prefix)s Uusi vastaus kysymykseen %(question_title)s" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -"%(author_link)s lähetti uuden vastauksen sivustolle %(app_name)s kysymykseen " -"%(question_link)s:" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "Muista käydä sivustolla äänestämässä!" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" -"\n" -"%(answer_author)s lähetti uuden vastauksen sivustolle %(safe_app_name)s " -"kysymykseen \"%(question_title)s\":\n" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "%(prefix)s Uusi kommentti viestiin \"%(question_title)s\"" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "%(author_link)s kirjoitti uuden kommentin " - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "%(post_author)s:n vastaukseen " - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "kysymykseen %(question_link)s" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "%(comment_author)s kirjoitti kommentin " - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "%(safe_post_author)s vastaukseen" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "kysymykseen \"%(question_title)s\"" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" -"%(prefix)s %(safe_newmember_name)s liittyi sivustolle %(safe_app_name)s" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" -"\n" -"%(newmember_link)s on liittynyt sivustolle %(app_name)s.\n" -"Katso <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s\">" -"%(newmember_name)s:n profiili</a>." - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" -"\n" -"%(safe_newmember_name)s on liittynyt sivustolle %(safe_app_name)s. Alla " -"linkki hänen profiilisivulleen:\n" -"%(app_url)s%(newmember_url)s\"\n" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" -"%(prefix)s Uusi kysymys: %(question_title)s sivustolla %(safe_app_name)s" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" -"\n" -"%(author_link)s lähetti sivustolle %(app_name)s uuden kysymyksen " -"%(question_link)s.\n" -"Kysymykseen on liitetty avainsanat \"<em>%(tag_links)s</em>\". Tässä sen " -"sisältö:" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" -"\n" -"%(question_author)s lähetti sivustolle %(safe_app_name)s uuden kysymyksen " -"%(question_title)s.\n" -"Kysymykseen on liitetty avainsanat \"<em>%(question_tags)s</em>\". Tässä sen " -"sisältö:\n" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -#, fuzzy -msgid "Site Administration" -msgstr "ylläpito" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "OSQA-ylläpito" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "Vaihda Django-käyttöliittymään" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "Ylläpitovalikko" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "Huoltotila" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "Häiritsevät viestit" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -msgid "Create User" -msgstr "Luo uusi käyttäjä" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -msgid "Quick creation of a new user" -msgstr "Uuden käyttäjän luonti suoraan ylläpidon toimesta." - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "Tallenna" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "Ohjauspaneeli" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "Tervetuloa OSQA:n ylläpitoalueelle." - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "Perustilastot" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "edelliseltä vuorokaudelta" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "käyttäjä" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "liittynyt edellisen vuorokauden aikana" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "Sivuston tila" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" -"Sivustosi on aloitusmoodissa. Klikkaa alta palauttaaksesi oletusasetukset." - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" -"Sivustosi on normaalitilassa. Klikkaa alta siirtyäksesi aloitusmoodiin." - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" -"Sivustosi asetuksia on mukautettu. Klikkaa alta palauttaaksesi joko " -"oletusasetukset tai aloitusmoodin asetukset." - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "Haluatko varmasti palata oletusasetuksiin?" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "Palauta" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "Haluatko varmasti siirtyä aloitusmoodiin?" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "Siirry" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "Tapahtumat" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "Ylläpito" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "Tervetuloa," - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "Vakiokäyttöliittymään" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "Takaisin etusivulle" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "Kirjaudu ulos" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "Etusivu" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "Julkaisemattomia muutoksia" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "Tällä symbolilla merkityissä kohdissa on julkaisemattomia muutoksia." - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "Äänestys ja arvostus" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "Keskusteluasetukset" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "Muuttumaton sisältö" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "Omat sivut" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "Tallentamattomat muutokset" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "Muut asetukset" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "Työkalut" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "Muokataan sivua" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "Staattinen sisältö" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "Luodaan uusi sivu" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "Uusi sivu" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "Julkaistu" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "Julkaisematon" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "Muokkaa" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "Peruuta julkaisu" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "Julkaise" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "Käyttäjät ovat ilmoittaneet nämä viestit häiritseviksi." - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "Sivuston tilastot" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "Laske pistemäärät ja käyttäjien arvostus uudelleen." - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "Tämä toimenpide on laskennallisesti raskas, oletko varma?" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "Laske" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, fuzzy, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "%(prefix)s Sivuston %(app_name)s sähköpostivarmennus" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" -"Huoltotilassa sivustolle pääsee vain tietyistä ip-osoitteista. Muut " -"käyttäjät saavat asiasta ilmoituksen." - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "Sivusto on huoltotilassa." - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "Voit muokata huoltotilan asetuksia alta." - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "Tallenna asetukset" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "Avaa sivusto" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "Sulje sivusto" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "Moderointityökalut" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "Näillä työkaluilla voi etsiä häiriköitä ja huijareita sivustolta." - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "Tarkista:" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "Eniten pisteitä saaneet" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "Uudet käyttäjät" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "Vanhat käyttäjät" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "Nämä käyttäjätunnukset" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "(Pilkulla erotettu lista käyttäjätunnuksia)" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "Toteuta" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "Mahdolliset huijarit" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "Sähköpostiosoite" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "Varmennettu" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "Ei varmennettu" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "Arvostus:" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "Arvostus" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "Teot" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "Käytetyt ip-osoitteet" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "Huijaustodennäköisyys" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "Mahdolliset valetunnukset" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "/" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "käyttökertaa" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "Sisällönhallinta" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "Joukkotoiminnot sivuston sisällölle." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "Tyhjennä suodatin" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "Sisältö" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "Otsikko ja sisältö" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "Suodatus" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "näytä/piilota" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "Tyypin mukaan" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "Näytä kaiken tyyppinen sisältö." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "mikä tahansa" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "Poista suodatusehto." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "Lisää suodatusehdoksi." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "Tilan mukaan" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "Näytä missä tahansa tilassa oleva sisältö." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "mikä tahansa" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "Mikä tahansa valituista" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "Kaikki valituista" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "Kirjoittajan mukaan" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" -"Ei valittuja käyttäjiä. Lisää käyttäjätunnus kirjoittamalla se tekstiruutuun." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" -"Poista käyttäjiä suodattimesta klikkaamalla nimen vieressä olevaa rastia." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "Avainsanojen mukaan" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" -"Ei valittuja avainsanoja. Lisää avainsana kirjoittamalla se tekstiruutuun." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" -"Klikkaa avainsanan vieressä olevaa rastia poistaaksesi sen suodattimesta." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "Tallennetut suodatusasetukset" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" -"Yhtään suodatussääntöä ei ole tallennettu. Klikkaa painiketta tallentaaksesi " -"nykyiset ehdot." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "Suodattimen nimi..." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "Tallenna" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "Toimenpide" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "Merkitse poistetuksi" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "Kumoa poisto" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "Poista lopullisesti" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "Sulje kysymys" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "Suorita toimenpide" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "Tyyppi" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "Yhteenveto" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "Tila" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "Kirjoittaja" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "Lisätty" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "Viimeksi muuttanut" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "Viimeksi muutettu" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "Avainsanat" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr " " - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "Esikatselu" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "Palauta" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "Staattinen sisältö" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "Mahdollistaa kiinteän sisällön kirjoittamisen." - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "Valitse muokattava sivu." - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "Sivut" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -#, fuzzy -msgid "Are you sure you want to delete this page?" -msgstr "Haluatko varmasti palata oletusasetuksiin?" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "poista" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" -"Alla on muutama kuvaaja, joiden avulla voit tarkkailla sivuston " -"käyttöastetta." - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#, fuzzy -msgid "next" -msgstr "seuraava sivu" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "äänestää" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "Kysyjä on hyväksynyt ainakin yhden vastauksista." - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "katso" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "Samankaltaiset avainsanat" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "Näytä avainsanalla %(tag_name)s merkityt kysymykset." - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "Viimeksi päivitetyt kysymykset" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "aktiivisimmat" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "Viimeksi kysytyt kysymykset" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "uusimmat" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "Suosituimmat kysymykset" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "suosituimmat" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "Parhaat pisteet saaneet kysymykset" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "parhaat pisteet" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "Älä ilmoita muutoksista" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "Katsoit viimeksi" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "Omat avainsanat" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "Poista '%(tag_name)s' itseä kiinnostavien avainsanojen listalta." - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "Lisää" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "Piilotetut kysymykset" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "Poista '%(tag_name)s' piilotettavien avainsanojen listalta." - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "Avainsanan perusteella löytyneet kysymykset" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "Hakutulokset" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "Otsikon perusteella löytyneet kysymykset" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "Vastaamattomat kysymykset" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "Kaikki kysymykset" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "Markdown-perusteet" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -#, fuzzy -msgid "*italic* or _italic_" -msgstr "*kursiivi* tai __kursiivi__" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "**lihavointi** tai __lihavointi__" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "linkki" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "teksti" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "kuva" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "numeroitu luettelo:" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "Lisätäksesi rivinvaihdon kirjoita kaksi välilyöntiä rivin loppuun." - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "Tavallisemmat HTML-tagit toimivat myös." - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "Lisätietoa Markdown-syntaksista" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "Uusimmat arvomerkit" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "Katso kaikki arvomerkit" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "Uusimmat avainsanat" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "Katso eniten käytetyt avainsanat" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "Muokkaa käyttäjäprofiiliasi" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "on kuva, joka on liitetty sähköpostiosoitteesi" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "Gravatar" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "Rekisteröitynyt käyttäjä" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "Nimimerkki" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "Tallenna" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "arvostetuimmat" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "Tunnus on lukittu:" - -#: forum/skins/default/templates/users/info.html:42 -#, fuzzy -msgid "Administrator" -msgstr "ylläpito" - -#: forum/skins/default/templates/users/info.html:45 -#, fuzzy -msgid "Moderator" -msgstr "Moderointityökalut" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "Oikea nimi" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "Mukana jo" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "Edellinen käynti" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "Kotisivu" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "Asuinpaikka" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "Ikä" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "vuotta" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "ei varmennettu" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "Ääniä vielä tänään jäljellä" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "ääntä" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "Annettavat arvostuspisteet" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "Käyttäjätyökalut" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -msgid "Users Online" -msgstr "Kirjautuneet käyttäjät" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "Hakua %(suser)s vastaavat käyttäjät:" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "Mitään ei löytynyt." - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "Asetukset" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "Voit mukauttaa sivuston toimintaa haluamaksesi." - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "Selausasetukset:" - -#: forum/skins/default/templates/users/preferences.html:22 -#, fuzzy -msgid "Always remember the sort order I apply to the lists I view" -msgstr "Muista aina listoille asettamani lajittelu." - -#: forum/skins/default/templates/users/questions.html:11 -#, fuzzy -msgid "No favorite questions to display." -msgstr "Parhaat pisteet saaneet kysymykset" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "arvomerkit" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "(lukittu)" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> kysymys\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> kysymystä\n" -" " - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> vastaus\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> vastausta\n" -" " - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "Vastaus on saanut %(vote_count)s ääntä" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "ja kysyjä on hyväksynyt sen" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(cnt)s</span> ääni\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(cnt)s</span> ääntä\n" -" " - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "plusääni" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "Käyttäjän antamat plusäänet yhteensä." - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "miinusääni" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "Käyttäjän antamat miinusäänet yhteensä." - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> avainsana\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> avainsanaa\n" -" " - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" -"Katso avainsanalla '%(tag_name)s' merkityt kysymykset, joihin %(view_user)s " -"on osallistunut." - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> arvomerkki\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> arvomerkkiä\n" -" " - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "Muokkaa tarkkailulistaasi" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "Älä näytä tarkkailulistaan automaattisesti lisättyjä kysymyksiä." - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "Näytä myös listalle automaattisesti lisätyt kysymykset." - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "Ilmoitus- ja tarkkailuasetukset" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" -"\n" -"Voit asettaa, mistä asioista haluat ilmoituksen ja kuinka usein.<br />" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "Ilmoita minulle:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "uusista käyttäjistä" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "uusista kysymyksistä" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" -"uusistä kysymyksistä, jotka vastaavat kiinnostaviksi merkitsemiäni " -"avainsanoja" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "tarkkailulistani päivityksistä" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "Lisää tarkkailulistalleni automaattisesti:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "kysymykset, joita katson" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "kaikki kiinnostaviksi merkitsemiäni avainsanoja vastaavat kysymykset" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "kaikki kysymykset" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "Lähetä tarkkailulistani kysymyksiin liittyen ilmoitus:" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "uudesta vastauksesta" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "kommentista omaan viestiini" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "kaikista kommenteista" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "hyväksytyistä vastauksista" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -#, fuzzy -msgid "Daily Digest:" -msgstr "%(prefix)s Kooste tapahtumista" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "Lähetä päivittäinen kooste sivuston tapahtumista" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" -"Ilmoita aina, kun joku vastaa kommenttiini käyttäen merkintää <b>@käyttäjä</" -"b>." - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "Lukitse käyttäjätunnus" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "Ikuisesti" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "Tietyksi ajaksi" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "Lukitse" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "päivän ajaksi" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "Julkinen viesti" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "Tämä viesti näkyy käyttäjän profiilisivulla." - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "Yksityinen viesti" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "Tämä viesti (jos annat sen) näkyy vain kyseiselle käyttäjälle." - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "Käyttäjät" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "antaa plusääniä" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "antaa miinusääniä" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "Yksi vastaus:" -msgstr[1] "%(counter)s vastausta:" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "Syötä avainsanat." - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" -"\n" -"maxlength: \"enintään %(max_number_of_tags)s avainsanaa, joissa kussakin " -"enintään %(max_length_of_tags)s merkkiä\"" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, fuzzy, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" -"\n" -"Voit muokata ilmoitusasetuksia omalla <a href=\"%(subscriptions_url)s" -"\">profiilisivullasi</a>" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "Arvostuspisteesi eivät riitä tiedostojen lähettämiseen." - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "Näytä kaikki" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "Pistemäärä" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "*kursiivi* tai __kursiivi__" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "Muista aina listoille asettamani lajittelu." - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "karma" - -#: forum/templatetags/extra_tags.py:114 -#, fuzzy, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "Kysyjä on hyväksynyt ainakin yhden vastauksista." - -#: forum/templatetags/extra_tags.py:120 -#, fuzzy, python-format -msgid "%s has one accepted answer" -msgstr "Kysyjä on hyväksynyt ainakin yhden vastauksista." - -#: forum/templatetags/extra_tags.py:126 -#, fuzzy, python-format -msgid "%s has no accepted answers" -msgstr "Kysyjä on hyväksynyt ainakin yhden vastauksista." - -#: forum/templatetags/extra_tags.py:132 -#, fuzzy -msgid "accept rate" -msgstr "hyväksyä vastauksia" - -#: forum/templatetags/extra_tags.py:133 -#, fuzzy -msgid "Rate of the user's accepted answers" -msgstr "Merkitse tämä vastaus hyväksytyksi" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "toissapäivänä" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "eilen" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hour ago" -msgstr "%(hr)d tuntia sitten" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hours ago" -msgstr "%(hr)d tuntia sitten" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "%(hr)d tuntia sitten" -msgstr[1] "%(hr)d tuntia sitten" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "min ago" -msgstr "%(min)d minuuttia sitten" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "mins ago" -msgstr "%(min)d minuuttia sitten" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "%(min)d minuuttia sitten" -msgstr[1] "%(min)d minuuttia sitten" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy -msgid "sec ago" -msgstr "%(sec)d sekuntia sitten" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy -msgid "secs ago" -msgstr "%(sec)d sekuntia sitten" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "%(sec)d sekuntia sitten" -msgstr[1] "%(sec)d sekuntia sitten" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "ikilinkki" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "ikilinkki vastaukseen" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "muokkaa avainsanoja" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "avaa uudelleen" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "sulje" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "raportoi" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "ilmoita häiritsevästä viestistä (roskaposti tai ilkivalta)" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "kumoa poisto" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "näytä historia" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "merkitse yhteisomaisuudeksi" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "poista yhteisomaisuus-merkintä" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "muuta kommentiksi" - -#: forum/templatetags/node_tags.py:175 -#, fuzzy -msgid "convert to question" -msgstr "Vastaa kysymykseen" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "kirjoitti" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "Kysymysten määrä" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "Käyttäjien määrä" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "tallennettiin '%s'-asetukset" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "Sivuston aloitustila päällä" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "Kaikki arvot palautettu oletuksiin" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "Kaikki arvot laskettu uudelleen" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "Sivusto on huoltotilassa" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "Asetukset tallennettu" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "Sivusto toimii taas normaalisti" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "Sivustoa huolletaan. Yritä kohta uudelleen." - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "createuser" - -#: forum/views/admin.py:415 -msgid "Create new user" -msgstr "Luo uusi käyttäjä" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "Uusi käyttäjä luotu onnistuneesti. %s." - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "Näytä käyttäjän %s profiili." - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "added_at" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "added_at_asc" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "author" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "author_asc" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "score" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "score_asc" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "act_at" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "act_at_asc" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "act_by" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "act_by_asc" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "nodeman" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "Joukkotoiminnot" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "filter" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "Mitään ei tehty" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "Valitut kohteet merkittiin poistetuiksi" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "Valitut kohteet palautettiin" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "suljetaan useita kohteita" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "Valitut kysymykset suljettiin" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "Valitut kohteet poistettiin" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" -"Nämä kirjautumistiedot liittyvät toiseen käyttäjään. Sulje nykyinen istunto " -"ja yritä uudelleen." - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "Olet jo kirjautunut." - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "Nämä kirjautumistiedot on jo liitetty tunnukseesi." - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "Nämä kirjautumistiedot on nyt liitetty tunnukseesi." - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" -"Kirjautumisen aikana tapahtui jokin virhe. Yritä uudelleen. Huomioi, että " -"evästeet täytyy sallia kirjautumista varten." - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "Tervetuliaisviesti on lähetetty sähköpostiosoitteeseesi. " - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "Kirjautumisen aikana tapahtui jokin virhe. Yritä uudelleen." - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "Tilapäinen kirjautumisavain on lähetetty sähköpostiisi." - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" -"Olet kirjautunut tilapäisellä avaimella. Korjaa nyt kirjautumistietosi." - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "Varmennusviesti lähetettiin sähköpostiisi." - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "Kiitos, sähköpostiosoitteesi on nyt varmennettu." - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "Uusi salasana on asetettu" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "Salasanasi on vaihdettu" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "Kirjautumistiedot %s on poistettu tunnuksestasi" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "Tervetuloa %s, olet nyt kirjautunut sisään" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "Sinulla on %s odottamassa lähetystä." - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "tallenna" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "muokkaa" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "peruuta" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "Tunnuksesi on lukittu. Ota yhteyttä sivuston ylläpitoon." - -#: forum/views/commands.py:28 -#, fuzzy, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" -"Sinulla ei ole tarpeeksi arvostuspisteitä jotta voisit %(action)s. <br /" -">Katso <a href=\"%(faq_url)s\">sivuston ohjeet</a>." - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"Sinulla ei ole tarpeeksi arvostuspisteitä jotta voisit %(action)s. <br /" -">Katso <a href=\"%(faq_url)s\">sivuston ohjeet</a>." - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" -"Et voi %(action)s omaa viestiäsi.<br />Tarkista <a href=\"%(faq_url)s" -"\">sivuston ohjeet</a>." - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" -"Vieraat eivät voi %(action)s.<br />Ole hyvä ja kirjaudu tai luo tunnus <a " -"href=\"%(signin_url)s\">täällä</a>." - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"Sinulla ei ole enää jäljellä yhtään %(action)s.<br />Yläraja on %(limit)s " -"kertaa päivässä. <br />Katso <a href=\"%(faq_url)s\">sivuston ohjeet</a>." - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" -"Et voi %(action)s kahdesti samaa viestiä.<br />Tarkista <a href=\"%(faq_url)s" -"\">sivuston ohjeet</a>." - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" -"Et voi peruuttaa ääntä koska äänen antamisesta on kulunut yli %(ndays)d " -"%(tdays)s." - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "päivä" -msgstr[1] "päivää" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "Sinulla on %(nvotes)s %(tvotes)s jäljellä tänään." - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "ilmoita" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "ilmoittaa" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "ilmoituskertoja" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "Olet jo ilmoittanut tämän viestin, syynä: %(reason)s" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "Anna syy ilmoitukselle" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "Kiitos ilmoituksesta. Ylläpitäjä tarkistaa sen piakkoin." - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "tykätä kommenteista" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "tykätä" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "poistaa kommentteja" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "merkitä kysymystä suosikiksi" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" -"Sivupyynnön parametrit ovat virheelliset. Kokeile uudelleen tai ota yhteyttä " -"sivuston ylläpitoon." - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "Kommentti on tyhjä" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "Kommentin täytyy olla vähintään %d merkkiä pitkä" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "Kommentti saa olla enintään %d merkkiä pitkä." - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "muokata kommentteja" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "hyväksyä vastauksia" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "Sinulla ei ole oikeuksia hyväksyä tätä vastausta." - -#: forum/views/commands.py:332 -#, fuzzy -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "Kysyjä on hyväksynyt ainakin yhden vastauksista." -msgstr[1] "Kysyjä on hyväksynyt ainakin yhden vastauksista." - -#: forum/views/commands.py:339 -#, fuzzy -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -"Tältä kirjoittajalta on jo yksi hyväksytty vastaus tähän kysymykseen.Tältä " -"kirjoittajalta on jo enimmäismäärä hyväksyttyjä vastauksia tähän kysymykseen." -msgstr[1] "" -"Tältä kirjoittajalta on jo yksi hyväksytty vastaus tähän kysymykseen.Tältä " -"kirjoittajalta on jo enimmäismäärä hyväksyttyjä vastauksia tähän kysymykseen." - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -" <span class=\"count\">%(counter)s</span> vastaus\n" -" " - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "poistaa viestejä" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "sulkea kysymyksiä" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "jälleenavata kysymyksiä" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "merkitä viestejä yhteisomaisuudeksi" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "poistaa yhteisomaisuusmerkintää" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "muuttaa vastauksia kommenteiksi" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "%(uname)s kirjoittama vastaus: %(snippet)s..." - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "Kysymys" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "Valitsemaasi viestiin ei voi liittää kommentteja" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -#, fuzzy -msgid "convert comments to answers" -msgstr "RSS-syöte, joka sisältää tämän kysymyksen vastaukset ja kommentit" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "Tätä toimintoa varten täytyy kirjautua." - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -#, fuzzy -msgid "award" -msgstr "award/" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" -"Tapahtui tuntematon virhe. Yritä hetken päästä uudelleen tai ota yhteyttä " -"sivuston ylläpitoon." - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "Kiitos palautteesta!" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "Odotamme palautettasi! Annathan sen ensi kerralla :)" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "Viimeksi <strong>päivitetyt</strong> kysymykset" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "Viimeksi <strong>kysytyt</strong> kysymykset" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "<strong>Aktiivisimmat</strong> kysymykset edelliseltä vuorokaudelta" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "mostvoted" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "parhaat <strong>äänestyspisteet</strong> saaneet kysymykset" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "vanhimmat" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "vanhimmat vastaukset" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "vanhimmat vastaukset näytetään ensimmäisenä" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "uusimmat vastaukset" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "uusimmat vastaukset näytetään ensimmäisenä" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "suositut vastaukset" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "parhaaksi äänestetyt vastaukset näytetään ensimmäisenä" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "name" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "nimen mukaan" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "aakkosjärjestyksessä" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "used" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "käytetyimmät" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "järjestettynä avainsanan käyttökertojen mukaan" - -#: forum/views/readers.py:72 -msgid " - " -msgstr " – " - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "uusimmat kysymykset" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "vastaamattomat" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "avoimet kysymykset, joilla ei ole hyväksyttyä vastausta" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "Vastaamattomat kysymykset" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "avainsanalla <span class=\"tag\">%(tag)s</span> merkityt kysymykset" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "Avainsanalla %(tag)s merkityt kysymykset" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "Käyttäjän %s kysymykset" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "Käyttäjän %s vastaukset" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "Kysymykset, joiden muutoksia seuraat, %s" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "Kysymykset, joiden muutoksia %s seuraa" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "Kysymykset" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "ranking" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "vastaavuus" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "hakuasi parhaiten vastaavat kysymykset" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "hakusanoilla '%(keywords)s' löytyneet kysymykset" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "%(rev_number)d. versio" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "järjestetty arvostuksen mukaan" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "uusimmat" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "uusimmat käyttäjät" - -#: forum/views/users.py:40 -msgid "last" -msgstr "last" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "vanhimmat käyttäjät" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "käyttäjätunnuksen mukaan" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "käyttäjätunnuksen mukaan aakkosjärjestyksessä" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "Kirjautuneet käyttäjät" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "Profiili päivitetty." - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "Vain pääkäyttäjät voivat muuttaa käyttöoikeuksia." - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "Vain sivuston omistaja voi asettaa pääkäyttäjiä." - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "Vain pääkäyttäjät voivat muokata arvostuspisteitä" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "Syötetty pistemäärä ei kelpaa." - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "Vain pääkäyttäjät voivat lukita käyttäjätilejä." - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "Syötä päivien määrä numeroina." - -#: forum/views/users.py:321 -msgid "overview" -msgstr "perustiedot" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "perustiedot käyttäjästä" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "tapahtumat" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "viimeaikaiset käyttäjään liittyvät tapahtumat" - -#: forum/views/users.py:367 -#, fuzzy -msgid "reputation history" -msgstr "karma" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "kuvaaja käyttäjän arvostuspisteistä" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "käyttäjän äänestyshistoria" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "suosikit" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "käyttäjän valitsemat suosikkikysymykset" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "tarkkailulista" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "Muutosten seurantaan valitut kysymykset." - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "Ilmoitusasetukset on tallennettu." - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "asetukset" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "Asetukset tallennettu" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "Arvostuspisteesi eivät riitä tiedostojen lähettämiseen." - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" -"sallitut tiedostotyypit ovat 'jpg', 'jpeg', 'gif', 'bmp', 'png ja 'tiff'" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "tiedoston maksimikoko on %s MB" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "Virhe tiedoston lataamisessa: %s" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "Kysymyksesi on jonossa kunnes %s." - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "varmennat sähköpostiosoitteesi" - -#: forum/views/writers.py:129 -#, fuzzy -msgid "Converted to question" -msgstr "" -"Sulje kysymys, jolloin siihen ei enää voi kirjoittaa uusia vastauksia. " -"Kommenttien lisääminen on yhä mahdollista." - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "Vastauksesi on jonossa kunnes %s." - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "WordPress API:n avain" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" -"Oma WordPress API -avaimesi. Saat sen osoitteesta <a href='http://wordpress." -"com/'>http://wordpress.com/</a>." - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "Vähimmäiskarma, jotta viestiä ei tarkisteta" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" -"Vähimmäispisteet, jotka käyttäjällä täytyy olla, jotta hänen lähettämällensä " -"viestille ei tehdä roskapostitarkistusta." - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "Valitettavasti akismet epäilee että tämä %s on roskapostia." - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "Akismet-roskapostitarkastuksen viesti" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "Akismet epäilee että kirjoittamasi %(action_name)s on roskapostia." - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" -"\n" -"Valitettavasti Akismet epäilee, että kirjoittamasi %(action_name)s on " -"roskapostia.<br />Jos kyseessä on virhe, muokkaa viestisi tekstiä tai ota " -"yhteyttä sivuston ylläpitoon.\n" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "Kysymystä on katsottu %s kertaa" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "Suosittu kysymys" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "Merkittävä kysymys" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "Kuuluisa kysymys" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "Kysymys on saanut %s positiivista ääntä" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "Kiva kysymys" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "Hyvä kysymys" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "Mahtava kysymys" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "Vastaus on saanut %s positiivista ääntä" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "Kiva vastaus" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "Hyvä vastaus" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "Mahtava vastaus" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "%s käyttäjää on merkinnyt kysymyksen suosikikseen" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "Lempikysymys" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "Tähtikysymys" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "Kurinalainen" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "Poisti oman kysymyksen, jolla oli vähintään %s pistettä" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "Ryhmäpaine" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "Poisti oman kysymyksen, jolla oli alle %s pistettä" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "Kriitikko" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "Ensimmäinen miinusääni" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "Kannustaja" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "Ensimmäinen plusääni" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "Vartija" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "Ensimmäinen häiritseväksi ilmoitettu viesti" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "Järjestelijä" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "Ensimmäinen avainsanojen muutos" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "Muokkaaja" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "Ensimmäinen muokkaus" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "Oppinut" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "Ensimmäinen hyväksytty vastaus omaan kysymykseen" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "Siistijä" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "Ensimmäinen muutoksen peruutus" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "Omaelämänkerta" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "Täytti kaikki käyttäjäprofiilin kentät" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "Kansalaisvelvollisuus" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "Antoi %s ääntä" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "Tietäjä" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "Jätti %s kommenttia" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "Itseoppinut" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "Vastaus omaan kysymykseen sai ainakin %s plusääntä" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "Kielipoliisi" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "Muokkasi %s viestiä" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "Opiskelija" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "Kysymys sai ensikerran plusäänen" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "Opettaja" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "Vastaus sai ensikertaa plusäänen" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "Valaistunut" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "Hyväksytty vastaus sai ainakin %s plusääntä" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "Guru" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "Hyväksytty vastaus sai ainakin %s plusääntä" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "Arkeologi" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" -"Vastasi kysymykseen %(dif_days)s päivää myöhässä ja sai %(up_votes)s " -"plusääntä" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "Luokittelija" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "Avainsanaa käytetty %s kysymyksessä" - -#: forum_modules/default_badges/badges.py:326 -#, fuzzy -msgid "Validated Email" -msgstr "Varmennettu" - -#: forum_modules/default_badges/badges.py:327 -#, fuzzy -msgid "User who has validated email associated to the account" -msgstr "Muuta tunnukseesi liitettyjä OpenID-kirjautumistietoja." - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "Suositun kysymyksen katselukerrat" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" -"\n" -"Katselukertojen raja, jonka jälkeen kysymyksen kirjoittaja saa \"Suosittu " -"kysymys\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "Merkittävän kysymyksen katselukerrat" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" -"\n" -"Katselukertojen raja, jonka jälkeen kysymyksen kirjoittaja saa \"Merkittävä " -"kysymys\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "Kuuluisan kysymyksen katselukerrat" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" -"\n" -"Katselukertojen raja, jonka jälkeen kysymyksen kirjoittaja saa \"Kuuluisa " -"kysymys\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "Kivan vastauksen plusäänet" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"Positiivisten äänten raja, jonka jälkeen vastauksen kirjoittaja saa \"Kiva " -"vastaus\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "Kivan kysymyksen plusäänet" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" -"\n" -"Positiivisten äänten raja, jonka jälkeen kysymyksen kirjoittaja saa \"Kiva " -"kysymys\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "Hyvän vastauksen plusäänet" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"Positiivisten äänten raja, jonka jälkeen vastauksen kirjoittaja saa \"Hyvä " -"vastaus\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "Hyvän kysymyksen plusäänet" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" -"\n" -"Positiivisten äänten raja, jonka jälkeen kysymyksen kirjoittaja saa \"Hyvä " -"kysymys\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "Mahtavan vastauksen plusäänet" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"Positiivisten äänten raja, jonka jälkeen vastauksen kirjoittaja saa " -"\"Mahtava vastaus\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "Mahtavan kysymyksen plusäänet" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" -"\n" -"Positiivisten äänten raja, jonka jälkeen kysymyksen kirjoittaja saa " -"\"Mahtava kysymys\" -arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "Suosikkikysymyksen merkintäkerrat" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" -"\n" -"Kysymyksen suosikikseen merkinneiden käyttäjien määrä, jonka ylityttyä " -"kysyjä saa \"Suosikkikysymys\"-arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "Tähtikysymyksen merkintäkerrat" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" -"\n" -"Kysymyksen suosikikseen merkinneiden käyttäjien määrä, jonka ylityttyä " -"kysyjä saa \"Tähtikysymys\"-arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "Kurinalainen-arvomerkin minimipisteet" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" -"\n" -"\"Kurinalainen\"-arvomerkin voi saada poistaessaan oman kysymyksensä, jolla " -"on hyvät pisteet. Määritä vähimmäispisteet, jotka poistettavalla " -"kysymyksellä pitää olla arvomerkin saadakseen.\n" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "Ryhmäpaineen maksimipisteet" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" -"\n" -"\"Ryhmäpaine\"-arvomerkin voi saada poistamalla oman kysymyksensä, jolla on " -"huonot pisteet.Määritä enimmäispisteet, jotka poistettavalla kysymyksellä " -"pitää olla arvomerkin saadakseen.\n" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "Kansalaisvelvollisuuden annetut äänet" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" -"\n" -"Toisille annettujen äänten määrä, jonka täytyttyä käyttäjä saa " -"\"Kansalaisvelvollisuus\"-arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "Tietäjän kommenttimäärä" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" -"\n" -"Lähetettyjen kommenttien määrä, jonka täytyttyä käyttäjä saa \"Tietäjä\"-" -"arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "Itseoppineen plusäänet" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" -"\n" -"\"Itseoppinut\"-arvomerkin voi saada vastaamalla omaan kysymykseensä. " -"Määritä vastauksen vähimmäispisteet arvomerkin saamista varten.\n" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "Kielipoliisin päivitysmäärä" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" -"\n" -"Kysymyksen tai vastauksen päivitysten määrä, jonka täytyttyä käyttäjä saa " -"\"Kielipoliisi\"-arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "Valaistuneen plusäänet" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" -"\n" -"Hyväksytyn vastauksen saamien plusäänten määrä, jonka täytyttyä vastaaja saa " -"\"Valaistunut\"-arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "Gurun plusäänet" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" -"\n" -"Hyväksytyn vastauksen saamien plusäänten määrä, jonka täytyttyä vastaaja saa " -"\"Guru\"-arvomerkin.\n" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "Arkeologin plusäänet" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" -"\n" -"\"Argeologi\"-kunniamerkin voi saada vastattuaan iäkkääseen kysymykseen. " -"Määritä kuinka monta plusääntä vastauksen täytyy saada kunniamerkkiä " -"varten.\n" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "Arkeologin ikä päivissä" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" -"\n" -"\"Arkeologi\"-kunniamerkkiin oikeuttava kysymyksestä vastaukseen kulunut " -"aika päivissä.\n" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "Luokittelijan käyttökerrat" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" -"\n" -"Avainsanan käyttökertojen raja, jonka täytyttyä avainsanan luoja saa " -"\"Luokittelija\"-arvomerkin.\n" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "Pakataan xml-tiedostoja" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "Tuodaan ladattuja tiedostoja" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "Tuodaan teemahakemistoa" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "Kirjoitetaan inf-tiedostoa" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "Tallennetaan varmuuskopiotiedostoa" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "Jonossa" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "Aloitetaan" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "Viedään %s" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "Viedään" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "Tallennetaan väliaikaistiedostoa" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "Tallennetaan väliaikaistiedostoa %s" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "Valmis" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "Pakataan tiedostoja" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "Sisältö" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "Tapahtumat" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "Saadut arvomerkit" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "Asetukset" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "Nimettömät tiedot" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "Älä vie käyttäjätietoja ja tee kaikista tiedoista nimettömiä" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "Ladatut tiedostot" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "Sisällytä palvelimelle ladatut tiedostot varmuuskopioon" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "Teemahakemisto" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "Sisällytä teemahakemisto varmuuskopioon" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "Tuodaan %s" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "Tuodaan" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "Vientiasetukset" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "Tietojen vientiasetukset" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "Varmuuskopioiden tallennuspaikka" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "Hakemisto, johon varmuuskopiot tallennetaan." - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "exporter/" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "state/" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "running/" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "download/" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "tietojen vienti" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "XML-muotoinen tietojen vienti" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "XML-muotoinen tietojen vienti" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "Tallenna sivuston sisältö XML-muotoon" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "Olemassaolevat varmuuskopiot" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "Aloita uusi varmuuskopio" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "Aloita" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "XML-muotoinen tietojen tuonti" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "Tuo data XML-tiedostosta" - -#: forum_modules/exporter/templates/running.html:9 -#, fuzzy -msgid "Restore data from a previous export" -msgstr "Palauta aiemmin tiedostoon viety sivuston sisältö." - -#: forum_modules/exporter/templates/running.html:60 -#, fuzzy -msgid "Skipped" -msgstr "Ohitettu" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "Kokonainen virheilmoitus on lokitiedostossa." - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "Lataa tiedosto" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "Syötä oikea käyttäjätunnus ja salasana (tarkista kirjainkoko)." - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "Kirjautuminen epäonnistui." - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "Käyttäjää ei ole olemassa." - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "Anna käyttäjätunnuksesi ja salasanasi" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "Anna salasanasi" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "Anna käyttäjätunnus" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "local/" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "Anna käyttäjätunnuksesi ja salasanasi" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "tai valitse ulkopuolinen sivusto ylläpuolelta" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "Käyttäjätunnus" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "Salasana" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "Luo tunnus" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "Unohditko salasanasi?" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "OAuth-kirjautuminen epäonnistui: tunnistetta ei ole palvelimella" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "OAuth-kirjautuminen epäonnistui: tunnisteet eivät täsmää." - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "Syöttämäsi OpenId-osoite ei ole kelvollinen." - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "OpenId-kirjautuminen keskeytyi." - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "OpenId-kirjautuminen epäonnistui: " - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "OpenId-tunnuksesi asetukset täytyy tehdä (setup needed)" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "OpenId-kirjautuminen epäonnistui, virhekoodi: " - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "Syötä OpenID-osoitteesi" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "Virheenkorjaus" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" -"Sai %s plusääntä vastaamalla avainsanalla \"bug\" merkittyyn kysymykseen" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "Kuvavarmenteen vastaus oli väärin" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "user-%(id)s" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "user-%(id)s (google)" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "user-%(id)s (yahoo)" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "sximporter/" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "SX-tuonti" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "Tämä moduuli tuo kysymysdatan Stack Exchange -sivustolta." - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "Stack Exchange -käyttäjätunnuksesi" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" -"Yhdistä käyttäjät paikallisiin käyttäjiin, jos käyttäjätunnus ja " -"sähköpostiosoite ovat samat." - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "Updater Settings" -msgstr "Käyttäjäasetukset" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "OSQA Update Checker Settings." -msgstr "Muut asetukset" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -#, fuzzy -msgid "updater/" -msgstr "update" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -#, fuzzy -msgid "updater" -msgstr "update" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -#, fuzzy -msgid "Update Checker" -msgstr "Katsoit viimeksi" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" - -#~ msgid "okay, let's try!" -#~ msgstr "selvä, kokeillaan sitä!" - -#~ msgid "no OSQA community email please, thanks" -#~ msgstr "ei kiitos" - -#~ msgid "please choose one of the options above" -#~ msgstr "valitse toinen vaihtoehdoista" - -#~ msgid "Does your SMTP server usFes TLS for authentication." -#~ msgstr "Käyttää SMTP-palvelin TLS-salausta yhteydessä?" - -#~ msgid "Change email " -#~ msgstr "Vaihda sähköpostiosoite" - -#~ msgid "Add or update the email address associated with your account." -#~ msgstr "Lisää tai muuta tunnukseesi liitetty sähköpostiosoite." - -#~ msgid "Change OpenID" -#~ msgstr "Vaihda OpenID" - -#~ msgid "Delete account" -#~ msgstr "Poista käyttäjätunnus" - -#~ msgid "Erase your username and all your data from website" -#~ msgstr "Poista käyttäjätunnuksesi ja kaikki tietosi sivustolta." - -#~ msgid "You can answer anonymously and then login." -#~ msgstr "Voit kirjoittaa vastauksesi heti ja kirjautua lähettääksesi sen." - -#~ msgid "Answer your own question only to give an answer." -#~ msgstr "" -#~ "Vastaa omaan kysymykseesi vain siinä tapauksessa, että olet löytänyt " -#~ "ratkaisun. Muussa tapauksessa lisää vastauksen sijaan kommentti." - -#~ msgid "Please only give an answer, no discussions." -#~ msgstr "" -#~ "Vastaa vain, jos tiedät ratkaisun kysyjän ongelmaan. Muussa tapauksessa " -#~ "lisää vastauksen sijaan kommentti." - -#~ msgid "" -#~ "Remember, your answer will not be published until you validate your email." -#~ msgstr "Vastaustasi ei julkaista ennen kuin varmennat sähköpostiosoitteesi." - -#~ msgid "" -#~ "\n" -#~ " ask a question relevant to the %(app_title)s community \n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "Kysy vain sivuston %(app_title)s aihepiiriin kuuluvia kysymyksiä." - -#~ msgid "please try provide enough details" -#~ msgstr "" -#~ "Anna riittävästi tietoa ongelmasta sekä mahdolliset virheilmoitukset." - -#~ msgid "Tags are words that will tell others what this question is about." -#~ msgstr "" -#~ "Avainsanat ovat merkintöjä, joiden perusteella sivusto lajittelee " -#~ "kysymyksiä." - -#~ msgid "They will help other find your question." -#~ msgstr "" -#~ "Ne auttavat muita, sekä kysyjiä että vastaajia, löytämään kysymyksesi." - -#~ msgid "" -#~ "\n" -#~ " A question can have up to %(max_number_of_tags)s tags, " -#~ "but it must have at least %(min_number_of_tags)s.\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "Kysymykseen voi liittää %(min_number_of_tags)s–%(max_number_of_tags)s " -#~ "avainsanaa." - -#~ msgid "" -#~ "Please create your screen name and save your email address. Saved email " -#~ "address will let you subscribe for the updates on the most interesting " -#~ "questions and will be used to create and retrieve your unique avatar " -#~ "image. " -#~ msgstr "" -#~ "Luo nimimerkki, jota haluat käyttää sivustolla, ja syötä " -#~ "sähköpostiosoitteesi. Sähköpostiosoitetta käytetään roskapostittajien " -#~ "torjuntaan, kysymysten tarkkailuilmoituksiin ja Gravatar-kuvien " -#~ "hakemiseen." - -#~ msgid "receive updates motivational blurb" -#~ msgstr "" -#~ "<strong>Tilaa uudet kysymykset sähköpostitse</strong> – tämä edistää " -#~ "sivuston toimintaa, kun potentiaalisia vastaajia on enemmän. Sivusto " -#~ "lähettää oletuksena yhden sähköpostin kerran viikossa, jos uusia " -#~ "kysymyksiä on. Voit muuttaa asetuksia myöhemmin profiilisivullasi." - -#~ msgid "please select one of the options above" -#~ msgstr "valitse toinen ylläolevista vaihtoehdoista" - -#~ msgid "Tag filter tool will be your right panel, once you log in." -#~ msgstr "" -#~ "Kirjautumisen jälkeen voit suodattaa avainsanoja sivupalkissa olevan " -#~ "työkalun avulla." - -#~ msgid "Existing account" -#~ msgstr "Olemassaoleva tunnus" - -#~ msgid "user name" -#~ msgstr "käyttäjätunnus" - -#~ msgid "password" -#~ msgstr "salasana" - -#~ msgid "Register" -#~ msgstr "Rekisteröidy" - -#~ msgid "Show" -#~ msgstr "Näytä" - -#~ msgid "Refresh" -#~ msgstr "Päivitä" - -#~ msgid "Check to make the sort order sticky" -#~ msgstr "Valitse tämä tallentaaksesi lajittelujärjestyksen." - -#~ msgid "" -#~ "\n" -#~ " Currently you have notifications enabled. You can always stop all " -#~ "notifications without losing your settings and restart them afterwards." -#~ "<br />\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "Ilmoitukset ovat tällä hetkellä käytössä. Voit halutessasi keskeyttää " -#~ "ilmoitusten lähettämisen ja jatkaa sitä myöhemmin menettämättä " -#~ "asetuksiasi.<br />" - -#~ msgid "" -#~ "\n" -#~ " Currently you have notifications disabled. You can enable them by " -#~ "clicking on the <strong>Start notifications</strong> button below.<br />\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "Ilmoitukset ovat tällä hetkellä pois käytöstä. Voit kytkeä ne päälle " -#~ "klikkaamalla <strong>Kytke ilmoitukset päälle</strong>.<br />" - -#~ msgid "Questions I ask" -#~ msgstr "omat kysymykseni" - -#~ msgid "Questions I answer" -#~ msgstr "kysymykset, joihin vastaan" - -#~ msgid "Questions I comment" -#~ msgstr "kysymykset, joihin kommentoin" - -#~ msgid "More:" -#~ msgstr "Lisää:" - -#~ msgid "Stop notifications" -#~ msgstr "Kytke ilmoitukset pois päältä" - -#~ msgid "Start notifications" -#~ msgstr "Kytke ilmoitukset päälle" - -#~ msgid "" -#~ "This question already has an accepted answer.Sorry but this question has " -#~ "reached the limit of accepted answers." -#~ msgstr "" -#~ "Tähän kysymykseen on jo hyväksytty vastaus.Tähän kysymykseen on jo " -#~ "maksimimäärä hyväksyttyjä vastauksia." - -#~ msgid "karma history" -#~ msgstr "arvostushistoria" - -#~ msgid "Notifications are now enabled" -#~ msgstr "Ilmoitukset ovat nyt käytössä" - -#~ msgid "Notifications are now disabled" -#~ msgstr "Ilmoitukset kytketty pois" - -#~ msgid "Sorry, your Facebook session has expired, please try again" -#~ msgstr "Facebook-kirjautumisesi aikaraja on tullut täyteen, yritä uudelleen" - -#~ msgid "" -#~ "The authentication with Facebook connect failed due to an invalid " -#~ "signature" -#~ msgstr "" -#~ "Facebook-kirjautuminen epäonnistui viallisen allekirjoituksen vuoksi" - -#~ msgid "" -#~ "The authentication with Facebook connect failed, cannot find " -#~ "authentication tokens" -#~ msgstr "" -#~ "Facebook-kirjautuminen epäonnistui, kirjautumistunnuksia ei löytynyt" diff --git a/locale/fr/.svn/all-wcprops b/locale/fr/.svn/all-wcprops deleted file mode 100644 index 2af29bcab8072ff5b43add17b4d8778d240f1c00..0000000000000000000000000000000000000000 --- a/locale/fr/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fr -END diff --git a/locale/fr/.svn/entries b/locale/fr/.svn/entries deleted file mode 100644 index ecd210f6aaf3f37c25d3937ef094167bb7ca98d5..0000000000000000000000000000000000000000 --- a/locale/fr/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/fr -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/fr/LC_MESSAGES/.svn/all-wcprops b/locale/fr/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index e1ab826558a52d28c9cd581debce54fdbd9f1cad..0000000000000000000000000000000000000000 --- a/locale/fr/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fr/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fr/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/fr/LC_MESSAGES/django.po -END diff --git a/locale/fr/LC_MESSAGES/.svn/entries b/locale/fr/LC_MESSAGES/.svn/entries deleted file mode 100644 index ce421dde72231d6a3457fafad7737ffa671364c2..0000000000000000000000000000000000000000 --- a/locale/fr/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/fr/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.441559Z -0df0c28a45cc3cf881df123cb7113a38 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -378 - -django.po -file - - - - -2012-06-22T20:34:48.441559Z -87c19356d4610c1782626343ee23c912 -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -229214 - diff --git a/locale/fr/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/fr/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/fr/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/fr/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/fr/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 763306328ae809f1d6a6ec53ba355044ea7748a9..0000000000000000000000000000000000000000 Binary files a/locale/fr/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/fr/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/fr/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 3ec35f5be4d15313269ec5262588530149ce22fe..0000000000000000000000000000000000000000 --- a/locale/fr/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,8563 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:16-0700\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "" - -#: forum/registry.py:28 -msgid "logout" -msgstr "" - -#: forum/registry.py:28 -msgid "login" -msgstr "" - -#: forum/registry.py:41 -msgid "administration" -msgstr "" - -#: forum/registry.py:54 -msgid "contact" -msgstr "" - -#: forum/registry.py:57 -msgid "support" -msgstr "" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "" - -#: forum/urls.py:71 -msgid "convert_comment/" -msgstr "" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -msgid "answer_link/" -msgstr "" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -msgid "user/" -msgstr "" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "" - -#: forum/urls.py:85 -msgid "convert_to_question/" -msgstr "" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -msgid "award/" -msgstr "" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" - -#: forum/actions/node.py:225 -#, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" - -#: forum/actions/node.py:231 -msgid "converted to question" -msgstr "" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -msgid "validated e-mail" -msgstr "" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -msgid "gave reputation points" -msgstr "" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "" -msgstr[1] "" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -msgid "post" -msgstr "" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -msgid "Users an accept own answer" -msgstr "" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -msgid "Site 'from' Email Address" -msgstr "" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -msgid "Site 'reply-to' Email Address" -msgstr "" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -msgid "Email Subject Prefix" -msgstr "" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -msgid "Minimum reputation to convert comments to answers" -msgstr "" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -msgid "Minimum reputation to convert answers to questions" -msgstr "" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -msgid "Use canned comments" -msgstr "" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -msgid "Canned comments" -msgstr "" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Sitemap settings" -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -msgid "Questions Sitemap Limit" -msgstr "" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -msgid "Allow negative reputation" -msgstr "" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -msgid "Truncate long usernames" -msgstr "" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -msgid "Show user accept rate" -msgstr "" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -msgid "Freeze accept rate" -msgstr "" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -msgid "Add reputation to max votes per day" -msgstr "" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -msgid "Use canned comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -msgid "Convert comment to answer" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:29 -msgid "Convert comment to question" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -msgid "Convert to question" -msgstr "" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -msgid "Permanent link" -msgstr "" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -msgid "Site Administration" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -msgid "Create User" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -msgid "Quick creation of a new user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -msgid "Delete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "" - -#: forum/skins/default/templates/users/info.html:42 -msgid "Administrator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:45 -msgid "Moderator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -msgid "Users Online" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "" - -#: forum/skins/nuxeo/templates/question.html:145 -#, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:120 -#, python-format -msgid "%s has one accepted answer" -msgstr "" - -#: forum/templatetags/extra_tags.py:126 -#, python-format -msgid "%s has no accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:132 -msgid "accept rate" -msgstr "" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hour ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "" - -#: forum/templatetags/node_tags.py:175 -msgid "convert to question" -msgstr "" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -msgid "Create new user" -msgstr "" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:347 -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -msgid "convert comments to answers" -msgstr "" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -msgid "award" -msgstr "" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "" - -#: forum/views/users.py:40 -msgid "last" -msgstr "" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "" - -#: forum/views/writers.py:129 -msgid "Converted to question" -msgstr "" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "" - -#: forum_modules/default_badges/badges.py:326 -msgid "Validated Email" -msgstr "" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "Updater Settings" -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "updater/" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -msgid "updater" -msgstr "" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" diff --git a/locale/it/.svn/all-wcprops b/locale/it/.svn/all-wcprops deleted file mode 100644 index 9eca46ddbba30fbe65e1371762f5bb2e17528182..0000000000000000000000000000000000000000 --- a/locale/it/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en -END diff --git a/locale/it/.svn/entries b/locale/it/.svn/entries deleted file mode 100644 index a33fb326994725701d3f5f87c2f768dc348b6eec..0000000000000000000000000000000000000000 --- a/locale/it/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/en -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/it/LC_MESSAGES/.svn/all-wcprops b/locale/it/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index da141bdd96038df52c558738408fde510618cfa0..0000000000000000000000000000000000000000 --- a/locale/it/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/en/LC_MESSAGES/django.po -END diff --git a/locale/it/LC_MESSAGES/.svn/entries b/locale/it/LC_MESSAGES/.svn/entries deleted file mode 100644 index a1e12fde85dcbca6e4f657c827c453fdba57e750..0000000000000000000000000000000000000000 --- a/locale/it/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/en/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.141709Z -7e18bb38148873dc31bb9b0f45a0ac52 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -6639 - -django.po -file - - - - -2012-06-22T20:34:48.141709Z -3151183b7f3272c228b091094876836b -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -263851 - diff --git a/locale/it/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/it/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/it/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/it/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/it/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 09d452145ce7346a30b0a33d4551c96b10d736ea..0000000000000000000000000000000000000000 Binary files a/locale/it/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/it/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/it/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index a7a9d32e69583b55a8cd3cf4a33c6714b6844b3d..0000000000000000000000000000000000000000 --- a/locale/it/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9380 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:15-0700\n" -"PO-Revision-Date: 2010-05-14 15:33\n" -"Last-Translator: Rick Ross <rick@dzone.com>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Translated-Using: django-rosetta 0.5.3\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "" - -#: forum/feed.py:90 -#, fuzzy, python-format -msgid "Answers to: %s" -msgstr "Tips" - -#: forum/feed.py:107 -#, fuzzy, python-format -msgid "Answer by %s" -msgstr "Tips" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "" - -#: forum/registry.py:28 -msgid "logout" -msgstr "" - -#: forum/registry.py:28 -msgid "login" -msgstr "" - -#: forum/registry.py:41 -msgid "administration" -msgstr "" - -#: forum/registry.py:54 -msgid "contact" -msgstr "" - -#: forum/registry.py:57 -msgid "support" -msgstr "" - -#: forum/registry.py:58 -#, fuzzy -msgid "privacy" -msgstr "privacy" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "" - -#: forum/registry.py:83 -#, fuzzy -msgid "authentication settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/registry.py:90 -#, fuzzy -msgid "email notification settings" -msgstr "Verification Email from Q&A forum" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -#, fuzzy -msgid "withdraw suspension" -msgstr "Post Your Answer" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "Frequently Asked Questions" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -#, fuzzy -msgid "related_questions/" -msgstr "Post Your Answer" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -#, fuzzy -msgid "like_comment/" -msgstr "answer comment" - -#: forum/urls.py:69 -#, fuzzy -msgid "comment/" -msgstr "post a comment" - -#: forum/urls.py:70 -#, fuzzy -msgid "delete_comment/" -msgstr "post a comment" - -#: forum/urls.py:71 -#, fuzzy -msgid "convert_comment/" -msgstr "post a comment" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -#, fuzzy -msgid "answer_link/" -msgstr "Tips" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -msgid "user/" -msgstr "" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -#, fuzzy -msgid "convert/" -msgstr "post a comment" - -#: forum/urls.py:85 -#, fuzzy -msgid "convert_to_question/" -msgstr "Post Your Answer" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -#, fuzzy -msgid "award/" -msgstr "all badges" - -#: forum/urls.py:105 -#, fuzzy -msgid "suspend/" -msgstr "You can safely re-use the same login for all OpenID-enabled websites." - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -#, fuzzy -msgid "reputation/" -msgstr "karma" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -#, fuzzy -msgid "contact/" -msgstr "post a comment" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -#, fuzzy -msgid "settings/" -msgstr "karma" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "" - -#: forum/actions/node.py:34 -#, fuzzy, python-format -msgid "%(user)s asked %(question)s" -msgstr "unanswered" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "" - -#: forum/actions/node.py:55 -#, fuzzy, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" -"<div class=\"questions-count\">%(num_q)s</div>questions <strong>without " -"accepted answers</strong>" - -#: forum/actions/node.py:62 -#, fuzzy -msgid "commented" -msgstr "post a comment" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum/actions/node.py:225 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum/actions/node.py:231 -#, fuzzy -msgid "converted to question" -msgstr "list of all questions" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -#, fuzzy -msgid "validated e-mail" -msgstr "How to validate email and why?" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -#, fuzzy -msgid "gave reputation points" -msgstr "karma" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "" -msgstr[1] "" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -#, fuzzy -msgid "was awarded" -msgstr "all badges" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -#, fuzzy -msgid "Markdown" -msgstr "Markdown basics" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -#, fuzzy -msgid "Page Content" -msgstr "years old" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -#, fuzzy -msgid "Allow comments" -msgstr "post a comment" - -#: forum/forms/admin.py:99 -#, fuzzy -msgid "send validation email" -msgstr "Stop Email" - -#: forum/forms/admin.py:104 -#, fuzzy -msgid "email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/forms/auth.py:21 -#, fuzzy -msgid "Your account email" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "Choose screen name" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "Password" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "Password <i>(please retype)</i>" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "Title" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "Please enter a descriptive title for your question" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "Tags" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -#, fuzzy -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question containing " -"<strong><span class=\"darkred\">%(searchtitle)s</span></strong></p>" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, fuzzy, python-format -msgid "on %(link)s" -msgstr "link" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -#, fuzzy -msgid "comment" -msgstr "post a comment" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -msgid "post" -msgstr "" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "" - -#: forum/models/user.py:248 forum/views/readers.py:147 -#, fuzzy -msgid "answered-by" -msgstr "answer accepted" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -#, fuzzy -msgid "Accepting answers" -msgstr "oldest" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -#, fuzzy -msgid "Disallow answers to be accepted" -msgstr "answer accepted" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -#, fuzzy -msgid "Users an accept own answer" -msgstr "oldest" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -#, fuzzy -msgid "Basic settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -#, fuzzy -msgid "Your site main logo." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -#, fuzzy -msgid "Application description" -msgstr "" -"Gold badge is the highest award in this community. To obtain it have to show " -"profound knowledge and ability in addition to your active participation." - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -#, fuzzy -msgid "Site 'from' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -#, fuzzy -msgid "Email Subject Prefix" -msgstr "Welcome to the Q&A forum" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -#, fuzzy -msgid "Limit tag creation" -msgstr "karma" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -#, fuzzy -msgid "Empty question content" -msgstr "question comment" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -#, fuzzy -msgid "Change this:" -msgstr "Change Email" - -#: forum/settings/minrep.py:4 -#, fuzzy -msgid "Minimum reputation config" -msgstr "karma" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -#, fuzzy -msgid "Show captcha if user with less reputation than" -msgstr "Graph of user karma" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -#, fuzzy -msgid "Minimum reputation to vote down" -msgstr "user karma" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -#, fuzzy -msgid "Minimum reputation to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -#, fuzzy -msgid "Minimum reputation to like a comment" -msgstr "user karma" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -#, fuzzy -msgid "Minimum reputation to create tags" -msgstr "user karma" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -#, fuzzy -msgid "Minimum reputation to mark post as community wiki" -msgstr "user karma" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -#, fuzzy -msgid "Minimum reputation to delete comments" -msgstr "user karma" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -#, fuzzy -msgid "Minimum reputation to convert answers to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -#, fuzzy -msgid "Minimum reputation to convert comments to answers" -msgstr "user karma" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -#, fuzzy -msgid "Minimum reputation to convert answers to questions" -msgstr "user karma" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -#, fuzzy -msgid "Moderation settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "post a comment" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "post a comment" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -#, fuzzy -msgid "Initial reputation" -msgstr "karma" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -#, fuzzy -msgid "Sitemap settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -#, fuzzy -msgid "Questions Sitemap Limit" -msgstr "Tags" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -#, fuzzy -msgid "Your custom footer." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -#, fuzzy -msgid "Users settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "karma" - -#: forum/settings/users.py:11 -#, fuzzy -msgid "Check if you want to allow negative user reputations in the community." -msgstr "user karma" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "update" -msgstr "Last updated" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -#, fuzzy -msgid "Disabled usernames" -msgstr "Choose screen name" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -#, fuzzy -msgid "Truncate long usernames" -msgstr "Choose screen name" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -#, fuzzy -msgid "Show user accept rate" -msgstr "oldest" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -#, fuzzy -msgid "Freeze accept rate" -msgstr "oldest" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -#, fuzzy -msgid "Force unique email" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "ask questions" -msgstr "Ask Your Question" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "provide answers" -msgstr "oldest" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "make comments" -msgstr "post a comment" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "report posts" -msgstr "karma" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -#, fuzzy -msgid "Gravatar rating" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -#, fuzzy -msgid "Gravatar default" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -#, fuzzy -msgid "Recent awards block size" -msgstr "Recent badges" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -#, fuzzy -msgid "Limit related tags block" -msgstr "Tags" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -#, fuzzy -msgid "Add reputation to max votes per day" -msgstr "user karma" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "Save Edit" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "Tips" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "Ask a Question" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "Login/Signup to Post" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "Ask Your Question" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" -"In addition to the reputation earned through asking useful questions and " -"providing correct answers, you'll be recognised with badges to recognise " -"actions that benefit the community." - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -#, fuzzy -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" -"Currently badges differ only by their level: <strong>gold</strong>, " -"<strong>silver</strong> and <strong>bronze</strong> (their meanings are " -"described on the right). In the future there will be many types of badges at " -"each level. <strong>Please give us your <a href='%(feedback_faq_url)" -"s'>feedback</a></strong> - what kinds of badges would you like to see and " -"suggest the activity for which those badges might be awarded." - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "Badge levels" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "Gold" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "Gold badges are rare. You'll need to work hard to earn one of these." - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "Silver" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "Silver badges aren't common. They take work and attention to earn." - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "Bronze" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "" -"Bronze badges recognise active participation in the site. Wear them with " -"pride!" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "Ask a Question" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "Search" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "Questions" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "Users" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "Welcome to " - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" -"Clicking <strong>Logout</strong> will log you out from the forum, but will " -"not sign you off from your OpenID provider.</p><p>If you wish to sign off " -"completely - please make sure to log out from your OpenID provider as well." - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "Logout Now" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -#, fuzzy -msgid "Markdown Help" -msgstr "Markdown basics" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -#, fuzzy -msgid "Markdown Syntax" -msgstr "Markdown basics" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" -"Respecting users privacy is an important core principle of this Q&A " -"forum. Information on this page details how this forum protects your " -"privacy, and what type of information is collected." - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" -"Information on question views, revisions of questions and answers - both " -"times and content are recorded for each user in order to correctly count " -"number of views, maintain data integrity and report relevant updates." - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" -"Members of this community may choose to display personally identifiable " -"information in their profiles. Forum will never display such information " -"without a request from the user." - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" -"None of the data that is not openly shown on the forum by the choice of the " -"user is shared with any third party." - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" -"Forum software relies on the internet cookie technology to keep track of " -"user sessions. Cookies must be enabled in your browser so that forum can " -"work for you." - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" -"These policies may be adjusted to improve protection of user's privacy. " -"Whenever such changes occur, users will be notified via the internal " -"messaging system. " - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" - -#: forum/skins/default/templates/question.html:149 -#, fuzzy, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "newest" -msgstr[1] "newest" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "Tags" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "Asked" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "Seen" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "Last updated" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "How to Ask" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -#, fuzzy -msgid "Follow this question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -#, fuzzy -msgid "By Email" -msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:30 -#, fuzzy -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" -"<span class='strong'>Here</span> (once you log in) you will be able to sign " -"up for the periodic email updates about this question." - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -#, fuzzy -msgid "subscribe to answers" -msgstr "oldest" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -#, fuzzy -msgid "Answers" -msgstr "Tips" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "subscribe to comments and answers" -msgstr "oldest" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "Answers and Comments" -msgstr "post a comment" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" -"<span class='strong'>To change your password</span> please fill out and " -"submit this form" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -#, fuzzy -msgid "Create password" -msgstr "Password <i>(please retype)</i>" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "New user signup" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "New user signup" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "Signup" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -#, fuzzy -msgid "Validate my email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "User Login" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "With the OpenID you don't need to create new username and password." - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "You can safely re-use the same login for all OpenID-enabled websites." - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" -"There are > 160,000,000 OpenID account in use. Over 10,000 sites are OpenID-" -"enabled." - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "OpenID is based on an open standard, supported by many organizations." - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -#, fuzzy -msgid "Go to your account" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -#, fuzzy -msgid "Send link" -msgstr "link" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -#, fuzzy -msgid " comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -#, fuzzy -msgid "Edit comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -#, fuzzy -msgid "Delete comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -#, fuzzy -msgid "Convert comment to answer" -msgstr "oldest" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -#, fuzzy -msgid "just now" -msgstr "Logout Now" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "this is a great comment" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "add a comment" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -#, fuzzy -msgid "Place the comment under:" -msgstr "post a comment" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -#, fuzzy -msgid "Convert to question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -#, fuzzy -msgid "Permanent link" -msgstr "link" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "This post is useful (click again to undo)" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "This post is not useful (click again to undo)" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, fuzzy, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, fuzzy, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, fuzzy, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, fuzzy, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, fuzzy, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, fuzzy, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, fuzzy, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, fuzzy, python-format -msgid "the question %(question_link)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, fuzzy, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, fuzzy, python-format -msgid "the question \"%(question_title)s\"" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -msgid "Site Administration" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -#, fuzzy -msgid "Create User" -msgstr "Password <i>(please retype)</i>" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -#, fuzzy -msgid "Quick creation of a new user" -msgstr "answer" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -#, fuzzy -msgid "Welcome," -msgstr "Welcome to Q&A forum" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -#, fuzzy -msgid "Log out" -msgstr "Logout Now" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -#, fuzzy -msgid "Custom Pages" -msgstr "Tags" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -#, fuzzy -msgid "Adjust settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -#, fuzzy -msgid "Moderation" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -#, fuzzy -msgid "newer users" -msgstr "newest" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -#, fuzzy -msgid "older users" -msgstr "oldest" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -#, fuzzy -msgid "Email" -msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -#, fuzzy -msgid "Reputation:" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -#, fuzzy -msgid "Reputation" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -#, fuzzy -msgid "Possible fake accounts" -msgstr "Signup" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -#, fuzzy -msgid "out of" -msgstr "Logout Now" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -#, fuzzy -msgid "Node manager" -msgstr "oldest" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -#, fuzzy -msgid "Delete completely" -msgstr "post a comment" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -#, fuzzy -msgid "Close (questions only)" -msgstr "<strong>Newest</strong> questions are shown first." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "post a comment" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "Tags" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "Tagged questions" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -#, fuzzy -msgid "All Questions" -msgstr "Tags" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -#, fuzzy -msgid "Markdown Basics" -msgstr "Markdown basics" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "Recent badges" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "all badges" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "tags" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -#, fuzzy -msgid "gravatar" -msgstr "What is gravatar?" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "karma" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "" - -#: forum/skins/default/templates/users/info.html:42 -msgid "Administrator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:45 -#, fuzzy -msgid "Moderator" -msgstr "karma" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "member since" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "years old" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -#, fuzzy -msgid "User tools" -msgstr "User login" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -#, fuzzy -msgid "Users Online" -msgstr "User login" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "Badges" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question without an " -"accepted answer</p>" -msgstr[1] "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>questions without an " -"accepted answer</p>" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -"\n" -"(one comment)" -msgstr[1] "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -#, fuzzy -msgid "Notifications and subscription settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -#, fuzzy -msgid "A new question is posted" -msgstr "Tips" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -#, fuzzy -msgid "Questions I view" -msgstr "Tags" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -#, fuzzy -msgid "An answer is posted" -msgstr "Tips" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -#, fuzzy -msgid "An answer is accepted" -msgstr "answer accepted" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "newest" -msgstr[1] "newest" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, fuzzy, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question with title " -"containing <strong><span class=\"darkred\">%(searchtitle)s</span></strong></" -"p>" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "sorry, file uploading requires karma >60" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "karma" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:120 -#, fuzzy, python-format -msgid "%s has one accepted answer" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:126 -#, fuzzy, python-format -msgid "%s has no accepted answers" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:132 -#, fuzzy -msgid "accept rate" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hour ago" -msgstr "tags" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "link" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "" - -#: forum/templatetags/node_tags.py:156 -#, fuzzy -msgid "see revisions" -msgstr "unanswered" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:171 -#, fuzzy -msgid "convert to comment" -msgstr "post a comment" - -#: forum/templatetags/node_tags.py:175 -#, fuzzy -msgid "convert to question" -msgstr "Post Your Answer" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "" - -#: forum/views/admin.py:141 -#, fuzzy -msgid "Questions Graph" -msgstr "Tags" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "Create new user" -msgstr "Password <i>(please retype)</i>" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -#, fuzzy -msgid "New password set" -msgstr "Recover password" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -#, fuzzy -msgid "save it" -msgstr "years old" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -#, fuzzy -msgid "like comments" -msgstr "post a comment" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -#, fuzzy -msgid "delete comments" -msgstr "post a comment" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -#: forum/views/commands.py:267 -#, fuzzy -msgid "edit comments" -msgstr "post a comment" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -#, fuzzy -msgid "accept answers" -msgstr "oldest" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -"(one comment)" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -#, fuzzy -msgid "close questions" -msgstr "list of all questions" - -#: forum/views/commands.py:399 -#, fuzzy -msgid "reopen questions" -msgstr "Tips" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -#, fuzzy -msgid "convert answers to comments" -msgstr "answer comment" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -#, fuzzy -msgid "Question" -msgstr "Tags" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -#, fuzzy -msgid "convert comments to answers" -msgstr "oldest" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -#, fuzzy -msgid "award" -msgstr "all badges" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "questions" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "<strong>recently asked</strong> questions" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "<strong>active</strong> questions in the last 24 hours</strong>" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "" - -#: forum/views/readers.py:42 -#, fuzzy -msgid "most <strong>voted</strong> questions" -msgstr " " - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "oldest" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "newest" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "most voted" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "Unanswered" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "" - -#: forum/views/readers.py:91 -#, fuzzy -msgid "Unanswered Questions" -msgstr "unanswered" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -#: forum/views/readers.py:126 -#, fuzzy, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "Tags" - -#: forum/views/readers.py:146 -#, fuzzy, python-format -msgid "Questions asked by %s" -msgstr "Asked" - -#: forum/views/readers.py:149 -#, fuzzy, python-format -msgid "Questions answered by %s" -msgstr "answer" - -#: forum/views/readers.py:156 -#, fuzzy, python-format -msgid "Questions you subscribed %s" -msgstr "Tags" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -#, fuzzy -msgid "most relevant questions" -msgstr "ask a question relevant to the CNPROG community" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -#, fuzzy -msgid "sorted by reputation" -msgstr "karma" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "" - -#: forum/views/users.py:39 -#, fuzzy -msgid "newest members" -msgstr "newest" - -#: forum/views/users.py:40 -msgid "last" -msgstr "" - -#: forum/views/users.py:40 -#, fuzzy -msgid "oldest members" -msgstr "oldest" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "" - -#: forum/views/users.py:41 -#, fuzzy -msgid "sorted by username" -msgstr "Choose screen name" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -#, fuzzy -msgid "Profile updated." -msgstr "Last updated" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "karma history" - -#: forum/views/users.py:367 -#, fuzzy -msgid "graph of user karma" -msgstr "Graph of user karma" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -#, fuzzy -msgid "subscription" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "" - -#: forum/views/users.py:428 -#, fuzzy -msgid "New subscription settings are now saved" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "sorry, file uploading requires karma >60" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -#, fuzzy -msgid "validate your email" -msgstr "How to validate email and why?" - -#: forum/views/writers.py:129 -#, fuzzy -msgid "Converted to question" -msgstr "Post Your Answer" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -#, fuzzy -msgid "Minimum reputation to not have your posts checked" -msgstr "user karma" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "" - -#: forum_modules/default_badges/badges.py:24 -#, fuzzy -msgid "Popular Question" -msgstr "Ask Your Question" - -#: forum_modules/default_badges/badges.py:30 -#, fuzzy -msgid "Notable Question" -msgstr "list of all questions" - -#: forum_modules/default_badges/badges.py:35 -#, fuzzy -msgid "Famous Question" -msgstr "Ask Your Question" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:58 -#, fuzzy -msgid "Nice Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:63 -#, fuzzy -msgid "Good Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:68 -#, fuzzy -msgid "Great Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:77 -#, fuzzy, python-format -msgid "Answer voted up %s times" -msgstr "Post Your Answer" - -#: forum_modules/default_badges/badges.py:81 -#, fuzzy -msgid "Nice Answer" -msgstr "oldest" - -#: forum_modules/default_badges/badges.py:86 -#, fuzzy -msgid "Good Answer" -msgstr "oldest" - -#: forum_modules/default_badges/badges.py:91 -#, fuzzy -msgid "Great Answer" -msgstr "oldest" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "" - -#: forum_modules/default_badges/badges.py:108 -#, fuzzy -msgid "Favorite Question" -msgstr "Post Your Answer" - -#: forum_modules/default_badges/badges.py:113 -#, fuzzy -msgid "Stellar Question" -msgstr "Post Your Answer" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, fuzzy, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "" - -#: forum_modules/default_badges/badges.py:326 -#, fuzzy -msgid "Validated Email" -msgstr "How to validate email and why?" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -#, fuzzy -msgid "Nice Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -#, fuzzy -msgid "Good Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -#, fuzzy -msgid "Great Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -#, fuzzy -msgid "Awards" -msgstr "all badges" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -#, fuzzy -msgid "Enter your local user name and password" -msgstr "" -"<span class='big strong'>Enter your CNPROG login and password</span><br/" -"><span class='grey'>(or select your OpenID provider above)</span>" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:16 -#, fuzzy -msgid "Password" -msgstr "Send me a new password" - -#: forum_modules/localauth/templates/loginform.html:27 -#, fuzzy -msgid "Create account" -msgstr "Signup" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "Updater Settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -#, fuzzy -msgid "updater/" -msgstr "Last updated" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -#, fuzzy -msgid "updater" -msgstr "Last updated" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" - -#, fuzzy -#~ msgid "You can answer anonymously and then login." -#~ msgstr "" -#~ "<span class='strong big'>Please start posting your answer anonymously</" -#~ "span> - your answer will be saved within the current session and " -#~ "published after you log in or create a new account. Please try to give a " -#~ "<strong>substantial answer</strong>, for discussions, <strong>please use " -#~ "comments</strong> and <strong>please do remember to vote</strong> (after " -#~ "you log in)!" - -#, fuzzy -#~ msgid "Answer your own question only to give an answer." -#~ msgstr "" -#~ "<span class='big strong'>You are welcome to answer your own question</" -#~ "span>, but please make sure to give an <strong>answer</strong>. Remember " -#~ "that you can always <strong>revise your original question</strong>. " -#~ "Please <strong>use comments for discussions</strong> and <strong>please " -#~ "don't forget to vote :)</strong> for the answers that you liked (or " -#~ "perhaps did not like)! " - -#, fuzzy -#~ msgid "Please only give an answer, no discussions." -#~ msgstr "" -#~ "<span class='big strong'>Please try to give a substantial answer</span>. " -#~ "If you wanted to comment on the question or answer, just <strong>use the " -#~ "commenting tool</strong>. Please remember that you can always " -#~ "<strong>revise your answers</strong> - no need to answer the same " -#~ "question twice. Also, please <strong>don't forget to vote</strong> - it " -#~ "really helps to select the best questions and answers!" - -#~ msgid "received award" -#~ msgstr "received badge" - -#, fuzzy -#~ msgid "edited an answer" -#~ msgstr "oldest" - -#, fuzzy -#~ msgid "received badge" -#~ msgstr "received badge" - -#~ msgid "login to post question info" -#~ msgstr "" -#~ "<span class=\"strong big\">You are welcome to start submitting your " -#~ "question anonymously</span>. When you submit the post, you will be " -#~ "redirected to the login/signup page. Your question will be saved in the " -#~ "current session and will be published after you log in. Login/signup " -#~ "process is very simple. Login takes about 30 seconds, initial signup " -#~ "takes a minute or less." - -#~ msgid "" -#~ "must have valid %(email)s to post, \n" -#~ " see %(email_validation_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<span class='strong big'>Looks like your email address, %(email)s has not " -#~ "yet been validated.</span> To post messages you must verify your email, " -#~ "please see <a href='%(email_validation_faq_url)s'>more details here</a>." -#~ "<br>You can submit your question now and validate email after that. Your " -#~ "question will saved as pending meanwhile. " - -#~ msgid "" -#~ "Before asking the question - please make sure to use search to see " -#~ "whether your question has alredy been answered." -#~ msgstr "" -#~ "Before you ask - please make sure to search for a similar question. You " -#~ "can search questions by their title or tags." - -#~ msgid "What questions should I avoid asking?" -#~ msgstr "What kinds of questions should be avoided?" - -#~ msgid "" -#~ "is a Q&A site, not a discussion group. Therefore - please avoid having " -#~ "discussions in your answers, comment facility allows some space for brief " -#~ "discussions." -#~ msgstr "" -#~ "is a <strong>question and answer</strong> site - <strong>it is not a " -#~ "discussion group</strong>. Please avoid holding debates in your answers " -#~ "as they tend to dilute the essense of questions and answers. For the " -#~ "brief discussions please use commenting facility." - -#~ msgid "" -#~ "The reputation system allows users earn the authorization to perform a " -#~ "variety of moderation tasks." -#~ msgstr "" -#~ "Karma system allows users to earn rights to perform a variety of " -#~ "moderation tasks" - -#~ msgid "How does reputation system work?" -#~ msgstr "How does karma system work?" - -#~ msgid "Rep system summary" -#~ msgstr "" -#~ "When a question or answer is upvoted, the user who posted them will gain " -#~ "some points, which are called \"karma points\". These points serve as a " -#~ "rough measure of the community trust to him/her. Various moderation tasks " -#~ "are gradually assigned to the users based on those points." - -#~ msgid "" -#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)" -#~ "s" -#~ msgstr "" -#~ "<form style='margin:0;padding:0;' action='%(send_email_key_url)" -#~ "s'><p><span class=\"bigger strong\">How?</span> If you have just set or " -#~ "changed your email address - <strong>check your email and click the " -#~ "included link</strong>.<br>The link contains a key generated specifically " -#~ "for you. You can also <button style='display:inline' " -#~ "type='submit'><strong>get a new key</strong></button> and check your " -#~ "email again.</p></form><span class=\"bigger strong\">Why?</span> Email " -#~ "validation is required to make sure that <strong>only you can post " -#~ "messages</strong> on your behalf and to <strong>minimize spam</strong> " -#~ "posts.<br>With email you can <strong>subscribe for updates</strong> on " -#~ "the most interesting questions. Also, when you sign up for the first time " -#~ "- create a unique <a href='%(gravatar_faq_url)s'><strong>gravatar</" -#~ "strong></a> personal image.</p>" - -#~ msgid "" -#~ "Please ask your question at %(ask_question_url)s, help make our community " -#~ "better!" -#~ msgstr "" -#~ "Please <a href='%(ask_question_url)s'>ask</a> your question, help make " -#~ "our community better!" - -#~ msgid "question tips" -#~ msgstr "Tips" - -#~ msgid "please try provide enough details" -#~ msgstr "provide enough details" - -#~ msgid "Screen name label" -#~ msgstr "<strong>Screen Name</strong> (<i>will be shown to others</i>)" - -#~ msgid "Email address label" -#~ msgstr "" -#~ "<strong>Email Address</strong> (<i>will <strong>not</strong> be shared " -#~ "with anyone, must be valid</i>)" - -#~ msgid "receive updates motivational blurb" -#~ msgstr "" -#~ "<strong>Receive forum updates by email</strong> - this will help our " -#~ "community grow and become more useful.<br/>By default <span " -#~ "class='orange'>Q&A</span> forum sends up to <strong>one email digest " -#~ "per week</strong> - only when there is anything new.<br/>If you like, " -#~ "please adjust this now or any time later from your user account." - -#, fuzzy -#~ msgid "" -#~ "Sincerely,<br />\n" -#~ " Forum Administrator" -#~ msgstr "" -#~ "Sincerely,\n" -#~ "Q&A Forum Administrator" - -#~ msgid "Click to sign in through any of these services." -#~ msgstr "" -#~ "<p><span class=\"big strong\">Please select your favorite login method " -#~ "below.</span></p><p><font color=\"gray\">External login services use <a " -#~ "href=\"http://openid.net\"><b>OpenID</b></a> technology, where your " -#~ "password always stays confidential between you and your login provider " -#~ "and you don't have to remember another one. CNPROG option requires your " -#~ "login name and password entered here.</font></p>" - -#~ msgid "Traditional signup info" -#~ msgstr "" -#~ "<span class='strong big'>If you prefer, create your forum login name and " -#~ "password here. However</span>, please keep in mind that we also support " -#~ "<strong>OpenID</strong> login method. With <strong>OpenID</strong> you " -#~ "can simply reuse your external login (e.g. Gmail or AOL) without ever " -#~ "sharing your login details with anyone and having to remember yet another " -#~ "password." - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " %(comment_count)s new comment" -#~ "%(comment_count_pluralize)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(one comment)" - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " Posted by %(author_name)s in %(question_time)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" - -#~ msgid "avatar, see %(gravatar_faq_url)s" -#~ msgstr "<a href='%(gravatar_faq_url)s'>gravatar</a>" - -#, fuzzy -#~ msgid "Questions I comment" -#~ msgstr "question comment" - -#~ msgid "casted votes" -#~ msgstr "votes" - -#~ msgid "Questions sorted by <strong>number of responses</strong>." -#~ msgstr "Questions sorted by the <strong>number of answers</strong>." - -#~ msgid "profile - user reputation" -#~ msgstr "Profile - User's Karma" - -#, fuzzy -#~ msgid "profile - subscriptions" -#~ msgstr "Profile - User's Karma" - -#~ msgid "email update message subject" -#~ msgstr "news from Q&A forum" - -#~ msgid "%(name)s, this is an update message header for a question" -#~ msgid_plural "" -#~ "%(name)s, this is an update message header for %(num)d questions" -#~ msgstr[0] "" -#~ "<p>Dear %(name)s,</p></p>The following question has been updated on the " -#~ "Q&A forum:</p>" -#~ msgstr[1] "" -#~ "<p>Dear %(name)s,</p><p>The following %(num)d questions have been updated " -#~ "on the Q&A forum:</p>" - -#~ msgid "" -#~ "go to %(link)s to change frequency of email updates or %(email)s " -#~ "administrator" -#~ msgstr "" -#~ "<p>Please remember that you can always <a href='%(link)s'>adjust</a> " -#~ "frequency of the email updates or turn them off entirely.<br/>If you " -#~ "believe that this message was sent in an error, please email about it the " -#~ "forum administrator at %(email)s.</p><p>Sincerely,</p><p>Your friendly " -#~ "Q&A forum server.</p>" - -#~ msgid "Account: change password" -#~ msgstr "Change your password" - -#~ msgid "list of unanswered questions" -#~ msgstr "unanswered questions" - -#~ msgid "Notify me once a day when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> once a day by email when there are any new " -#~ "answers or updates" - -#~ msgid "Notify me weekly when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> weekly when there are any new answers or " -#~ "updates" - -#~ msgid "" -#~ "\n" -#~ " You can always adjust frequency of email updates from " -#~ "your %(profile_url)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(note: you can always <a href='%(profile_url)s?" -#~ "sort=email_subscriptions'>adjust frequency</a> of email updates)" - -#~ msgid "Most recently answered ones are shown first." -#~ msgstr "<strong>Most recently answered</strong> questions are shown first." - -#~ msgid "change %(email)s info" -#~ msgstr "" -#~ "<span class=\"strong big\">Enter your new email into the box below</span> " -#~ "if you'd like to use another email for <strong>update subscriptions</" -#~ "strong>.<br>Currently you are using <strong>%(email)s</strong>" - -#~ msgid "here is why email is required, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<span class='strong big'>Please enter your email address in the box below." -#~ "</span> Valid email address is required on this Q&A forum. If you " -#~ "like, you can <strong>receive updates</strong> on interesting questions " -#~ "or entire forum via email. Also, your email is used to create a unique <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for your " -#~ "account. Email addresses are never shown or otherwise shared with anybody " -#~ "else." - -#~ msgid "validate %(email)s info or go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">An email with a validation link has been sent " -#~ "to %(email)s.</span> Please <strong>follow the emailed link</strong> with " -#~ "your web browser. Email validation is necessary to help insure the proper " -#~ "use of email on <span class=\"orange\">Q&A</span>. If you would like " -#~ "to use <strong>another email</strong>, please <a href='%(change_email_url)" -#~ "s'><strong>change it again</strong></a>." - -#~ msgid "old %(email)s kept, if you like go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">Your email address %(email)s has not been " -#~ "changed.</span> If you decide to change it later - you can always do it " -#~ "by editing it in your user profile or by using the <a " -#~ "href='%(change_email_url)s'><strong>previous form</strong></a> again." - -#~ msgid "your current %(email)s can be used for this" -#~ msgstr "" -#~ "<span class='big strong'>Your email address is now set to %(email)s.</" -#~ "span> Updates on the questions that you like most will be sent to this " -#~ "address. Email notifications are sent once a day or less frequently - " -#~ "only when there are any news." - -#~ msgid "thanks for verifying email" -#~ msgstr "" -#~ "<span class=\"big strong\">Thank you for verifying your email!</span> Now " -#~ "you can <strong>ask</strong> and <strong>answer</strong> questions. Also " -#~ "if you find a very interesting question you can <strong>subscribe for the " -#~ "updates</strong> - then will be notified about changes <strong>once a " -#~ "day</strong> or less frequently." - -#~ msgid "email key not sent" -#~ msgstr "Validation email not sent" - -#~ msgid "email key not sent %(email)s change email here %(change_link)s" -#~ msgstr "" -#~ "<span class='big strong'>Your current email address %(email)s has been " -#~ "validated before</span> so the new key was not sent. You can <a " -#~ "href='%(change_link)s'>change</a> email used for update subscriptions if " -#~ "necessary." - -#~ msgid "register new %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span> Please create your <strong>screen name</" -#~ "strong> and save your <strong>email</strong> address. Saved email address " -#~ "will let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "" -#~ "%(username)s already exists, choose another name for \n" -#~ " %(provider)s. Email is required too, see " -#~ "%(gravatar_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<p><span class='strong big'>Oops... looks like screen name %(username)s " -#~ "is already used in another account.</span></p><p>Please choose another " -#~ "screen name to use with your %(provider)s login. Also, a valid email " -#~ "address is required on the <span class='orange'>Q&A</span> forum. " -#~ "Your email is used to create a unique <a href='%(gravatar_faq_url)" -#~ "s'><strong>gravatar</strong></a> image for your account. If you like, you " -#~ "can <strong>receive updates</strong> on the interesting questions or " -#~ "entire forum by email. Email addresses are never shown or otherwise " -#~ "shared with anybody else.</p>" - -#~ msgid "" -#~ "register new external %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span></p><p>You can either keep your <strong>screen " -#~ "name</strong> the same as your %(provider)s login name or choose some " -#~ "other nickname.</p><p>Also, please save a valid <strong>email</strong> " -#~ "address. With the email you can <strong>subscribe for the updates</" -#~ "strong> on the most interesting questions. Email address is also used to " -#~ "create and retrieve your unique avatar image - <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" - -#~ msgid "register new Facebook connect account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "Facebook login.</span> Please create your <strong>screen name</strong> " -#~ "and save your <strong>email</strong> address. Saved email address will " -#~ "let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "password recovery information" -#~ msgstr "" -#~ "<span class='big strong'>Forgot you password? No problems - just get a " -#~ "new one!</span><br/>Please follow the following steps:<br/>• submit " -#~ "your user name below and check your email<br/>• <strong>follow the " -#~ "activation link</strong> for the new password - sent to you by email and " -#~ "login with the suggested password<br/>• at this you might want to " -#~ "change your password to something you can remember better" - -#~ msgid "" -#~ "email explanation how to use new %(password)s for %(username)s\n" -#~ "with the %(key_link)s" -#~ msgstr "" -#~ "To change your password, please follow these steps:\n" -#~ "* visit this link: %(key_link)s\n" -#~ "* login with user name %(username)s and password %(password)s\n" -#~ "* go to your user profile and set the password to something you can " -#~ "remember" - -#~ msgid "" -#~ "\n" -#~ " Your answer to %(title)s %(summary)s will be posted once " -#~ "you log in\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<span class=\"strong big\">Your answer to </span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "" -#~ "Your question \n" -#~ " %(title)s %(summary)s will be posted once you log in\n" -#~ " " -#~ msgstr "" -#~ "<span class=\"strong big\">Your question</span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "Enter your <span id=\"enter_your_what\">Provider user name</span>" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your </span><span id=\"enter_your_what\" " -#~ "class='big strong'>Provider user name</span><br/><span class='grey'>(or " -#~ "select another login method above)</span>" - -#~ msgid "" -#~ "Enter your <a class=\"openid_logo\" href=\"http://openid.net\">OpenID</a> " -#~ "web address" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your <a class=\"openid_logo\" href=" -#~ "\"http://openid.net\">OpenID</a> web address</span><br/><span " -#~ "class='grey'>(or choose another login method above)</span>" - -#~ msgid "subscription saved, %(email)s needs validation, see %(details_url)s" -#~ msgstr "" -#~ "Your subscription is saved, but email address %(email)s needs to be " -#~ "validated, please see <a href='%(details_url)s'>more details here</a>" - -#~ msgid "Incorrect username." -#~ msgstr "sorry, there is no such user name" - -#~ msgid "your email needs to be validated see %(details_url)s" -#~ msgstr "" -#~ "Your email needs to be validated. Please see details <a " -#~ "id='validate_email_alert' href='%(details_url)s'>here</a>." - -#~ msgid "first time greeting with %(url)s" -#~ msgstr "Hello and welcome to OSQA - <a href='%(url)s'>please join us</a>!" - -#~ msgid "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgid_plural "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgstr[0] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" -#~ msgstr[1] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>questions</p>" diff --git a/locale/ja/.svn/all-wcprops b/locale/ja/.svn/all-wcprops deleted file mode 100644 index e08df3de342bcc3103681d56408a5260ab2658e0..0000000000000000000000000000000000000000 --- a/locale/ja/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ja -END diff --git a/locale/ja/.svn/entries b/locale/ja/.svn/entries deleted file mode 100644 index fe458f14779d402305ac441cefc2911dfef52155..0000000000000000000000000000000000000000 --- a/locale/ja/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/ja -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/ja/LC_MESSAGES/.svn/all-wcprops b/locale/ja/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 756d9c98c7a7cd5e052ef6e269ba0826dd5e7439..0000000000000000000000000000000000000000 --- a/locale/ja/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ja/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ja/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ja/LC_MESSAGES/django.po -END diff --git a/locale/ja/LC_MESSAGES/.svn/entries b/locale/ja/LC_MESSAGES/.svn/entries deleted file mode 100644 index 0a7881a6bb2e749f0123e9a9cc6b09d9f29bb3de..0000000000000000000000000000000000000000 --- a/locale/ja/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/ja/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.673443Z -370f75d88b3c2d103ebcd00cfdef9a80 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -143376 - -django.po -file - - - - -2012-06-22T20:34:48.657451Z -1b936cabee983d79b15766ae537fa11a -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -295935 - diff --git a/locale/ja/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/ja/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/ja/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/ja/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/ja/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 1bc3f78378562f62d0bceb07c9e5e77146c54446..0000000000000000000000000000000000000000 Binary files a/locale/ja/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/ja/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/ja/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 8227f71385c8976cbd41e05f5e55ddeb2fceb748..0000000000000000000000000000000000000000 --- a/locale/ja/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,8992 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:16-0700\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "ページ" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "ページサイズ" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "並ã¹æ›¿ãˆ" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "%s ã¸ã®å›žç”" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "%s ã®å›žç”" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "%(pauthor)s ã® %(qora)s ã« %(cauthor)s ãŒã‚³ãƒ¡ãƒ³ãƒˆã—ã¾ã—ãŸ" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "回ç”" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "質å•" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "よãã‚る質å•" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "ã“ã®ã‚µã‚¤ãƒˆã«ã¤ã„ã¦" - -#: forum/registry.py:28 -msgid "logout" -msgstr "ãƒã‚°ã‚¢ã‚¦ãƒˆ" - -#: forum/registry.py:28 -msgid "login" -msgstr "ãƒã‚°ã‚¤ãƒ³" - -#: forum/registry.py:41 -msgid "administration" -msgstr "管ç†" - -#: forum/registry.py:54 -msgid "contact" -msgstr "ãŠå•ã„åˆã‚ã›" - -#: forum/registry.py:57 -msgid "support" -msgstr "サãƒãƒ¼ãƒˆ" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "プライãƒã‚·ãƒ¼" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "プãƒãƒ•ã‚£ãƒ¼ãƒ«ã‚’編集" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "èªè¨¼ã®è¨å®š" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "é›»åメール通知ã®è¨å®š" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "ãã®ä»–ã®è¨å®š" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "モデレーションツール" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "アカウントåœæ¢ã‚’撤回ã™ã‚‹" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’アカウントåœæ¢" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "カルマã®å¢—減" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "モデレーターステータスを削除ã™ã‚‹" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "モデレーターステータスを付与" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "スーパーユーザステータスを削除ã™ã‚‹" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "スーパーユーザステータスを付与" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "nimda/" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "upfiles/" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "faq/" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "FAQ" - -#: forum/urls.py:46 -msgid "about/" -msgstr "about/" - -#: forum/urls.py:46 -msgid "About" -msgstr "About" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "markdown_help/" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "privacy/" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "logout/" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "answers/" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "edit/" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "revisions/" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "questions/" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "ask/" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "related_questions/" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "unanswered/" - -#: forum/urls.py:62 -msgid "close/" -msgstr "close/" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "reopen/" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "answer/" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "pending-data/" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "vote/" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "like_comment/" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "comment/" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "delete_comment/" - -#: forum/urls.py:71 -msgid "convert_comment/" -msgstr "convert_comment/" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "accept_answer/" - -#: forum/urls.py:73 -msgid "answer_link/" -msgstr "answer_link/" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "mark_favorite/" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "award_points/" - -#: forum/urls.py:75 -msgid "user/" -msgstr "user/" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "flag/" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "delete/" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "subscribe/" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "matching_tags/" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "matching_users/" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "node_markdown/" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "convert/" - -#: forum/urls.py:85 -msgid "convert_to_question/" -msgstr "convert_to_question/" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "wikify/" - -#: forum/urls.py:88 -msgid "question/" -msgstr "question/" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "tags/" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "mark-tag/" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "interesting/" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "ignored/" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "unmark-tag/" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "users/" - -#: forum/urls.py:104 -msgid "award/" -msgstr "award/" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "suspend/" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "powers/" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "subscriptions/" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "preferences/" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "favorites/" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "reputation/" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "votes/" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "recent/" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "badges/" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "upload/" - -#: forum/urls.py:119 -msgid "search/" -msgstr "search/" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "contact/" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "account/" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "signin/" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "signout/" - -#: forum/urls.py:127 -msgid "done/" -msgstr "done/" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "register/" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "validate/" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "tempsignin/" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "authsettings/" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "providers/" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "remove/" - -#: forum/urls.py:134 -msgid "add/" -msgstr "add/" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "send-validation/" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "admin/" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "switch_interface/" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "statistics/" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "denormalize/" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "go_bootstrap/" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "go_defaults/" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "settings/" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "maintenance/" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "flagged_posts/" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "static_pages/" - -#: forum/urls.py:149 -msgid "new/" -msgstr "new/" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "tools/" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "test_email_settings/" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "%(user)s 㯠%(post_desc)s ã« %(vote_desc)s" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "投票ã—ãŸ" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "å対票を投ã˜ãŸ" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "好ãã¨è¨€ã£ãŸ" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "ç†ç”±ã¯ç¤ºã•ã‚Œã¦ã„ã¾ã›ã‚“" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "%(user)s 㯠%(post_desc)s フラグをè¨å®šã—ã¾ã—ãŸ: %(reason)s" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "ã‚ãªãŸ" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "自分ã®" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" -"%(user)sã¯ã€%(asker)s ã®è³ªå• %(question)s 㧠%(answerer)s ã®å›žç”を採用ã—ã¾ã—" -"ãŸ" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "%(user)s 㯠%(post_desc)s ã‚’ãŠæ°—ã«å…¥ã‚Šã¨ã—ã¦ãƒžãƒ¼ã‚¯ã—ã¾ã—ãŸ" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "%(user)s 㯠%(post_desc)s を削除ã—ã¾ã—ãŸ" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "複数ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒãƒ•ãƒ©ã‚°ï¼š" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "å…ˆé ã®ãƒªãƒ“ジョン" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "質å•" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "%(user)s ㌠%(question)s を投稿ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "回ç”" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "%(user)s 㯠%(asker)s ã® %(question)s ã«å›žç”ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "コメント" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "%(user)s 㯠%(post_desc)s ã«ã‚³ãƒ¡ãƒ³ãƒˆã—ã¾ã—ãŸ" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "編集" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "%(user)s 㯠%(post_desc)s を編集ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "ã‚¿ã‚°å†è¨å®š" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "ã‚¿ã‚°å†è¨å®š" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "%(user)s 㯠%(post_desc)s ã®ã‚¿ã‚°ã‚’å†è¨å®šã—ã¾ã—ãŸ" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "å–り消ã—" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" -"%(user)s 㯠%(post_desc)s ã®ãƒªãƒ“ジョン %(initial)d (%(initial_sum)s) ã‹ã‚‰ " -"%(final)d (%(final_sum)s) ã‚’å–り消ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "クãƒãƒ¼ã‚ºæ¸ˆã¿" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "%(user)s 㯠%(post_desc)s をクãƒãƒ¼ã‚ºã—ã¾ã—ãŸ: %(reason)s" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "変更" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "%(user)s 㯠%(question)s ã¸ã®å›žç”をコメントã«å¤‰æ›´ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:201 -#, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "%(user)s 㯠%(question)s ã¸ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’回ç”ã«å¤‰æ›´ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:225 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "%(user)s 㯠%(question)s ã¸ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’回ç”ã«å¤‰æ›´ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:231 -msgid "converted to question" -msgstr "質å•ã«å¤‰æ›´" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "%(user)s 㯠%(question)s ã¸ã®å›žç”ã‚’æ–°ã—ã„質å•ã«å¤‰æ›´ã—ã¾ã—ãŸ" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "wiki化" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "%(user)s 㯠%(node)s をコミュニティ wiki ã«ã—ã¾ã—ãŸ" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "作æˆ" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "%(user)s ã¯æ–°è¦ãƒšãƒ¼ã‚¸ %(page)s を作æˆã—ã¾ã—ãŸ" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "%(user)s ã¯ãƒšãƒ¼ã‚¸ %(page)s を編集ã—ã¾ã—ãŸ" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "公開" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "%(user)s ã¯æ–°è¦ãƒšãƒ¼ã‚¸ %(page)s を公開ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "å‚åŠ " - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "%(user)s 㯠%(app_name)s Q&A コミュニティã«å‚åŠ %(have_has)s" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:27 -#, fuzzy -msgid "logged in" -msgstr "ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã›ã‚“" - -#: forum/actions/user.py:30 -#, fuzzy, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "%(user)s 㯠e-mail %(email)s ã‚’èªè¨¼%(have_has)s" - -#: forum/actions/user.py:36 -msgid "validated e-mail" -msgstr "e-mailを確èª" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "%(user)s 㯠e-mail %(email)s ã‚’èªè¨¼%(have_has)s" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ç·¨é›†" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "%(user)s 㯠%(hes_or_your)s %(profile_link)s を編集ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "ボーナスを支給" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "ãŠã‚ã§ã¨ã†ã”ã–ã„ã¾ã™ï¼ 特別㫠%s 評判ãƒã‚¤ãƒ³ãƒˆã‚’ç²å¾—ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "評判ãƒã‚¤ãƒ³ãƒˆã‚’ %s ãƒã‚¤ãƒ³ãƒˆæ¸›ç‚¹ã•ã‚Œã¾ã—ãŸ" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "ä¸æ˜Ž" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" -"%(user)s 㯠%(users)s ã« %(value)s 評判ãƒã‚¤ãƒ³ãƒˆã‚’プレゼントã—ã¾ã—ãŸ: " -"%(message)s" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" -"%(user)s 㯠%(users)s ã®è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã‚’ %(value)s ãƒã‚¤ãƒ³ãƒˆæ¸›ç‚¹ã—ã¾ã—ãŸ: " -"%(message)s" - -#: forum/actions/user.py:101 -msgid "gave reputation points" -msgstr "評判ãƒã‚¤ãƒ³ãƒˆã‚’プレゼント" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" -"ãŠã‚ã§ã¨ã†ã”ã–ã„ã¾ã™ï¼<a href=\"%(answer_url)s\">this</a> ã¸ã®å›žç”ã«ã‚ˆã‚Šã€ç‰¹" -"別㫠%(points)s 評判%(points_label)s ã‚’ç²å¾—ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "ãƒã‚¤ãƒ³ãƒˆ" -msgstr[1] "ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "%(user)s 㯠%(users)s ã« %(value)s 評判ãƒã‚¤ãƒ³ãƒˆã‚’プレゼントã—ã¾ã—ãŸ" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "%(user)s 㯠%(users)s ã®è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã‚’ %(value)s ãƒã‚¤ãƒ³ãƒˆæ¸›ç‚¹ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "評判ãƒã‚¤ãƒ³ãƒˆç²å¾—" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" -"ãŠã‚ã§ã¨ã†ã”ã–ã„ã¾ã™ï¼ '%(badge_name)s' ãƒãƒƒã‚¸ã‚’ç²å¾—ã—ã¾ã—ãŸã€‚ <a href=" -"\"%(profile_url)s\">プãƒãƒ•ã‚¡ã‚¤ãƒ«</a>を確èªã—ã¦ãã ã•ã„。" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "%(user)s 㯠%(badge_name)s ãƒãƒƒã‚¸ã‚’ç²å¾—%(were_was)s" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "ã—ã¾ã—ãŸ" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "åœæ¢" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "ã‚ãªãŸã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆåœæ¢ãŒè§£é™¤ã•ã‚Œã¦ã„ã¾ã™ã€‚" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "%s 日間" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "無期é™ã«" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" -"%(user)s 㯠%(users)s ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’ %(suspension)s åœæ¢ã—ã¾ã—ãŸ: %(msg)s" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "å•é¡Œã®ã‚る行動" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "1ã¤ã®ä»¥ä¸Šã®IPアドレスを入力ã—ã¦ãã ã•ã„" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "ä¸æ£ãªIPアドレス: %s" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "dotted quad記法ã§ipアドレスを指定ã—ã¦ãã ã•ã„" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "IPアドレスを許å¯ã™ã‚‹" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" -"メンテナンスモードã§ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã™ã‚‹ipアドレスをカンマã§åŒºåˆ‡ã£ã¦æŒ‡å®šã—ã¾ã™" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "メッセージ" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "メンテナンスモードä¸ã«ã‚µã‚¤ãƒˆè¨ªå•è€…ã¸è¡¨ç¤ºã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "デフォルト" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "デフォルトã®ã‚µã‚¤ãƒ‰ãƒãƒ¼" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "ãªã—" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "Markdown" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "HTML" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "Escaped" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "タイトル" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "ページã®URL" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "ページコンテンツ" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "MIMEタイプ" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "レンダリングモード" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "テンプレート" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "サイドãƒãƒ¼ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "サイドãƒãƒ¼ã®ãƒ–ãƒãƒƒã‚¯ã‚’折り返ã™" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "サイドãƒãƒ¼ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "コメントを許å¯ã™ã‚‹" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "確èªãƒ¡ãƒ¼ãƒ«ã‚’é€ä¿¡" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "é›»åメールアドレス" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "アカウントã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’空白ã®ã¾ã¾ã«ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" -"申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ã“ã®é›»åメールã¯æˆ‘々ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ç™»éŒ²ã•ã‚Œã¦ã„ã¾ã›ã‚“。" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "ç¾åœ¨ã®ãƒ‘スワード" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "å¤ã„パスワードãŒé–“é•ã£ã¦ã„ã¾ã™ã€‚æ£ã—ã„パスワードを入力ã—ã¦ãã ã•ã„。" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯å…¥åŠ›å¿…é ˆã§ã™" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "ユーザーåã‚’é¸æŠžã—ã¦ãã ã•ã„" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "ユーザーåを指定ã—ã¦ãã ã•ã„" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" -"申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ã“ã®åå‰ã¯ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚別ã®åå‰ã‚’指定ã—ã¦ãã ã•ã„。" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" -"申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ã“ã®åå‰ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。別ã®åå‰ã‚’指定ã—ã¦ãã ã•ã„。" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ã“ã®åå‰ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ç™»éŒ²ã•ã‚Œã¦ã„ã¾ã›ã‚“。" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" -"申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€é‡å¤§ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚ - ユーザåãŒè¤‡æ•°ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼" -"ã§ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚" - -#: forum/forms/general.py:52 -#, fuzzy -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "ユーザーåã«ã¯ã€æ–‡å—ã€ã‚¹ãƒšãƒ¼ã‚¹ã€ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢ã ã‘を使ã£ã¦ãã ã•ã„" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "ユーザåãŒçŸã™ãŽã¾ã™ã€‚ %d æ–‡å—以上ã®åå‰ã‚’指定ã—ã¦ãã ã•ã„。" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "ã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "é›»åメールアドレスã¯å…¥åŠ›å¿…é ˆã§ã™" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" -"ã“ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯ã™ã§ã«ç™»éŒ²æ¸ˆã¿ã§ã™ã€‚別ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’指定ã—ã¦ãã ã•ã„。" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "パスワードを指定" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "パスワードã¯å…¥åŠ›å¿…é ˆã§ã™" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "パスワードå†ç¢ºèª" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "パスワードをå†å…¥åŠ›ã—ã¦ãã ã•ã„" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" -"申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ãƒ‘スワードãŒä¸€è‡´ã—ã¦ã„ã¾ã›ã‚“。もã†ä¸€åº¦å…¥åŠ›ã—ã¦ãã ã•ã„" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "タイトル" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "質å•ã«ã¯ã‚ã‹ã‚Šã‚„ã™ã„タイトルをã¤ã‘ã¾ã—ょã†" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "タイトル㯠%s æ–‡å—以上入力ã—ã¦ãã ã•ã„" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "コンテンツ" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "質å•ã¯ %s æ–‡å—以上入力ã—ã¦ãã ã•ã„。" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "回ç”㯠%s æ–‡å—以上入力ã—ã¦ãã ã•ã„。" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "ã‚¿ã‚°" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" -"ã‚¿ã‚°ã¨ã¯ç©ºç™½æ–‡å—ã‚’å«ã¾ãªã„ã€çŸã„ã‚ーワードã§ã™ã€‚%(min)s - %(max)s 個ã®ã‚¿ã‚°ã‚’" -"è¨å®šã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "タグ数㯠%(min)s 個ã‹ã‚‰ %(max)s 個ã¾ã§ã¨ã—ã¦ãã ã•ã„" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "タグ㯠%(min)s æ–‡å—以上〠%(max)s æ–‡å—以下ã¨ã—ã¦ãã ã•ã„" - -#: forum/forms/qanda.py:108 -#, fuzzy -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "ã‚¿ã‚°ã«ã¯ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆã€æ•°å—ã€ã¾ãŸã¯ ,.-_ ã ã‘ãŒåˆ©ç”¨å¯èƒ½ã§ã™ã€‚" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" -"æ–°ã—ã„タグを登録ã™ã‚‹ã«ã¯ã€è©•ä¾¡ãƒã‚¤ãƒ³ãƒˆãŒè¶³ã‚Šã¾ã›ã‚“。タグ %s ã¯æœªç™»éŒ²ã§ã™" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "コミュニティwiki" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" -"コミュニティwikiã§ã¯ã€è³ªå•ã‚„回ç”ã«ãƒã‚¤ãƒ³ãƒˆãŒã¤ã‹ãšã€è‘—者åも表示ã•ã‚Œã¾ã›ã‚“" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "ä¿®æ£ã®æ¦‚è¦ï¼š" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" -"ä¿®æ£å†…容を簡å˜ã«å…¥åŠ›ã—ã¾ã™ï¼ˆä¾‹ 誤å—ä¿®æ£ã€æ›¸ãé–“é•ã„ãªã©ï¼‰ã€‚ã“ã®é …ç›®ã¯çœç•¥å¯èƒ½" -"ã§ã™ã€‚" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "メッセージ:" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "ã‚ãªãŸã®ãŠåå‰ï¼š" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "é›»åメール (一般ã«ã¯å…¬é–‹ã•ã‚Œã¾ã›ã‚“):" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "gravatarã«ç™»éŒ²ã•ã‚ŒãŸãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã‚ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "本å" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "ホームページ" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "ãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "誕生日" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" -"å¹´é½¢ã®è¨ˆç®—ã«ã®ã¿ä½¿ç”¨ã—ã€å…¬é–‹ã¯ã•ã¾ã›ã‚“。YYYY-MM-DD å½¢å¼ã§å…¥åŠ›ã—ã¦ãã ã•ã„" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "プãƒãƒ•ã‚£ãƒ¼ãƒ«" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "スクリーンãƒãƒ¼ãƒ " - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "ã“ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯ç™»éŒ²æ¸ˆã¿ã§ã™ã€‚別ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ç™»éŒ²ã—ã¦ãã ã•ã„" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "ã™ãã«" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "通知ã—ãªã„" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" -"\n" -"ã“ã®ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã®ãƒ¡ãƒ¼ãƒ«è¨å®šãŒè¡Œã‚ã‚Œã¦ã„ã¾ã›ã‚“。早急ã«<a href=" -"\"%(email_settings_url)s\">メールè¨å®šãƒšãƒ¼ã‚¸</a>ã§è¨å®šã‚’è¡Œã£ã¦ãã ã•ã„" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" -"\n" -"ãƒãƒ¼ã‚«ãƒ«è¨å®šãƒ•ã‚¡ã‚¤ãƒ«ã® APP_URLã‚’è¨å®šã—ã¦ãã ã•ã„。\n" -" " - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "ã¯ã˜ã‚ã¾ã—ã¦ã§ã™ã‹ï¼Ÿ <a href=\"%s\">FAQ</a>ã‚’ã”å‚ç…§ãã ã•ã„!" - -#: forum/models/action.py:216 -msgid "You" -msgstr "ã‚ãªãŸ" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "(%(link)s 内)" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "%(user)s ã® %(node_name)s %(node_desc)s" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "コメント" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "ä¸æ˜Ž" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "使用å¯èƒ½ãªèª¬æ˜ŽãŒã‚ã‚Šã¾ã›ã‚“" - -#: forum/models/node.py:250 -msgid "post" -msgstr "ãƒã‚¹ãƒˆ" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "[éžå…¬é–‹] %s" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "[削除] " - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "[クãƒãƒ¼ã‚º] " - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "興味ã®ã‚ã‚‹" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "興味ã®ãªã„" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "asked-by" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "answered-by" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "subscribed-by" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "ãƒãƒƒã‚¸ã®è¨å®š" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "ã“ã®OSQAサイトã®ãƒãƒƒã‚¸ã‚’è¨å®šã‚’è¡Œã„ã¾ã™ã€‚" - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "回ç”ã®æŽ¡ç”¨" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "回ç”を採用ã«é–¢ã™ã‚‹è¨å®šã‚’è¡Œã„ã¾ã™ã€‚" - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "回ç”ã®æŽ¡ç”¨ã‚’ç¦æ¢ã™ã‚‹" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" -"回ç”ã®æŽ¡ç”¨æ©Ÿèƒ½ã‚’使用ä¸å¯ã«ã—ã¾ã™ã€‚後ã§ä½¿ç”¨å¯èƒ½çŠ¶æ…‹ã«æˆ»ã™ã¨ã€ç¾åœ¨æŽ¡ç”¨ã•ã‚Œã¦ã„" -"る回ç”ã¯ã¾ãŸæŽ¡ç”¨æ¸ˆã¿ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã¾ã™" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "一ã¤ã®è³ªå•ã«å¯¾ã™ã‚‹å›žç”ã®æœ€å¤§æŽ¡ç”¨æ•°" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" -"一ã¤ã®è³ªå•ã«å¯¾ã—ã¦æœ€å¤§ã„ãã¤ã®å›žç”を採用ã§ãã‚‹ã‹ã‚’指定ã—ã¾ã™ã€‚0 ãªã‚‰ã°ç„¡åˆ¶é™" -"ã¨ãªã‚Šã¾ã™" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "ユーザ/質å•ã”ã¨ã«æŽ¡ç”¨ã§ãる最大回ç”æ•°" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" -"複数ã®å›žç”を採用ã§ãã‚‹å ´åˆã€ä¸€ã¤ã®è³ªå•ä¸ã§ãã‚Œãžã‚Œã®ãƒ¦ãƒ¼ã‚¶ã«å¯¾ã—ã¦æŽ¡ç”¨ã§ãã‚‹" -"回ç”数を指定ã—ã¾ã™ã€‚" - -#: forum/settings/accept.py:21 -msgid "Users an accept own answer" -msgstr "自分ã®å›žç”を採用å¯èƒ½" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "一般ユーザã«ã‚ˆã‚‹ã€è‡ªåˆ†è‡ªèº«ã®å›žç”を採用å¯èƒ½ã«ã—ã¾ã™" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "基本è¨å®š" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "アプリケーションã®åŸºæœ¬è¨å®š" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "アプリケーションã®ãƒã‚´" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "ã‚ãªãŸã®ã‚µã‚¤ãƒˆã®ãƒ¡ã‚¤ãƒ³ãƒã‚´ã€‚" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "Favicon" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "ã‚ãªãŸã®ã‚µã‚¤ãƒˆã®favicon" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "アプリケーションã®ã‚¿ã‚¤ãƒˆãƒ«" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "ブラウザã®ã‚¿ã‚¤ãƒˆãƒ«ãƒãƒ¼ã«è¡¨ç¤ºã•ã‚Œã‚‹ã€ã‚¢ãƒ—リケーションã®ã‚¿ã‚¤ãƒˆãƒ«" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "アプリケーションã®çŸã„åå‰" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "アプリケーションã®ã‚ーワード" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "HTMLã®metaã‚¿ã‚°ã§å…¬é–‹ã•ã‚Œã‚‹ã‚ーワードを指定ã—ã¾ã™ã€‚" - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "アプリケーションã®èª¬æ˜Ž" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "ã“ã®ã‚¢ãƒ—リケーションã®èª¬æ˜Ž" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "著作権表示" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "ページã®ãƒ•ãƒƒã‚¿ã«è¡¨ç¤ºã•ã‚Œã‚‹è‘—作権表示。" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "サãƒãƒ¼ãƒˆURL" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" -"ユーザサãƒãƒ¼ãƒˆã®URLを指定ã—ã¾ã™ã€‚ã“ã®URLã¯ã€http: ã‚„ mailto: ãªã©ã€è‡ªç”±ãªã‚¹" -"ã‚ーマを指定ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "å•ã„åˆã‚ã›å…ˆURL" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" -"ユーザã‹ã‚‰ã®å•ã„åˆã‚ã›æ›¸ãURLを指定ã—ã¾ã™ã€‚ã“ã®URLã¯ã€http: ã‚„ mailto: ãªã©ã€" -"自由ãªã‚¹ã‚ーマを指定ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "é›»åメールè¨å®š" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "メールサーãƒãŠã‚ˆã³ä»–ã®ãƒ¡ãƒ¼ãƒ«é–¢é€£ã®è¨å®šã€‚" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "é›»åメールè¨å®šã®ãƒ†ã‚¹ãƒˆ" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "ç¾åœ¨ã®é›»åメールã®è¨å®šã‚’テストã—ã¾ã™ã€‚" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "メールサーãƒ" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "メールã®é€ä¿¡ã«ä½¿ç”¨ã™ã‚‹SMTPサーãƒã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "メールé€ä¿¡ãƒãƒ¼ãƒˆ" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "SMTPサーãƒã®å—ä¿¡ãƒãƒ¼ãƒˆã‚’指定ã—ã¾ã™ã€‚通常ã®ã‚µãƒ¼ãƒã§ã¯ 25 ã§ã™ã€‚" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "メールé€ä¿¡ãƒ¦ãƒ¼ã‚¶" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "SMTP接続ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åを指定ã—ã¾ã™ã€‚" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "メールé€ä¿¡ãƒ‘スワード" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "SMTP接続ã®ãƒ‘スワードを指定ã—ã¾ã™ã€‚" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "TLSを使用" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "SMTPサーãƒã«TLSã§æŽ¥ç¶šã™ã‚‹å ´åˆã¯ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚" - -#: forum/settings/email.py:42 -msgid "Site 'from' Email Address" -msgstr "サイトã§ä½¿ç”¨ã™ã‚‹ From アドレス" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" -"ã“ã®ã‚¦ã‚§ãƒ–サイトã‹ã‚‰é€ä¿¡ã™ã‚‹ãƒ¡ãƒ¼ãƒ«ã®ã€Fromフィールドã§ä½¿ç”¨ã™ã‚‹ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹" -"を指定ã—ã¾ã™" - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "サイトã§ä½¿ç”¨ã™ã‚‹ From アドレス" - -#: forum/settings/email.py:48 -#, fuzzy -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" -"ã“ã®ã‚¦ã‚§ãƒ–サイトã‹ã‚‰é€ä¿¡ã™ã‚‹ãƒ¡ãƒ¼ãƒ«ã®ã€Fromフィールドã§ä½¿ç”¨ã™ã‚‹ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹" -"を指定ã—ã¾ã™" - -#: forum/settings/email.py:52 -msgid "Email Subject Prefix" -msgstr "件åã®ãƒ—レフィックス" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" -"ã“ã®ã‚¦ã‚§ãƒ–サイトã‹ã‚‰é€ä¿¡ã™ã‚‹ãƒ¡ãƒ¼ãƒ«ã®ä»¶åã®å…ˆé ã«ã€æŒ‡å®šã—ãŸæ–‡å—を付ã‘åŠ ãˆã¾ã™" -"ã“ã®æ–‡å—列ã«ã‚ˆã‚Šã€ãƒ¦ãƒ¼ã‚¶ãŒãƒ¡ãƒ¼ãƒ«ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã§ç°¡å˜ã«ãƒ¡ãƒ¼ãƒ«ã‚’振り分ã‘ã‚‹ã“ã¨ãŒ" -"ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "メールã®ãƒ•ãƒƒã‚¿ãƒ¼" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" -"メールã®æœ«å°¾ã«è¿½åŠ ã™ã‚‹æ–‡ç« を指定ã—ã¾ã™ã€‚通常ã€\"CAN SPAM\"法éµå®ˆã®ãŸã‚ã®æ–‡ç« " -"ã‚„ã€ã‚µã‚¤ãƒˆé‹å–¶è€…ã®ä½æ‰€ãªã©ã«è¨˜å…¥ã—ã¾ã™ã€‚詳ã—ãã¯ã“ã®<a href=\"http://en." -"wikipedia.org/wiki/CAN-SPAM_Act_of_2003\">Wikipediaã®ã‚¢ãƒ¼ãƒ†ã‚£ã‚¯ãƒ«ã‚’å‚ç…§ã—ã¦ã" -"ã ã•ã„" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "æž ç·šã®è‰²" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "メール基本テンプレートã®å¤–æž ã®è‰²" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "段è½ã‚¹ã‚¿ã‚¤ãƒ«" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "メールã®ãƒ‘ラグラフ(Pã‚¿ã‚°)ã®ã‚¹ã‚¿ã‚¤ãƒ«ã‚’指定ã™ã‚‹cssæ–‡å—列。" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "リンクã®ã‚¹ã‚¿ã‚¤ãƒ«" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "メールã®ãƒªãƒ³ã‚¯(Aã‚¿ã‚°ãªã©)ã®ã‚¹ã‚¿ã‚¤ãƒ«ã‚’指定ã™ã‚‹cssæ–‡å—列。" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "外部ã‚ー" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "外部プãƒãƒã‚¤ãƒ€ã‚’利用ã™ã‚‹ãŸã‚ã®ã‚ーè¨å®šã€‚" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "Googleサイトマップコード" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" -"<a href='https://www.google.com/webmasters/tools/'>Google webmaster central</" -"a> ã®ã‚³ãƒ¼ãƒ‰" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "Google analytics ã‚ー" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" -"Google Analytics ã®ã‚ー。ã“ã®ã‚ーã¯<a href='http://www.google.com/" -"analytics/'>Google Analytics official website</a> ã§å…¥æ‰‹ã—ã¾ã™" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "フォームè¨å®š" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "OSQAフォームã®ä¸€èˆ¬çš„ãªè¨å®šã‚’è¡Œã„ã¾ã™ã€‚" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "コミュニティwikiを有効ã«ã™ã‚‹" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "質å•ã‚„回ç”ã‚’ã€ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£wikiã¨ã—ã¦ãƒžãƒ¼ã‚¯ã™ã‚‹äº‹ãŒå‡ºæ¥ã‚‹ã€‚" - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "タグ作æˆã®åˆ¶é™" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" -"æ–°è¦ã®ã‚¿ã‚°ã¯ã€ã‚¹ãƒ¼ãƒ‘ーユーザーã€ã‚¹ã‚¿ãƒƒãƒ•ã€ä¸€å®šã®è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã‚’æŒã¤ãƒ¦ãƒ¼ã‚¶ã®ã¿" -"ãŒä½œæˆã§ãるよã†ã«ã™ã‚‹ã€‚" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "質å•ã‚¿ã‚¤ãƒˆãƒ«ã®æœ€å°æ–‡å—æ•°" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "質å•ã®ã‚¿ã‚¤ãƒˆãƒ«ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«å¿…è¦ãªæœ€ä½Žæ–‡å—数。" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "質å•å†…容ã®æœ€ä½Žæ–‡å—æ•°" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "質å•å†…容ã«å¿…è¦ãªæœ€ä½Žæ–‡å—数。" - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "空ã®è³ªå•" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "空ã®è³ªå•å†…容を許å¯ã™ã‚‹ã€‚" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "質å•ã«å¿…è¦ãªæœ€ä½Žã‚¿ã‚°æ•°" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "質å•ã«æŒ‡å®šã—ãªã‘ã‚Œã°ãªã‚‰ãªã„最低タグ数。" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "質å•ã®æœ€å¤§ã‚¿ã‚°æ•°" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "質å•ã«æŒ‡å®šã™ã‚‹ã“ã¨ã®å‡ºæ¥ã‚‹æœ€å¤§ã‚¿ã‚°æ•°ã€‚" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "ã‚¿ã‚°ã®æœ€ä½Žæ–‡å—æ•°" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "ã‚¿ã‚°ã®æœ€ä½Žæ–‡å—数を指定ã™ã‚‹ã€‚" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "ã‚¿ã‚°ã®æœ€å¤§æ–‡å—æ•°" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "ã‚¿ã‚°ã®æœ€å¤§æ–‡å—数を指定ã™ã‚‹ã€‚" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "コメントã®æœ€ä½Žæ–‡å—æ•°" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "コメント本文ã«å¿…è¦ãªæœ€ä½Žæ–‡å—数。" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "コメントã®æœ€å¤§æ–‡å—æ•°" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "コメント本文ã«å…¥åŠ›ã™ã‚‹ã“ã¨ãŒã§ãる最大文å—数。" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "コメント欄ã§markdownを許å¯ã™ã‚‹" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "コメント欄ã§markdownã®ä½¿ç”¨ã‚’許å¯ã™ã‚‹ã€‚" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "コメントã«æŠ•ç¨¿è€…ã®gravatarを表示" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "コメントã«æŠ•ç¨¿è€…ã®gravatarç”»åƒã‚’表示ã™ã‚‹ã€‚" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "コンテã‚スト" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "デフォルト" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "変更:" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "å¿…è¦è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "ãã‚Œãžã‚Œã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã«æœ€ä½Žé™å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã‚’è¨å®šã—ã¾ã™ã€‚" - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "CAPTCHAを表示ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" -"指定ã—ãŸè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆæœªæº€ã®ãƒ¦ãƒ¼ã‚¶ãŒæŠ•ç¨¿ã™ã‚‹å ´åˆã«ã¯ã€CAPTCHAを表示ã™ã‚‹ã€‚" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "投票ã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "投票ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "å対票ã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "å対投票ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "投稿ã®ãƒ•ãƒ©ã‚°è¨å®šã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "投稿ã«ãƒ•ãƒ©ã‚°ã‚’è¨å®šã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "コメント投稿ã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "コメントを投稿ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "コメントã®\"like\"ã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "コメントã«\"like\"ã‚’ã¤ã‘ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "アップãƒãƒ¼ãƒ‰ã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "ファイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "ã‚¿ã‚°ã®ä½œæˆã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "æ–°è¦ã‚¿ã‚°ã®ä½œæˆã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "自分ã®è³ªå•ã®ã‚¯ãƒãƒ¼ã‚ºã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "自分ã§æŠ•ç¨¿ã—ãŸè³ªå•ã‚’クãƒãƒ¼ã‚ºã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "自分ã®è³ªå•ã®å†ã‚ªãƒ¼ãƒ—ンã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "自分ã§æŠ•ç¨¿ã—ãŸè³ªå•ã‚’å†ã‚ªãƒ¼ãƒ—ンã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "ã‚¿ã‚°ã®ã¤ã‘ç›´ã—ã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "ä»–ã®ãƒ¦ãƒ¼ã‚¶ã®è³ªå•ã®ã‚¿ã‚°ã‚’ã¤ã‘ç›´ã™ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "wikiã®ç·¨é›†ã«å¿…è¦ãªè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "コミュニティWikiã®ç·¨é›†ã‚’ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "投稿ã®ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£Wikiã¸ã®å¤‰æ›´ã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "投稿をコミュニティWikiã«å¤‰æ›´ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "他ユーザã®æŠ•ç¨¿ã®ç·¨é›†ã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "ä»–ã®ãƒ¦ãƒ¼ã‚¶ãŒæŠ•ç¨¿ã—ãŸè¨˜äº‹ã‚’編集ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "他ユーザã®æŠ•ç¨¿ã®ã‚¯ãƒãƒ¼ã‚ºã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "ä»–ã®ãƒ¦ãƒ¼ã‚¶ãŒæŠ•ç¨¿ã—ãŸè¨˜äº‹ã‚’クãƒãƒ¼ã‚ºã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "コメント削除ã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "コメントを削除ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "回ç”ã®ã‚³ãƒ¡ãƒ³ãƒˆã¸ã®å¤‰æ›´ã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "回ç”をコメントã«å¤‰æ›´ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:80 -msgid "Minimum reputation to convert comments to answers" -msgstr "コメントã®å›žç”ã¸ã®å¤‰æ›´ã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "コメントを回ç”ã«å¤‰æ›´ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:84 -msgid "Minimum reputation to convert answers to questions" -msgstr "回ç”ã®è³ªå•ã¸ã®å¤‰æ›´ã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "回ç”を質å•ã«å¤‰æ›´ã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "é€šå ±å†…å®¹ã‚’è¡¨ç¤ºã«å¿…è¦ãªè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "é€šå ±å†…å®¹ã‚’è¡¨ç¤ºã™ã‚‹ãŸã‚ã«å¿…è¦ãªæœ€ä½Žè©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "モデレーションè¨å®š" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "サイトã®æ‰¿èªãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã‚’定義ã—ã¾ã™ã€‚" - -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "回ç”ã¨ã‚³ãƒ¡ãƒ³ãƒˆ" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "コメントをã™ã‚‹" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "フラグç†ç”±" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "フラグè¨å®šãƒãƒƒãƒ—アップã§è¡¨ç¤ºã™ã‚‹ãƒ•ãƒ©ã‚°ç†ç”±ã‚’作æˆã—ã¾ã™ã€‚" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "クãƒãƒ¼ã‚ºç†ç”±" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "質å•ã®ã‚¯ãƒãƒ¼ã‚ºãƒãƒƒãƒ—アップã§è¡¨ç¤ºã™ã‚‹ã‚¯ãƒãƒ¼ã‚ºç†ç”±ã‚’作æˆã—ã¾ã™ã€‚" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "評判ãƒã‚¤ãƒ³ãƒˆå¢—減è¨å®š" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "ユーザã®è¡Œå‹•ã«ã‚ˆã‚‹è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã®å¢—減をè¨å®šã—ã¾ã™ã€‚" - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "åˆæœŸè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "ユーザーãŒæœ€åˆã«ã‚µã‚¤ãƒ³ã—ãŸã¨ãã«ä»˜ä¸Žã•ã‚Œã‚‹åˆæœŸãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "一日ã§æŠ•ç¥¨ã«ã‚ˆã£ã¦ç²å¾—ã§ãる最大評価ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "メール検証" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "é›»åメールã®æ¤œè¨¼ã«ã‚ˆã£ã¦ä»˜ä¸Žã•ã‚Œã‚‹ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "得票ã™ã‚‹" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "投稿ã¸ã®å¾—票ã§ä»˜ä¸Žã•ã‚Œã‚‹ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "å対票を得る" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "投稿ã¸ã®å対票ã§å‰Šæ¸›ã•ã‚Œã‚‹ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "å対票を投ãšã‚‹" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "å対票を投ã˜ã‚‹ã¨å‰Šæ¸›ã•ã‚Œã‚‹ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "承èªã•ã‚Œã‚‹" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "回ç”ãŒæŽ¡ç”¨æ‰¿èªã•ã‚Œã‚‹ã¨ä»˜ä¸Žã•ã‚Œã‚‹ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "採用" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "質å•ã¸ã®å›žç”ã®æŽ¡ç”¨ã§ä»˜ä¸Žã•ã‚Œã‚‹ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "投稿ã¸ã®ãƒ•ãƒ©ã‚°" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "投稿ã¸ãƒ•ãƒ©ã‚°ã‚’è¨å®šã•ã‚Œã‚‹ã¨å‰Šæ¸›ã•ã‚Œã‚‹ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "投稿ã¸ã®ãƒ•ãƒ©ã‚°ã¨éžè¡¨ç¤º" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" -"投稿ã®æœ€çµ‚リビジョンã«å¤šæ•°ã®ãƒ•ãƒ©ã‚°ãŒè¨å®šã•ã‚Œã€éžè¡¨ç¤ºã«ãªã£ãŸå ´åˆã«å‰Šæ¸›ã•ã‚Œã‚‹" -"ãƒã‚¤ãƒ³ãƒˆã€‚" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "投稿ã¸ã®ãƒ•ãƒ©ã‚°ã¨å‰Šé™¤" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" -"投稿ã®æœ€çµ‚リビジョンã«å¤šæ•°ã®ãƒ•ãƒ©ã‚°ãŒè¨å®šã•ã‚Œã€å‰Šé™¤ã•ã‚ŒãŸå ´åˆã«å‰Šæ¸›ã•ã‚Œã‚‹ãƒã‚¤" -"ント。" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "ウエルカムボックスを表示" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "ユーザーãŒæœ€åˆã«ã‚µã‚¤ãƒˆã‚’訪れãŸã¨ãã«ã‚¦ã‚¨ãƒ«ã‚«ãƒ ボックスを表示ã—ã¾ã™" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "アプリケーションã®ç´¹ä»‹" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "匿åユーザーã®ã‚µã‚¤ãƒ‰ãƒãƒ¼ã«è¡¨ç¤ºã™ã‚‹ç´¹ä»‹ãƒšãƒ¼ã‚¸ã€‚" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "上部ブãƒãƒƒã‚¯ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "上部ブãƒãƒƒã‚¯ã®ã‚³ãƒ¼ãƒ‰ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°æ–¹æ³•ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "下部ブãƒãƒƒã‚¯ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "下部ブãƒãƒƒã‚¯ã®ã‚³ãƒ¼ãƒ‰ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°æ–¹æ³•ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/sitemaps.py:5 -msgid "Sitemap settings" -msgstr "サイトマップè¨å®š" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "サイトマップè¨å®šã«é–¢ã™ã‚‹è¨å®š" - -#: forum/settings/sitemaps.py:8 -msgid "Questions Sitemap Limit" -msgstr "質å•ã‚µã‚¤ãƒˆãƒžãƒƒãƒ—制é™" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "質å•ã‚µã‚¤ãƒˆãƒžãƒƒãƒ—ã®ãƒšãƒ¼ã‚¸ã‚ãŸã‚Šã®è³ªå•æ•°ã€‚" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "質å•ã‚µã‚¤ãƒˆãƒžãƒƒãƒ—æ›´æ–°é–“éš”" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" -"質å•ã‚µã‚¤ãƒˆãƒžãƒƒãƒ—ã®<changefreq>ã‚¿ã‚°ã§è³ªå•ã§ä½¿ç”¨ã•ã‚Œã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®å¤‰æ›´é »åº¦ã‚’指" -"定ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "カスタムCSSを使用" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "カスタムCSSを使用ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "カスタムCSS" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "カスタムCSS。" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "カスタムヘッダーã®ä½¿ç”¨" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "カスタムヘッダーを使用ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "カスタムヘッダー" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "カスタムヘッダー" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "カスタムヘッダーã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "カスタムヘッダーã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "ãŠçŸ¥ã‚‰ã›ãƒãƒ¼" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "検索ãƒãƒ¼ã®ä¸‹ã«ã€ã‚¢ãƒŠã‚¦ãƒ³ã‚¹ç‰ã«ä½¿ãˆã‚‹ã‚³ãƒ³ãƒ†ãƒ³ãƒ„を表示ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "ãŠçŸ¥ã‚‰ã›ãƒãƒ¼" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "ãŠçŸ¥ã‚‰ã›ãƒãƒ¼ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„。" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "ãŠçŸ¥ã‚‰ã›ãƒãƒ¼ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "ãŠçŸ¥ã‚‰ã›ãƒãƒ¼ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "カスタムフッターã®ä½¿ç”¨" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "カスタムフッターを使用ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "カスタムフッター" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "カスタムフッター。" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "カスタムフッタã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "カスタムフッタã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ãƒ¢ãƒ¼ãƒ‰ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "デフォルトフッタを置ãæ›ãˆã‚‹" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "デフォルトフッタã®ä¸Š" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "デフォルトフッタã®ä¸‹" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "カスタムフッタモード" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "カスタムフッタã®è¡¨ç¤ºæ–¹æ³•ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "カスタムHeadè¦ç´ を使用" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "カスタムHeadè¦ç´ を使用ã—ã¾ã™ã€‚" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "カスタムHead" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "カスタムヘッドè¦ç´ 。" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "ファイルアップãƒãƒ¼ãƒ‰ã®è¨å®š" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "ファイルアップãƒãƒ¼ãƒ‰é–¢é€£ã®è¨å®šã‚’è¡Œã„ã¾ã™ã€‚" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ•ã‚©ãƒ«ãƒ€" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" -"アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿å˜ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ ã®ãƒ‘ス。å˜åœ¨ã™ã‚‹ãƒ•ã‚©ãƒ«" -"ダーを指定ã—ã¦ãã ã•ã„。" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸã‚¨ã‚¤ãƒªã‚¢ã‚¹ã‚’ファイル" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" -"アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®URLエイリアス。ã“ã®è¨å®šã®å¤‰æ›´ã¯ã€ã‚µã‚¤ãƒˆã®å†èµ·å‹•å¾Œ" -"ã«æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "最大ファイルサイズ" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "アップãƒãƒ¼ãƒ‰ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®æœ€å¤§ã‚µã‚¤ã‚ºã‚’MBå˜ä½æŒ‡å®šã—ã¾ã™ã€‚" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "URLè¨å®š" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "サイトã®URLã®è¨å®šã‚’変更ã—ã¾ã™ (ã“ã®æ©Ÿèƒ½ã¯å®Ÿé¨“çš„ã«å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã™)" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "スラグä¸ã®ãƒ¦ãƒ‹ã‚³ãƒ¼ãƒ‰ã‚’許å¯ã™ã‚‹" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "URLä¸ã®Unicode/éžãƒ©ãƒ†ãƒ³æ–‡å—を許å¯ã—ã¾ã™ã€‚" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "å˜ä¸€ã®URL" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "URLä¸ã®ã‚¹ãƒ©ã‚°ã¨å®Ÿéš›ã®URLãŒä¸€è‡´ã—ãªã„å ´åˆã¯ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã™ã‚‹ã€‚" - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "ユーザーè¨å®š" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "OSQAユーザーã®ä¸€èˆ¬çš„ãªè¨å®šã‚’è¡Œã„ã¾ã™ã€‚" - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "åˆæœŸè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "スクリーンåã®å¤‰æ›´" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "ユーザーãŒè‡ªåˆ†ã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ãƒãƒ¼ãƒ を変更ã§ãるよã†ã«ã—ã¾ã™ã€‚" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "ユーザーåã®æœ€å°æ–‡å—æ•°" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "ユーザーåã®æœ€å°ã®æ–‡å—数。" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "è¿½åŠ " - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "編集" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "ä¿å˜ãƒªã‚¹ãƒˆã¸" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "削除" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "管ç†" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "æ›´æ–°" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "削除" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "使用ã§ããªã„ユーザå" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" -"使用ã§ããªã„ユーザåをカンマ区切りã§æŒ‡å®šã—ã¾ã™ï¼ˆãƒ¦ãƒ¼ã‚¶ãƒ¼ç™»éŒ²æ™‚ã«ä½¿ç”¨ã§ããªã„" -"ユーザå)。" - -#: forum/settings/users.py:36 -msgid "Truncate long usernames" -msgstr "é•·ã„ユーザーåを切り詰ã‚ã‚‹" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "é•·ã„ユーザーåãŒåˆ‡ã‚Šè©°ã‚られã¾ã™ã€‚" - -#: forum/settings/users.py:42 -#, fuzzy -msgid "Show user accept rate" -msgstr "承èªçŽ‡" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -#, fuzzy -msgid "Freeze accept rate" -msgstr "承èªçŽ‡" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "ユーザåã®æœ€å¤§é•·" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "指定ã—ãŸæ–‡å—数以上ã®ãƒ¦ãƒ¼ã‚¶åã¯åˆ‡ã‚Šè©°ã‚られã€æœ«å°¾ã« ... ã‚’ä»˜åŠ ã—ã¾ã™ã€‚" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "ステータスダイヤモンドを表示" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "モデレータã¾ãŸã¯ã‚¹ãƒ¼ãƒ‘ユーザã®åå‰ã®éš£ã«\"ダイヤモンド\"を表示ã—ã¾ã™ã€‚" - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "メールアドレスã®é‡è¤‡ç¦æ¢" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "別々ã®ãƒ¦ãƒ¼ã‚¶ãŒåŒã˜ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ç™»éŒ²ã™ã‚‹äº‹ã‚’ç¦æ¢ã—ã¾ã™ã€‚" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "é›»åメール検証ãŒå¿…è¦ãªæ“作" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "検証済ã¿ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’æŒãŸãªã„ユーザã«ã¯è¨±å¯ã—ãªã„æ“作を指定ã—ã¾ã™ã€‚" - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "質å•ã‚’ã™ã‚‹" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "ç”ãˆã‚’æä¾›ã™ã‚‹" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "コメントをã™ã‚‹" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "投稿ã®é€šå ±" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "未検証ãªé›»åメールã«é€šçŸ¥ã—ãªã„" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "検証ã—ã¦ã„ãªã„メールアドレスã«ã¯é€šçŸ¥ãƒ¡ãƒ¼ãƒ«ã‚’é€ä¿¡ã—ãªã„。" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "投稿ã®ä¿ç•™æ™‚é–“(分)" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" -"投稿後ã€ãƒ¦ãƒ¼ã‚¶ãŒãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã‹ãƒ¡ãƒ¼ãƒ«ã‚’検証ã™ã‚‹ã¾ã§ã€æŠ•ç¨¿ã‚’ä¿ç•™ã™ã‚‹æ™‚間を分å˜" -"ä½ã«æŒ‡å®šã—ã¾ã™ã€‚" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "記事をä¿ç•™ä¸ã®è¦å‘Šã‚’表示(分)" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" -"ユーザãŒãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã‹ãƒ¡ãƒ¼ãƒ«ã‚’検証ã—ãŸã¨ãã€ä¿ç•™ä¸ã®æŠ•ç¨¿ã‚’自動的ã«å…¬é–‹ã›ãšã«" -"ユーザã«å•ã„åˆã‚ã›ã‚‹æ™‚間を分å˜ä½ã«æŒ‡å®šã—ã¾ã™ã€‚" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "ã™ã¹ã¦ã®Webサイトã§ã€ã©ã‚“ãªã‚¿ã‚¤ãƒ—ã®è¦–è´è€…ã§ã‚‚表示ã«é©ã—ã¦ã„ã¾ã™ã€‚" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" -"失礼ãªã‚¸ã‚§ã‚¹ãƒãƒ£ãƒ¼ã€æŒ‘発的ãªæœè£…ã®å€‹äººã€è»½ã„罵りã€ã¾ãŸã¯ã‚½ãƒ•ãƒˆãªæš´åŠ›è¡¨ç¾ãŒå«" -"ã¾ã‚Œã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" -"ä¸æ„‰å¿«ãªå†’涜ã€æ¿€ã—ã„暴力ã€ãƒŒãƒ¼ãƒ‰ã€ã¾ãŸã¯è–¬ç‰©ä¹±ç”¨ãªã©ãŒå«ã¾ã‚Œã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚" -"ã‚Šã¾ã™ã€‚" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "性的ãªç”»åƒã¾ãŸã¯éžå¸¸ã«ä¸ç©ãªæš´åŠ›ãƒãƒ¼ãƒ‰ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "Gravatarレーティング" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" -"Gravatarã§ã¯ã€ãƒ¦ãƒ¼ã‚¶ãŒè‡ªåˆ†ã®ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’自己評価ã—ã€ã©ã®ã‚ˆã†ãªè¨ªå•è€…ã«è¡¨ç¤ºã™ã‚‹" -"ã“ã¨ãŒå¦¥å½“ã§ã‚ã‚‹ã‹ã‚’示ã™ã“ã¨ãŒå‡ºæ¥ã¾ã™" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" -"(ミステリーマン)シンプルãªæ¼«ç”»é¢¨ã‚·ãƒ«ã‚¨ãƒƒãƒˆï¼ˆãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®ãƒãƒƒã‚·ãƒ¥ã«ã‚ˆã£" -"ã¦å¤‰åŒ–ã—ãªã„)" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "メールアドレスã®ãƒãƒƒã‚·ãƒ¥ã«åŸºã¥ã„ãŸå¹¾ä½•å¦æ¨¡æ§˜" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "ç•°ãªã‚‹è‰²ã€é¡”ãªã©ã‚’æŒã¤\"怪物\"を生æˆ" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "ç•°ãªã‚‹ç‰¹å¾´ã¨èƒŒæ™¯ã®é¡”を生æˆ" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "デフォルトGravatar" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" -"Gravatarã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã¨ã—ã¦ä½¿ç”¨ã§ãる多ãã®ç¨®é¡žã®ç”»åƒã‚’æä¾›ã—ã¦ã„ã¾ã™ã€‚" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "表示è¨å®š" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "サイトå„部ã®è¡¨ç¤ºæ–¹æ³•ã‚’è¨å®šã—ã¾ã™ã€‚" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "è¦ç´„ã®é•·ã•" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "内容ã®è¦ç´„ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã‚‹æ–‡å—数を指定ã—ã¾ã™ã€‚" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "最近ã®ã‚¿ã‚°ã®è¡¨ç¤ºæ•°" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "フãƒãƒ³ãƒˆãƒšãƒ¼ã‚¸ã§ã€æœ€è¿‘ã®ã‚¿ã‚°ãƒ–ãƒãƒƒã‚¯ã«è¡¨ç¤ºã•ã‚Œã‚‹ã‚¿ã‚°ã®æ•°ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/view.py:28 -#, fuzzy -msgid "Show tags in a cloud" -msgstr "ステータスダイヤモンドを表示" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "最近ã®å—賞ã®è¡¨ç¤ºæ•°" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "フãƒãƒ³ãƒˆãƒšãƒ¼ã‚¸ã§ã€æœ€è¿‘ã®å—賞ブãƒãƒƒã‚¯ã§è¡¨ç¤ºã•ã‚Œã‚‹å—賞ã®æ•°ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "関連ã™ã‚‹ã‚¿ã‚°ã®è¡¨ç¤ºæ•°" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" -"質å•ãƒªã‚¹ãƒˆãƒšãƒ¼ã‚¸ã§ã€é–¢é€£ã™ã‚‹ã‚¿ã‚°ãƒ–ãƒãƒƒã‚¯ã«è¡¨ç¤ºã•ã‚Œã‚‹ã‚¿ã‚°ã®æ•°ã‚’指定ã—ã¾ã™ã€‚ 0" -"ã«è¨å®šã™ã‚‹ã¨ã€ã™ã¹ã¦ã®ã‚¿ã‚°ã‚’表示ã—ã¾ã™ã€‚" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "投票ルール" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "投票ã®ãƒ«ãƒ¼ãƒ«ã‚’è¨å®šã—ã¾ã™ã€‚" - -#: forum/settings/voting.py:7 -msgid "Add reputation to max votes per day" -msgstr "評判ãƒã‚¤ãƒ³ãƒˆã‚’最大投票数ã«è¿½åŠ " - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" -"ユーザーã®è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã‚’ã€MAX_VOTES_PER_DAYオプションã«è¿½åŠ ã—ã¾ã™ã€‚高ã„評価ãƒ" -"イントをæŒã¤ãƒ¦ãƒ¼ã‚¶ã¯ã‚ˆã‚Šå¤šãã®æŠ•ç¥¨ã‚’è¡Œãˆã¾ã™ã€‚" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "一日ã‚ãŸã‚Šã®æœ€å¤§æŠ•ç¥¨" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "ユーザãŒä¸€æ—¥ã«è¡Œãˆã‚‹æŠ•ç¥¨æ•°ã€‚" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "残り投票数をè¦å‘Š" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "残り投票数ãŒæŒ‡å®šã—ãŸæ•°ä»¥ä¸‹ã«ãªã£ãŸã‚‰ã€è¦å‘Šã®è¡¨ç¤ºã‚’開始ã—ã¾ã™ã€‚" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "一日ã‚ãŸã‚Šã®æœ€å¤§ãƒ•ãƒ©ã‚°æ•°" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "ユーザãŒä¸€æ—¥ã«è¡Œãˆã‚‹ãƒ•ãƒ©ã‚°æ•°ã€‚" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "投稿をéžè¡¨ç¤ºã«ã™ã‚‹ãƒ•ãƒ©ã‚°å›žæ•°" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "投稿をメインページã§éžè¡¨ç¤ºã¨ãªã‚‹ãƒ•ãƒ©ã‚°å›žæ•°ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "投稿を削除ã™ã‚‹ãƒ•ãƒ©ã‚°å›žæ•°" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "投稿を削除ã™ã‚‹ãƒ•ãƒ©ã‚°å›žæ•°ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "投票ã‚ャンセル期間" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "投票後ã€ãã®æŠ•ç¥¨ã‚’å–り消ã™ã“ã¨ã®å‡ºæ¥ã‚‹æ—¥æ•°ã‚’指定ã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã›ã‚“" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "ã‚ãªãŸã¯ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ãªã„.." - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" -"...ãã—ã¦ã€ã‚ãªãŸãŒã‚¢ã‚¯ã‚»ã‚¹ã—よã†ã¨ã—ã¦ã„るリソースã¯ä¿è·ã•ã‚Œã¦ã„ã¾ã™ã€‚" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "ãƒã‚°ã‚¤ãƒ³ãƒšãƒ¼ã‚¸ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" -"ã‚ãªãŸã¯è‡ªå‹•çš„ã«5秒後ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¦ã„ãªã„å ´åˆã¯ã€ã‚¯ãƒªãƒƒã‚¯ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "ã“ã“" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "ç¦æ¢ã•ã‚Œã¦ã„ã¾ã™" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ã“ã®ãƒšãƒ¼ã‚¸ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“。" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "ã“ã‚Œã¯ã€æ¬¡ã®ç†ç”±ã«ã‚ˆã‚Šã€èµ·ãã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ï¼š" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" -"メールã®ãƒªãƒ³ã‚¯ã‹ã‚‰ã“ã®ã‚µã‚¤ãƒˆã‚’訪å•ã—ã¦ã„ã‚‹ãŒã€ç¾åœ¨åˆ¥ã®ãƒ¦ãƒ¼ã‚¶ã¨ã—ã¦ãƒã‚°ã‚¤ãƒ³ã—" -"ã¦ã„ã‚‹" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "URLã«ã‚¨ãƒ©ãƒ¼ãŒã‚ã‚Šã¾ã™ã€‚URLを確èªã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "ã“ã®ã‚¨ãƒ©ãƒ¼ãŒä¸æ£ã«è¡¨ç¤ºã•ã‚Œã‚‹å ´åˆã¯ã€" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "ã“ã®å•é¡Œã‚’å ±å‘Šã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "ホームページã¸" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "ã™ã¹ã¦ã®è³ªå•ã‚’表示" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "ã™ã¹ã¦ã®ã‚¿ã‚°ã‚’表示" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "404エラー" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "404 ページãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€è¦æ±‚ã•ã‚ŒãŸãƒšãƒ¼ã‚¸ã‚’見ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "ã“ã®è³ªå•ã‚„回ç”ãŒå‰Šé™¤ã•ã‚Œã¦ã„ã¾ã™ã€‚" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "urlã«ã‚¨ãƒ©ãƒ¼ãŒã‚ã‚Šã¾ã™ - 確èªã—ã¦ãã ã•ã„;" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "ã“ã®ã‚¨ãƒ©ãƒ¼404ãŒä¸æ£ã«è¡¨ç¤ºã•ã‚Œã‚‹å ´åˆã¯ã€" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "å‰ã®ãƒšãƒ¼ã‚¸ã«æˆ»ã‚‹" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ã‚·ã‚¹ãƒ†ãƒ エラーãŒç™ºç”Ÿã—ã¾ã—ãŸ" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "システムエラーã¯è¨˜éŒ²ã•ã‚Œã¾ã—ãŸã€‚ã§ãã‚‹ã ã‘早期ã«è§£æ±ºã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "å¿…è¦ã§ã‚ã‚Œã°ã€ã‚µã‚¤ãƒˆç®¡ç†è€…ã«ã”連絡ãã ã•ã„。" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "最新ã®è³ªå•ã‚’表示" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "タグを表示" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "メンテナンスã®ãŸã‚ã®åœæ¢ã—ã¦ã„ã¾ã™" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "アカウント機能" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "パスワードを変更" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "アカウントã®æ–°ã—ã„パスワードをè¨å®šã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "回ç”を編集" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "プレビューをéžè¡¨ç¤ºã«ã™ã‚‹" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "プレビューを表示" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "戻る" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "リビジョン" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "リビジョンをé¸æŠž" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "Markdownエディタã®ãƒ—レビューを切り替ãˆ" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "プレビューを切り替ãˆ" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "ä¿å˜" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "ã‚ャンセル" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "回ç”ã®ã‚³ãƒ„" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "回ç”ã¯ã“ã®ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã«é–¢é€£ã™ã‚‹ã‚‚ã®ã«ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "è°è«–ã™ã‚‹ã®ã§ã¯ãªãã€å›žç”を示ã™ã‚ˆã†ã«ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "ã§ãã‚‹ã ã‘詳ã—ã書ãã¾ã—ょã†ã€‚" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "明快ã‹ã¤ç°¡æ½”ã«ã€‚" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "よãã‚る質å•ã‚’å‚ç…§ã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "質å•ã™ã‚‹" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ãªãã¦ã‚‚ã€è³ªå•ã‚’書ã込むã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" -"\n" -"質å•ã‚’書ã込んã 後ã€ãƒã‚°ã‚¤ãƒ³/サインアップページãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚書ã込んã 質å•" -"ã¯ä¿å˜ã•ã‚Œã€ã‚ãªãŸã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã§ãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã‹ã€æ–°ã—ã„アカウントã§ã‚µã‚¤ãƒ³ã‚¤ãƒ³" -"ã—ã¦ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®æ¤œè¨¼ãŒå®Œäº†ã™ã‚‹ã¨å…¬é–‹ã•ã‚Œã¾ã™ã€‚" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr " " - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" -"メールアドレスã®æ¤œè¨¼ãŒå®Œäº†ã™ã‚‹ã¾ã§ã€è³ªå•ã¯å…¬é–‹ã•ã‚Œã¾ã›ã‚“ã®ã§ã”注æ„ãã ã•ã„" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "メールアドレスã®æ¤œè¨¼ãƒªãƒ³ã‚¯ã‚’é€ä¿¡ã™ã‚‹ã€‚" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "ï¼ˆå¿…é ˆï¼‰" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "ãƒã‚°ã‚¤ãƒ³/ã‚ãªãŸã®è³ªå•ã‚’投稿ã—ã¦ã‚µã‚¤ãƒ³ã‚¢ãƒƒãƒ—" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "質å•ã‚’投稿" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "ãƒãƒƒã‚¸" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "ユーザーã¯ã€ãƒãƒƒã‚¸ã‚’授与ã•ã‚Œã¦ã„ã¾ã™ï¼š" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "ãƒãƒƒã‚¸ã®æ¦‚è¦" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "ãƒãƒƒã‚¸" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "質å•ã‚„回ç”ã€æŠ•ç¥¨ã«ã‚ˆã£ã¦ã€ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã‹ã‚‰è¡¨å½°ã•ã‚Œã¾ã™ã€‚" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "以下ã¯ã€ãƒãƒƒã‚¸ã®ç¨®é¡žã¨ã€ãã‚Œãžã‚Œã®ãƒãƒƒã‚¸ãŒæŽˆä¸Žã•ã‚ŒãŸå›žæ•°ã®ä¸€è¦§ã§ã™ã€‚" - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "コミュニティãƒãƒƒã‚¸" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "金ãƒãƒƒã‚¸ï¼šæœ€é«˜ã®å誉ã§ã‚ã‚Šã€éžå¸¸ã«ã¾ã‚Œã§ã™" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "金" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "金ãƒãƒƒã‚¸ã®èª¬æ˜Ž" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "銀ãƒãƒƒã‚¸ï¼šéžå¸¸ã«é«˜ã„貢献ã«ã‚ˆã‚Šã€æ™‚折授与ã•ã‚Œã¾ã™" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "銀" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "銀色ã®ãƒãƒƒã‚¸ã®èª¬æ˜Ž" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "é’銅製ã®ãƒãƒƒã‚¸ï¼šç‰¹åˆ¥ãªæ „誉ã¨ã—ã¦ã€ã—ã°ã—ã°æŽˆä¸Žã•ã‚Œã¾ã™" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "é’銅" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "é’銅製ã®ãƒãƒƒã‚¸ã®èª¬æ˜Ž" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "よã‚ã—ã„ã§ã™ã‹ï¼Ÿ" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "ã¯ã„" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "ã„ã„ãˆ" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "メッセージ:" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "é–‰ã˜ã‚‹" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "Ok" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -msgid "word" -msgstr "" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -msgid "character" -msgstr "" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "質å•ã‚’クãƒãƒ¼ã‚ºã™ã‚‹" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "質å•ã‚’クãƒãƒ¼ã‚ºã™ã‚‹" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "ç†ç”±" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "クãƒãƒ¼ã‚ºã™ã‚‹" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "ホーム" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "フィードãƒãƒƒã‚¯" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "フィードãƒãƒƒã‚¯ã‚’ãŠå¾…ã¡ã—ã¦ã„ã¾ã™" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" -"\n" -" <span class='big strong'>%(user_name)s</span> 殿ã€ãƒ•ã‚£ãƒ¼ãƒ‰ãƒãƒƒã‚¯" -"ã‚’ãŠå¾…ã¡ã—ã¦ãŠã‚Šã¾ã™ã€‚ メッセージã¯ä¸‹ã«ã”記入ãã ã•ã„。\n" -" " - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" -"\n" -" <span class='big strong'>訪å•è€…</span> 殿ã€ãƒ•ã‚£ãƒ¼ãƒ‰ãƒãƒƒã‚¯ã‚’ãŠå¾…ã¡" -"ã—ã¦ãŠã‚Šã¾ã™ã€‚n メッセージã¯ä¸‹ã«ã”記入ãã ã•ã„。\n" -" " - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "(ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯å¿…é ˆã§ã™ï¼‰" - -#: forum/skins/default/templates/feedback.html:53 -#, fuzzy -msgid "(wrong captcha)" -msgstr "無効ãªCAPTCHA" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "フィードãƒãƒƒã‚¯ã‚’é€ä¿¡ã™ã‚‹" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "ホームページã«æˆ»ã‚‹" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "質å•ã™ã‚‹" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "検索" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "質å•" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "ユーザー" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "よã†ã“ã" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "ãƒã‚°ã‚¢ã‚¦ãƒˆ" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" -"<strong>ãƒã‚°ã‚¢ã‚¦ãƒˆ</strong> をクリックã™ã‚‹ã¨ã€ã“ã®ãƒ•ã‚©ãƒ¼ãƒ©ãƒ ã‹ã‚‰ã¯ãƒã‚°ã‚¢ã‚¦ãƒˆ" -"ã—ã¾ã™ãŒã€OpenIDプãƒãƒã‚¤ãƒ€ã‹ã‚‰ã¯ã‚µã‚¤ãƒ³ã‚ªãƒ•ã•ã‚Œã¾ã›ã‚“。</p><p>完全ã«ã‚µã‚¤ãƒ³ã‚ªãƒ•" -"ã™ã‚‹ã«ã¯ã€ OpenIDプãƒãƒã‚¤ãƒ€ã‹ã‚‰ã‚‚サインオフã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "ãƒã‚°ã‚¢ã‚¦ãƒˆ" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "Markdownã®ãƒ˜ãƒ«ãƒ—" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "Markdownã®ã‚·ãƒ³ã‚¿ãƒƒã‚¯ã‚¹" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" -"ã“ã®ãƒ‰ã‚ュメントã§ã¯ã€ï¼ˆæŠ•ç¨¿è€…ã«ã¨ã£ã¦ï¼‰Markdown記法ã®é‡è¦ãªéƒ¨åˆ†èª¬æ˜Žã—ã¦ã„ã¾" -"ã™ã€‚ã“ã“ã«è¨˜è¼‰ã•ã‚Œã¦ã„ãªã„記法ã¯ã€John Gruberã®<a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" rel=\"nofollow\">Markdown " -"Syntaxシンタックス</a>ã‚’å‚ç…§ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "ヘッダ" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" -"トップレベルã®ãƒ˜ãƒƒãƒ€ã¯ã€ç‰å·ã§ãƒ†ã‚ストã«ä¸‹ç·šã‚’引ãã€ç¬¬äºŒãƒ¬ãƒ™ãƒ«ã®ãƒ˜ãƒƒãƒ€ã¯ãƒ€ãƒƒ" -"シュã§ä¸‹ç·šã‚’引ãã¾ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "ã“ã‚Œã¯H1ã§ã™" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "ã“ã‚Œã¯ã€H2ã§ã™" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" -"ãƒãƒƒã‚·ãƒ¥(#)記å·ã‚’å…ˆé ã«ä»˜ã‘ã¦ãƒ˜ãƒƒãƒ€ã¨ã™ã‚‹ã“ã¨ã‚‚出æ¥ã¾ã™ã€‚ãƒãƒƒã‚·ãƒ¥è¨˜å·ã®æ•°ã§" -"ヘッダレベルãŒæ±ºã¾ã‚Šã€ãƒãƒƒã‚·ãƒ¥è¨˜å·ãŒä¸€ã¤ãªã‚‰ãƒ˜ãƒƒãƒ€ãƒ¬ãƒ™ãƒ«1ã€äºŒã¤ãªã‚‰ãƒ˜ãƒƒãƒ€ãƒ¬ãƒ™" -"ル2ã¨ãªã‚Šã¾ã™ã€‚:" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "ã“ã‚Œã¯ã€H3ã§ã™" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" -"ã©ã¡ã‚‰ã®è¨˜æ³•ã§ã‚‚最終的ãªæ–‡æ›¸ã¯ãƒ•ã‚©ãƒ¼ãƒžãƒƒãƒˆã•ã‚Œã€åŒã˜ã‚ˆã†ã«è¦‹ãˆã¾ã™ã®ã§ã€ãƒ†ã‚" -"スト文書ã¨ã—ã¦èªã¿ã‚„ã™ã„ã¨æ€ã†æ–¹ã§è¨˜è¿°ã™ã‚‹ã¨è‰¯ã„ã§ã—ょã†ã€‚" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "段è½" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "段è½ã¯ç©ºç™½è¡Œã«å›²ã¾ã‚Œã¦ã„ã¾ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "ã“ã‚Œã¯ã€æ®µè½ã®ä¸€ã¤ã§ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "ã“ã‚Œã¯ç¬¬2段è½ã§ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "リンク" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" -"\n" -"リンクã¯äºŒã¤ã®éƒ¨åˆ†ã«åˆ†ã‹ã‚Œã¦ã„ã¾ã™ã€‚最åˆã®éƒ¨åˆ†ã¯ãƒ¦ãƒ¼ã‚¶ã«è¡¨ç¤ºã•ã‚Œã‚‹ãƒ†ã‚スト" -"ã§ã€ãƒ–ラケットã§å›²ã¾ã‚Œã¦ã„ã¾ã™ã€‚二番目ã®éƒ¨åˆ†ã¯ãƒªãƒ³ã‚¯å…ˆã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã€ã‹ã£ã“ã§" -"囲ã¾ã‚Œã¦ã„ã¾ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "リンクテã‚スト" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "http://example.com/" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "書å¼è¨å®š" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" -"ボールドã®ãƒ†ã‚ストを示ã™ã«ã¯ã€2ã¤ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ï¼ˆ*)記å·ã¾ãŸã¯2ã¤ã®ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹" -"コア(_)記å·ã¨ãƒ†ã‚ストを囲ã¿ã¾ã™ï¼š" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "ã“ã‚Œã¯å¤ªå—ã§è¡¨ç¤ºã•ã‚Œã¾ã™" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "ã“れも太å—ã§è¡¨ç¤ºã•ã‚Œã¾ã™" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" -"斜体ã®ãƒ†ã‚ストを示ã™ãŸã‚ã«ä¸€ã¤ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ï¼ˆ*)記å·ã¾ãŸã¯ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢" -"(_)記å·ã¨ãƒ†ã‚ストを囲ã¿ã¾ã™ï¼š" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "ã“ã‚Œã¯ã‚¤ã‚¿ãƒªãƒƒã‚¯ä½“ã§ã™" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "ã“れもイタリック体ã§ã™" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" -"斜体ã€å¤ªå—ã®ãƒ†ã‚ストを示ã™ã«ã¯3ã¤ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ï¼ˆ*)記å·ã§ãƒ†ã‚ストを囲むã€ã¾" -"ãŸã¯ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢ï¼ˆ_)記å·ï¼š" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "ã“ã‚Œã¯å¤ªå—ã§æ–œä½“ã§ã™" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "ã“れも太å—ã§æ–œä½“ã§ã™" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "Blockquotes" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" -"ã‚¤ãƒ³ãƒ‡ãƒ³ãƒˆé ˜åŸŸã¯ã€è¡Œé ã«å±±ã‹ã£ã“(>)文å—を指定ã—ã¦blockquoteã«ã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "ã“ã‚Œã¯blockquoteã®ä¸€éƒ¨ã§ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "ã“ã‚Œã¯åŒã˜blockquoteã®ä¸€éƒ¨ã§ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" -"å…¨ã¦ã®è¡Œã«>を指定ã—ãªãã¦ã‚‚ã€blockquoteã®å…ˆé ã ã‘ã«è¨˜å…¥ã™ã‚Œã°ã€ãã®å¾Œã®ç©º" -"白行ã¾ã§ãŒblockquoteã¨ãªã‚Šã¾ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "ã“ã‚Œã¯ãƒ–ラケットãªãã¨ã‚‚ã¾ã blockquote" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "空白行ã§blockquoteを終了ã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "リスト" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" -"記法ã§ç•ªå·ä»˜ãリストを作æˆã™ã‚‹ã«ã¯ã€è¡Œé ã«æ•°å—ã®å¾Œã«ãƒ”リオドã¨ã‚¹ãƒšãƒ¼ã‚¹ã‚’記入" -"ã—ã¾ã™ã€‚ã“ã®æ•°å—ã¯å®Ÿéš›ã«è¡¨ç¤ºã•ã‚Œã‚‹æ•°å—ã¨ã¯ãªã‚Šã¾ã›ã‚“。" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "アイテム" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "箇æ¡æ›¸ãを作æˆã™ã‚‹ã«ã¯ã€è¡Œé ã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ï¼ˆ*)を記入ã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "リストã®é …ç›®" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "別ã®ãƒªã‚¹ãƒˆé …ç›®" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "3ã¤ã‚ã®ãƒªã‚¹ãƒˆã‚¢ã‚¤ãƒ†ãƒ " - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "ãã®ä»–ã®è¨˜æ³•" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" -"ã“ã“ã§èª¬æ˜Žã—ãŸã®ã¯Markdownシンタックスã®ã»ã‚“ã®ä¸€éƒ¨ã§ã™ãŒã€ã»ã¨ã‚“ã©ã®è‘—者ã«ã¯" -"ã“ã‚Œã§å分ã§ã—ょã†ã€‚ã•ã‚‰ã«è©³ã—ãMarkdownã«ã¤ã„ã¦ã—ã‚ŠãŸã‘ã‚Œã°ã€<a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">元祖Markdownã®ãƒšãƒ¼ã‚¸</a> ã‚’å‚ç…§ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "ã‚ãªãŸãŒäººé–“ã§ã‚ã‚‹ã“ã¨ã‚’証明ã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "ç§ã¯äººé–“ã§ã™" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "検索" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "ブラウザã§" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "ページã‚ãŸã‚Šã®æŠ•ç¨¿æ•°" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "å‰" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "ç¾åœ¨ã®ãƒšãƒ¼ã‚¸" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "ページ番å·" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "次ã®ãƒšãƒ¼ã‚¸" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "プライãƒã‚·ãƒ¼ ãƒãƒªã‚·ãƒ¼" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "プライãƒã‚·ãƒ¼ã«ã¤ã„ã¦ä¸€èˆ¬çš„ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "サイトã®è¨ªå•è€…" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "訪å•è€…ã«ã¤ã„ã¦åŽé›†ã•ã‚Œã‚‹æŠ€è¡“æƒ…å ±ã«ã¤ã„ã¦" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "å€‹äººæƒ…å ±" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "å€‹äººæƒ…å ±ãƒãƒªã‚·ãƒ¼ã®è©³ç´°" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "ãã®ä»–ã®ã‚µãƒ¼ãƒ“ス" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "第三者ã¨å…±æœ‰ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ã®è©³ç´°" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "クッã‚ーãƒãƒªã‚·ãƒ¼ã®è©³ç´°" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "ãƒãƒªã‚·ãƒ¼ã®å¤‰æ›´" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "ã©ã®ã‚ˆã†ã«ãƒ—ライãƒã‚·ãƒ¼ãƒãƒªã‚·ãƒ¼ã‚’変更ã™ã‚‹ã‹" - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "'%(tagname)s' ã‚¿ã‚°ã®è³ªå•ã‚’検索" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "ã“ã®è³ªå•ã¯ã‚¯ãƒãƒ¼ã‚ºã•ã‚Œã¾ã—ãŸ: %(close_reason)s by" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "%(counter)s 件ã®å›žç”:" -msgstr[1] "%(counter)s 件ã®å›žç”:" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "ã‚ãªãŸã®å›žç”" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "ã“ã®è³ªå•ã«ä¸€ç•ªä¹—ã‚Šï¼" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "ãƒã‚°ã‚¤ãƒ³/サインアップã—ã¦å›žç”を投稿ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "自分ã®è³ªå•ã«å›žç”" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "質å•ã«ç”ãˆã‚‹" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "ã“ã®è³ªå•ã®ã‚¿ã‚°" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "タグ検索;" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "ã‚¿ã‚°ã§æ¤œç´¢" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "質å•ã®æŠ•ç¨¿æ—¥" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "質å•ã®è¡¨ç¤ºå›žæ•°" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "回" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "最終更新日" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "関連ã™ã‚‹è³ªå•" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "質å•ã‚’編集" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "タイトルã®ä»˜ã‘æ–¹" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "ã‚¿ã‚°ã¨ã¯" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "タグを変更" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "ãªãœã‚¿ã‚°ã‚’指定ã—ãŸã‚Šç·¨é›†ã—ãŸã‚Šã™ã‚‹ã®ã§ã—ょã†ã‹ï¼Ÿ" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "ã‚¿ã‚°ã¯ã€è³ªå•ã‚’æ•´ç†ã™ã‚‹ãŸã‚ã«å½¹ç«‹ã¡ã¾ã™" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "タグ編集者ã¯ã€ç‰¹åˆ¥ãªè³žã‚’コミュニティより授与ã•ã‚Œã¾ã™" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "回ç”" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "投票" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "ビュー" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "質å•RSSフィードを購èªã™ã‚‹" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "質å•ã‚’å†ã‚ªãƒ¼ãƒ—ンã™ã‚‹" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "クãƒãƒ¼ã‚ºæ¸ˆã¿ã®è³ªå•ã‚’オープンã™ã‚‹" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "質å•ã¯ä»¥ä¸‹ã®ç†ç”±ã§ã‚¯ãƒãƒ¼ã‚ºã•ã‚ŒãŸ" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "クãƒãƒ¼ã‚ºæ—¥" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "質å•ã‚’å†ã‚ªãƒ¼ãƒ—ンã™ã‚‹" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "改訂履æ´" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "クリックã§ãƒªãƒ“ジョンã®è¡¨ç¤º/éžè¡¨ç¤ºã‚’切り替ãˆ" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" -"\n" -"\t %(app_name)s を検索\n" -"\t" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "ã“ã®è³ªå•ã‚’フォãƒãƒ¼" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "メールã§ãƒ•ã‚©ãƒãƒ¼" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "ã“ã®è³ªå•ã‚’自動的ã«è³¼èªã—ã¾ã—ãŸ" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "ã“ã®è³ªå•ã‚’è³¼èªã—ã¦ã„ã¾ã™" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "ã“ã®è³ªå•ã‚’è³¼èªã—ã¦ã„ã¾ã›ã‚“" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "è³¼èªã‚’解除" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "è³¼èªã™ã‚‹" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" -"\n" -" (<a href=\"%(subscriptions_url)s\">プãƒãƒ•ã‚¡ã‚¤ãƒ«</a> ã§é€šçŸ¥è¨å®šã‚’" -"変更ã§ãã¾ã™)\n" -" " - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "サインインã™ã‚Œã°ã€æ›´æ–°çŠ¶æ³ã‚’è³¼èªã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "RSSã§è³¼èª" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "回ç”ã‚’è³¼èªã™ã‚‹" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "回ç”" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "コメントや回ç”ã‚’è³¼èªã™ã‚‹" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "回ç”ã¨ã‚³ãƒ¡ãƒ³ãƒˆ" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "タグリスト" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "クエリã«ä¸€è‡´ã™ã‚‹å…¨ã¦ã®ã‚¿ã‚°" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "見ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "èªè¨¼è¨å®š" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "ã“れらã¯ã€ç¾åœ¨ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«é–¢é€£ä»˜ã‘られã¦ã„る外部èªè¨¼ãƒ—ãƒãƒã‚¤ãƒ€ã§ã™ã€‚" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "アカウントã¯å¤–部èªè¨¼ãƒ—ãƒãƒã‚¤ãƒ€ã«é–¢é€£ä»˜ã‘られã¦ã„ã¾ã›ã‚“。" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "プãƒãƒã‚¤ãƒ€ã‚’è¿½åŠ " - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" -"ã“ã“ã§ãƒ‘スワードを変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚パスワードを忘れãªã„ã§ãã ã•ã„!" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" -"パスワードをè¨å®šã™ã‚Œã°ã€æ™®é€šã®ãƒ¦ãƒ¼ã‚¶åã¨ãƒ‘スワードã§æ™®é€šã«ãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã“ã¨ãŒ" -"ã§ãã¾ã™ï¼" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "パスワードを作æˆã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "ユーザ登録" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "ã“ã®ã‚µã‚¤ãƒˆã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«ã€OpenIDを接続ã—ã¾ã™" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "次ã®ãƒ—ãƒãƒã‚¤ãƒ€ã«æŽ¥ç¶šã—ã¾ã—ãŸ: " - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" -"スクリーンãƒãƒ¼ãƒ を指定ã—ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’確èªã—ã¦ãã ã•ã„。コミュニティ内ã§" -"ã®ã€èˆˆå‘³ã®ã‚る活動ã®é€šçŸ¥ã‚’å—ã‘ã‚‹ãŸã‚ã«ã¯ã€æ£ã—ã„メールアドレスãŒå¿…è¦ã§ã™ã€‚コ" -"ミュニティã«ã‚ˆã‚Šæ·±ãé–¢ã‚ã‚Šåˆã†ãŸã‚ã«ã€ãœã²ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’登録ã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¯ç™»éŒ²æ¸ˆã¿ã§ã™ã€‚別ã®åå‰ã‚’指定ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "アカウントを作æˆ" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "ã“ã®é›»åメールã¯æ¤œè¨¼æ¸ˆã¿ã§ã™" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "検証済ã¿" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "%(prefix)s メールアドレスを確èªã—ã¦ãã ã•ã„ %(app_name)s" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "ã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’検証ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒªãƒ³ã‚¯ã‚’使用ã—ã¦ãã ã•ã„:" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "é›»åメールアドレスを検証" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" -"上ã®ãƒªãƒ³ã‚¯ã‚’クリックã§ããªã„å ´åˆã¯ã€ã“ã®URLをコピーã—ã¦ãƒ–ラウザã®ã‚¢ãƒ‰ãƒ¬ã‚¹ãƒãƒ¼" -"ã«ãƒšãƒ¼ã‚¹ãƒˆã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" -"ã“ã®URLをコピーã—ã¦ãƒ–ラウザã®ã‚¢ãƒ‰ãƒ¬ã‚¹ãƒãƒ¼ã«ãƒšãƒ¼ã‚¹ãƒˆã—ã€ã“ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’検" -"証ã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "ãƒã‚°ã‚¤ãƒ³" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "ユーザãƒã‚°ã‚¤ãƒ³" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "ã¾ãŸã¯..." - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" -"\n" -"<b><a href=\"http://openid.net/\">OpenID</a></b>を使ã£ãŸå¤–部ã®ãƒã‚°ã‚¤ãƒ³ã‚µãƒ¼ãƒ" -"を利用ã™ã‚‹ã¨ã€ãƒ‘スワードをã‚ãªãŸã¨ãƒã‚°ã‚¤ãƒ³ãƒ—ãƒãƒã‚¤ãƒ€ä»¥å¤–ã«çŸ¥ã‚‰ã‚Œã‚‹å±é™ºãŒãª" -"ãã€ä»–ã®ã‚µã‚¤ãƒˆã®ãƒ‘スワードを覚ãˆã¦ãŠãå¿…è¦ã‚‚ãªããªã‚Šã¾ã™ã€‚" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "ãƒã‚°ã‚¤ãƒ³å¾Œã«ãƒ¡ãƒ¼ãƒ«ã‚’検証" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "サインインã§å•é¡ŒãŒç™ºç”Ÿã—ãŸã‚‰" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "をクリック" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "・" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "ãªãœOpenIDを使ã†ã®ã‹ï¼Ÿ" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "openidを使ãˆã°ç°¡å˜" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "openid ã‚’å†åˆ©ç”¨ã§ãã‚‹" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "openidã¯åºƒã使ã‚ã‚Œã¦ã„ã‚‹" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "openidã¯äººæ°—ã®ã‚るオープンãªæ¨™æº–" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "詳細ã¯ã“ã¡ã‚‰" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "OpenIDã‚’å–å¾—ã™ã‚‹" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "%(prefix)s 臨時ãƒã‚°ã‚¤ãƒ³ã®ãƒªãƒ³ã‚¯" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "以下ã®ãƒªãƒ³ã‚¯ã§ã€ä¸€åº¦ã ã‘ %(app_name)s ã«ãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "アカウントã«ç§»å‹•" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "以下ã®ãƒªãƒ³ã‚¯ã§ã€ä¸€åº¦ã ã‘ %(app_name)s ã«ãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "臨時ãƒã‚°ã‚¤ãƒ³ã‚ーをé€ä¿¡ã™ã‚‹" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "アカウント; 臨時ãƒã‚°ã‚¤ãƒ³ã‚ーをé€ä¿¡ã™ã‚‹" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" -"\n" -"ãƒã‚°ã‚¤ãƒ³ã§å•é¡ŒãŒç™ºç”Ÿã—ãŸã‚Šã€ãƒ‘スワードを忘れãŸã‚Šã—ãŸå ´åˆã¯ã€è‡¨æ™‚ãƒã‚°ã‚¤ãƒ³ã‚ー" -"を発行ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚メールアドレスãŒå…¥åŠ›ã•ã‚Œã¦ã„ã‚Œã°ã€ä¸€æ™‚çš„ã«ä½¿ç”¨å¯èƒ½" -"ãªã‚¢ã‚¯ã‚»ã‚¹ç”¨ã®ãƒªãƒ³ã‚¯ã‚’é€ä¿¡ã—ã¾ã™ã€‚ã“ã®ãƒˆãƒ¼ã‚¯ãƒ³ã§ã€ä¸€å®šæœŸé–“内ã«ä¸€åº¦ã ã‘ãƒã‚°ã‚¤" -"ンã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "リンクをé€ä¿¡" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "%(prefix)s よã†ã“ã %(app_name)s ã¸" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" -"ã‚„ã‚ã€ã‚ˆã†ã“ã %(app_name)s ã¸ã€‚ ãŠå¿™ã—ã„ã§ã—ょã†ã‹ã‚‰ã€ç”¨ä»¶ã¯æ‰‹çŸã«ã™ã¾ã›ã¾" -"ã—ょã†ã€‚" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "以下ã¯ã‚ãªãŸã®ãƒã‚°ã‚¤ãƒ³æƒ…å ±ã§ã™(冷暗所ã«ä¿ç®¡ã®ã“ã¨)" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "ユーザーå:" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "パスワード:ç§ãŸã¡ãŒãƒ‘スワードを平文ã§é€ã‚‹ã¨ã§ã‚‚?" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "次ã®ãƒªãƒ³ã‚¯ã§ã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’確èªã—ã¾ã™ï¼š" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "%(author)s ã®å›žç”" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "%(who)s ãŒã“ã®å›žç”ã‚’æ£ã—ã„ç”ãˆã¨ã—ã¦æŽ¡ç”¨ã—ã¾ã—ãŸã€‚" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "ã“ã®å›žç”を採用" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" -"\n" -"ã‚‚ã—ã“ã®å›žç”ãŒæ°—ã«å…¥ã£ãŸã‚‰ã€%(awarded_user)s ã«è©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã§ã”褒美をã‚ã’ã¦ã" -"ã ã•ã„。\n" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" -"\n" -"贈りãŸã„ãƒã‚¤ãƒ³ãƒˆã‚’下ã®ã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ã‹å…¥åŠ›ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æŒ‡å®šã—ã¦ãã ã•ã„。\n" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "ãƒã‚¤ãƒ³ãƒˆï¼š" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "æ–‡å—足りã¾ã›ã‚“" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "æ–‡å—書ãè¾¼ã‚ã¾ã™" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr "コメント" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "ã‚ャンセル" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "回ç”ã¨ã‚³ãƒ¡ãƒ³ãƒˆ" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "コメントを編集" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "コメントを削除" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -msgid "Convert comment to answer" -msgstr "コメントを回ç”ã«å¤‰æ›´" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "今" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "ãŠæ°—ã«å…¥ã‚Š (ã‚‚ã†ä¸€åº¦ã‚¯ãƒªãƒƒã‚¯ã™ã‚‹ã¨ã‚ャンセル)" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "質å•ã«å¤‰æ›´" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "%(showing)s / %(total)s を表示ä¸" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "ã‚³ãƒ¡ãƒ³ãƒˆã‚’è¿½åŠ " - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "コメント対象:" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -msgid "Convert to question" -msgstr "質å•ã«å¤‰æ›´" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "ãŠæ°—ã«å…¥ã‚Š (ã‚‚ã†ä¸€åº¦ã‚¯ãƒªãƒƒã‚¯ã™ã‚‹ã¨ã‚ャンセル)" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" -"\n" -"パーマãƒãƒ³ãƒˆãƒªãƒ³ã‚¯ã‚’クリップボードã«ã‚³ãƒ”ーã—ã¾ã™ã‹?\n" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -msgid "Permanent link" -msgstr "パーマãƒãƒ³ãƒˆãƒªãƒ³ã‚¯" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "詳細" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "一覧ã‹ã‚‰ç†ç”±ã‚’é¸æŠžã™ã‚‹ã‹ã€ãƒ†ã‚ストボックスã«ç†ç”±ã‚’記入ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "ã“ã®æŠ•ç¨¿ã«æŠ•ç¥¨(ã‚‚ã†ä¸€åº¦ã‚¯ãƒªãƒƒã‚¯ã™ã‚‹ã¨ã‚ャンセル)" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "ç¾åœ¨ã®å¾—票数" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "ã“ã®æŠ•ç¨¿ã«å対票(ã‚‚ã†ä¸€åº¦ã‚¯ãƒªãƒƒã‚¯ã™ã‚‹ã¨ã‚ャンセル)" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "ã“ã® %(post_type)s ã¯\"コミュニティwiki\"ã¨ãªã‚Šã¾ã—ãŸ" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "自由ã«<a href=\"%(edit_url)s\">編集</a>ã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "%(prefix)s %(question_title)s ã¸ã®å›žç”ãŒæŽ¡ç”¨ã•ã‚Œã¾ã—ãŸ" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" -"\n" -" %(accepted_by_link)s 㯠%(answer_author_link)s's ã®å›žç”ã‚’ " -"%(question_link)s.\n" -"ã®å›žç”ã¨ã—ã¦æŽ¡ç”¨ã—ã¾ã—㟠" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" -"\n" -"%(accepted_by)s 㯠%(answer_author)s's ã®å›žç”ã‚’ \"%(question_title)s\" ã®å›žç”" -"ã¨ã—ã¦æŽ¡ç”¨ã—ã¾ã—ãŸ.\n" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "ã“ã‚“ã«ã¡ã¯" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "ã‚ã‚ŠãŒã¨ã†" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "追伸 - å—ã‘å–る通知ã¯ã„ã¤ã§ã‚‚微調整ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "追伸 - å—ã‘å–る通知ã¯ã„ã¤ã§ã‚‚微調整ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ï¼š" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -" %(app_name)s community ã®ã€æœ€è¿‘ã®å‡ºæ¥äº‹ã‚’ãŠçŸ¥ã‚‰ã›ã—ã¾" -"ã™ã€‚ " - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" -"\n" -" コミュニティ㫠%(new_member_count)s 人ã®ãƒ¡ãƒ³ãƒãƒ¼ãŒåŠ å…¥ã—ã¾ã—ãŸã€‚ " -"%(new_member_links)s ãŒå…ƒæ°—ã«æ´»å‹•ã—ã¦ã„ã¾ã™ã€‚\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -" %(new_member_links)s ㌠the %(app_name)s コミュニティã«å‚åŠ ã—ã¾ã—" -"ãŸã€‚\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" -"\n" -" å‰å›žã®ãŠçŸ¥ã‚‰ã›ä»¥é™ã€%(new_question_count)s " -"%(new_questions_link)s ãŒæŠ•ç¨¿ã•ã‚Œã¾ã—ãŸã€‚\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "以下ã®è³ªå•ã‚’ãŠå‹§ã‚ã—ã¾ã™:" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" -"以下ã®è³ªå•ã«ã¯ã€ã¾ã 誰も回ç”ã—ã¦ã„ã¾ã›ã‚“。ã‚ãªãŸãªã‚‰ãã£ã¨åŠ©ã‘られるã®ã§ã¯ãª" -"ã„ã§ã—ょã†ã‹ï¼Ÿ:" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "%(subscriptions_link)s ã¯æœ€å¾Œã«ã”覧ã«ãªã£ãŸä»¥é™ã«æ›´æ–°ã•ã‚Œã¦ã„ã¾ã™:" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" -"\n" -" %(flagged_url)s ã«ãƒ•ãƒ©ã‚°ãŒãƒžãƒ¼ã‚¯ã•ã‚Œã¾ã—ãŸã€‚\n" -" " - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" -"å‰å›žã®ãŠçŸ¥ã‚‰ã›ä»¥é™ã®ã€ %(app_name)s コミュニティã®å‡ºæ¥äº‹ã‚’ãŠçŸ¥ã‚‰ã›ã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" -"コミュニティ㫠%(new_member_count)s åã®ãƒ¡ãƒ³ãƒãƒ¼ãŒå‚åŠ ã—ã¾ã—ãŸã€‚ " -"%(new_member_links)s ãŒå…ƒæ°—ã«æ´»å‹•ã—ã¦ã„ã¾ã™ã€‚" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "%(new_member_links)s ㌠%(app_name)s コミュニティã«å‚åŠ ã—ã¾ã—ãŸã€‚" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "å‰å›žã®ãŠçŸ¥ã‚‰ã›ä»¥é™ã€%(new_question_count)s 件ã®è³ªå•ãŒæŠ•ç¨¿ã•ã‚Œã¾ã—ãŸã€‚" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "最後ã®ã”訪å•ä»¥é™ã€è³¼èªã—ã¦ã„る質å•ã«ã„ãã¤ã‹æ›´æ–°ãŒã‚ã‚Šã¾ã—ãŸ:" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "%(flagged_count)s 件ã®æŠ•ç¨¿ã«ãƒ•ãƒ©ã‚°ãŒãƒžãƒ¼ã‚¯ã•ã‚Œã¾ã—ãŸã€‚" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "%(prefix)s %(app_name)s ã‹ã‚‰ã®ãƒ•ã‚£ãƒ¼ãƒ‰ãƒãƒƒã‚¯" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "é€ä¿¡è€…" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "匿å" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "メール" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "メッセージ本文:" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "%(prefix)s 回ç”ãŒæŠ•ç¨¿ã•ã‚Œã¾ã—ãŸ: %(question_title)s" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -" %(author_link)s ãŒã€ %(app_name)s 㧠%(question_link)sã¸ã®å›žç”ã‚’" -"投稿ã—ã¾ã—ãŸ:\n" -" " - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "ã”一èªã®ä¸Šã€æ˜¯éžã¨ã‚‚投票ã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" -"\n" -"%(answer_author)s ãŒã€%(safe_app_name)s ã§\"%(question_title)s\" ã¸ã®å›žç”を投" -"稿ã—ã¾ã—ãŸ:\n" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "%(prefix)s %(safe_newmember_name)s ㌠%(safe_app_name)s ã«åŠ ã‚ã‚Šã¾ã—ãŸ" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" -"\n" -" %(newmember_link)s ㌠%(app_name)s ã«åŠ ã‚ã‚Šã¾ã—ãŸã€‚\n" -" <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s\">" -"%(newmember_name)s ã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«</a>ã‚’ã”覧ãã ã•ã„。\n" -" " - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" -"\n" -"%(safe_newmember_name)s ㌠%(safe_app_name)sã«åŠ ã‚ã‚Šã¾ã—ãŸã€‚ " -"%(safe_newmember_name)s ã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯ä»¥ä¸‹ã®urlã§ã™:\n" -"%(app_url)s%(newmember_url)s\n" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "%(prefix)s æ–°ã—ã„質å•: %(question_title)s on %(safe_app_name)s" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" -"\n" -" %(author_link)s ㌠%(app_name)s ã«, è³ªå• " -"%(question_link)s (ã‚¿ã‚°: \"<em>%(tag_links)s</em>\") を投稿ã—ã¾ã—ãŸã€‚\n" -" 内容:\n" -" " - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" -"\n" -"%(question_author)s ㌠%(safe_app_name)s ã« è³ªå• \"%(question_title)s\" (ã‚¿" -"ã‚°: %(question_tags)s)を投稿ã—ã¾ã—ãŸ:\n" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -#, fuzzy -msgid "Site Administration" -msgstr "管ç†" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "OSQA管ç†ã‚¨ãƒªã‚¢" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "djangoスタイルã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«åˆ‡ã‚Šæ›¿ãˆ" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "管ç†ãƒ¡ãƒ‹ãƒ¥ãƒ¼" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "メンテナンスモード" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "フラグãŒè¨å®šã•ã‚ŒãŸæŠ•ç¨¿" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -msgid "Create User" -msgstr "ユーザ登録" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -msgid "Quick creation of a new user" -msgstr "æ–°ã—ã„ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’ç´ æ—©ã作æˆ" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "ä¿å˜" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "ダッシュボード" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "よã†ã“ãOSQA管ç†é ˜åŸŸã«ã€‚" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "クイック統計" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "éŽåŽ»24時間" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "ユーザー" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "éŽåŽ»24時間ã«å‚åŠ " - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "サイトã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" -"ç¾åœ¨ã€ã“ã®ã‚µã‚¤ãƒˆã¯ãƒ–ートストラップモードã«è¨å®šã•ã‚Œã¦ã„ã¾ã™ã€‚デフォルトã«æˆ»ã™" -"å ´åˆã¯ä¸‹ã®ãƒœã‚¿ãƒ³ã‚’クリックã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" -"ç¾åœ¨ã€ã“ã®ã‚µã‚¤ãƒˆã¯æ¨™æº–モードã«è¨å®šã•ã‚Œã¦ã„ã¾ã™ã€‚ブートストラップモードã«å¤‰æ›´" -"ã™ã‚‹å ´åˆã¯ä¸‹ã®ãƒœã‚¿ãƒ³ã‚’クリックã—ã¦ãã ã•ã„。" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" -"ã“ã®ã‚µã‚¤ãƒˆã¯ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã•ã‚ŒãŸè¨å®šã«ãªã£ã¦ã„ã¾ï½“。デフォルトã€ã¾ãŸã¯ãƒ–ートス" -"トラップモードã«å¤‰æ›´ã™ã‚‹å ´åˆã¯ä¸‹ã®ãƒœã‚¿ãƒ³ã‚’クリックã—ã¦ãã ã•ã„" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "デフォルトè¨å®šã«æˆ»ã—ã¾ã™ã‹?" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "デフォルトè¨å®šã«æˆ»ã™" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "ブートストラップモードã«åˆ‡ã‚Šæ›¿ãˆã¾ã™ã‹?" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "ブートストラップモードã«å¤‰æ›´" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "最近ã®æ´»å‹•" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "管ç†ã‚¨ãƒªã‚¢" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "よã†ã“ãã€" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "標準的ãªã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "ホームページã¸æˆ»ã‚‹" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "ãƒã‚°ã‚¢ã‚¦ãƒˆ" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "ホーム" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "未公開ã®å¤‰æ›´" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "ã“ã®ã‚¢ã‚¤ã‚³ãƒ³ã§ãƒžãƒ¼ã‚¯ã•ã‚ŒãŸé …ç›®ã¯æœªå…¬é–‹ã®å¤‰æ›´ã‚’å«ã‚“ã§ã„ã¾ã™ã€‚" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "ワークフãƒãƒ¼è¨å®š" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "フォーラムè¨å®š" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "é™çš„コンテンツ" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "カスタムページ" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "未ä¿å˜ã®å¤‰æ›´" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "ãã®ä»–ã®è¨å®š" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "ツール" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "編集ページ" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "スタティックページ" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "ページを作æˆã™ã‚‹" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "æ–°ã—ã„ページ" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "公開" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "未公開" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "編集" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "éžå…¬é–‹" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "公開" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "ユーザãŒãƒ•ãƒ©ã‚°ã‚’è¨å®šã—ãŸæŠ•ç¨¿ãŒã‚ã‚Šã¾ã™ã€‚" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "サイトã®çµ±è¨ˆæƒ…å ±" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "スコアã¨è©•åˆ¤ã‚’å†è¨ˆç®—ã—ã¾ã™" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "ã“ã‚Œã¯éžå¸¸ã«é‡ãŸã„処ç†ã§ã™ã€‚実行ã—ã¾ã™ã‹?" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "å†è¨ˆç®—" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "%(prefix)s メールè¨å®šã‚’検証ã—ã¾ã—ãŸ: %(app_name)s" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "ã“ã®ãƒ¡ãƒ¼ãƒ«ãŒèªã‚ã¦ã„ã‚Œã°ã€ãƒ¡ãƒ¼ãƒ«è¨å®šã¯å•é¡Œã‚ã‚Šã¾ã›ã‚“。" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" -"メンテナンスモードã§ã¯ã‚µã‚¤ãƒˆã‚’閉鎖ã—ã€äº‹å‰ã«è¨å®šã—ãŸipアドレスã‹ã‚‰ã®ã¿é€šå¸¸ã«" -"アクセスã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "ã“ã®ã‚µã‚¤ãƒˆã¯ç¾åœ¨ãƒ¡ãƒ³ãƒ†ãƒŠãƒ³ã‚¹ãƒ¢ãƒ¼ãƒ‰ã§ã™ã€‚" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "以下ã®è¨å®šã‚’変更ã§ãã¾ã™" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "è¨å®šã‚’調整ã™ã‚‹" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "サイトをオープン" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "メンテナンスã®ãŸã‚閉鎖" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "Eメール" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "ボディ" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "タイトルã¨æœ¬æ–‡" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "フィルタ" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "タイプ別" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "ã™ã¹ã¦" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "フィルタã‹ã‚‰å‰Šé™¤ã™ã‚‹ã«ã¯ã“ã“をクリック" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "フィルタã«è¿½åŠ ã™ã‚‹ã«ã¯ã“ã“をクリック" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "定義済ã¿" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "フィルタå..." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "アクション" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "クãƒãƒ¼ã‚ºï¼ˆè³ªå•ã®ã¿ï¼‰" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "é¸æŠžã•ã‚ŒãŸã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’実行ã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "タイプ" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "概è¦" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "著者" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "ã‚¿ã‚°" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "プレビュー" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "変更をリセット" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "スタティックページ" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "スタティックページを作æˆã—ã¾ã™" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "編集ã™ã‚‹ãƒšãƒ¼ã‚¸ã‚’é¸æŠž" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "ページ" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -#, fuzzy -msgid "Are you sure you want to delete this page?" -msgstr "デフォルトè¨å®šã«æˆ»ã—ã¾ã™ã‹?" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "削除" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" -"\n" -" メールã®ãƒ†ã‚¹ãƒˆé€ä¿¡ã‚’è¡Œã„ã¾ã—ãŸã€‚\n" -" " - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -#, fuzzy -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" -"\n" -" メールボックスをãƒã‚§ãƒƒã‚¯ã—ã¦ã€ã“ã®ãƒ¡ãƒ¼ãƒ«è¨å®šã§æ£ã—ãテストメールãŒé€" -"ä¿¡ã•ã‚Œã¦ã„ã‚‹ã‹ç¢ºä¿¡ã—ã¦ãã ã•ã„。\n" -" " - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" -"\n" -" 忘れãšã«ã‚¹ãƒ‘ムメールフォルダもãƒã‚§ãƒƒã‚¯ã—ã¦ã¿ã¦ãã ã•ã„。メールãŒå±Šã„" -"ã¦ã„ãªã‘ã‚Œã°ã€SMTPè¨å®šã‚’ãƒã‚§ãƒƒã‚¯ã—ã¦ãã ã•ã„。ãƒã‚°ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚¨ãƒ©ãƒ¼ãŒå‡ºåŠ›ã•ã‚Œ" -"ã¦ã„ã‚‹å ´åˆã‚‚ã‚ã‚Šã¾ã™ã€‚\n" -" " - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "次" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "投票" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "ã“ã®è³ªå•ã«ã¯æŽ¡ç”¨æ¸ˆã¿ã®å›žç”ãŒã‚ã‚Šã¾ã™" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "ビュー" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "関連タグ" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "ã‚¿ã‚° '%(tag_name)s' ã®è³ªå•ã‚’検索" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "最近更新ã•ã‚ŒãŸè³ªå•" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "アクティブ" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "最近ã®è³ªå•" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "最新" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "ホットãªè³ªå•" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "ホット" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "得票を集ã‚ãŸè³ªå•" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "得票数" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "è³¼èªè§£é™¤" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "最終確èª" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "興味ã®ã‚ã‚‹ã‚¿ã‚°" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "'%(tag_name)s' を興味ã®ã‚ã‚‹ã‚¿ã‚°ã‹ã‚‰å‰Šé™¤" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "è¿½åŠ " - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "興味ã®ãªã„ã‚¿ã‚°" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, fuzzy, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "'%(tag_name)s' を興味ã®ãªã„ã‚¿ã‚°ã‹ã‚‰å‰Šé™¤" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "ã‚¿ã‚°ã§æ¤œç´¢" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "検索çµæžœ" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "タイトルã§æ¤œç´¢" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "未解決ã®è³ªå•" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "ã™ã¹ã¦ã®è³ªå•" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "Markdownã®åŸºç¤Ž" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "*斜体*ã¾ãŸã¯_italic_" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "**ã¾ãŸã¯__bold__太å—" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "リンク" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "テã‚スト" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "イメージ" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "番å·ä»˜ãリスト:" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "スペース二ã¤ã ã‘ã®è¡Œã¯ç©ºè¡Œã¨ãªã‚Šã¾ã™ã€‚" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "基本的ãªHTMLタグもサãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "Markdownã«ã¤ã„ã¦ã®è©³ã—ã„æƒ…å ±" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "最近ã®å—賞" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "å…¨ã¦ã®å—賞" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "最近ã®ã‚¿ã‚°" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "人気ã®ã‚¿ã‚°" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "ユーザプãƒãƒ•ã‚¡ã‚¤ãƒ«ç·¨é›†" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "メールアドレスã«é–¢é€£ä»˜ã‘られãŸã‚¤ãƒ¡ãƒ¼ã‚¸" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "gravatar" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "登録ユーザ" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "スクリーンãƒãƒ¼ãƒ " - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "æ›´æ–°" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "評判" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "ä¿ç•™" - -#: forum/skins/default/templates/users/info.html:42 -#, fuzzy -msgid "Administrator" -msgstr "管ç†" - -#: forum/skins/default/templates/users/info.html:45 -#, fuzzy -msgid "Moderator" -msgstr "モデレーションツール" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "本å" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "メンãƒãƒ¼" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "最終アクセス" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "ユーザã®ã‚¦ã‚§ãƒ–サイト" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "å ´æ‰€" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "å¹´é½¢" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "æ³" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "検証ã•ã‚Œã¦ã„ãªã„" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "今日ã®æ®‹ã‚ŠæŠ•ç¥¨æ•°" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "回" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "ユーザーツール" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -msgid "Users Online" -msgstr "ユーザーãŒã‚ªãƒ³ãƒ©ã‚¤ãƒ³" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "%(suser)s ã«ä¸€è‡´ã™ã‚‹ãƒ¦ãƒ¼ã‚¶:" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "見ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "è¨å®š" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "ã“ã“ã§ã¯ã€ã„ãã¤ã‹ã®å€‹äººçš„ãªè¨å®šã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "ナビゲーション" - -#: forum/skins/default/templates/users/preferences.html:22 -#, fuzzy -msgid "Always remember the sort order I apply to the lists I view" -msgstr "一覧ã§è¨å®šã—ãŸä¸¦ã³é †ã‚’記憶ã™ã‚‹" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "ãŠæ°—ã«å…¥ã‚ŠãŒç™»éŒ²ã•ã‚Œã¦ã„ã¾ã›ã‚“。" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "ãƒãƒƒã‚¸" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "(一時åœæ¢ï¼‰" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "%(vote_count)s 回投票ã•ã‚Œã¾ã—ãŸ" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "ã“ã®å›žç”ã¯æ£ã—ã„回ç”ã¨ã—ã¦æŽ¡ç”¨ã•ã‚Œã¾ã—ãŸ" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "è³¼èªã‚’è¨å®š" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "自動的ãªè³¼èªã‚’ã—ãªã„" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "自動購èªã‚’表示" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "通知ã¨è³¼èªã®è¨å®š" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" -"\n" -"通知ã®ç¨®é¡žã¨é »åº¦ã‚’è¨å®šã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚<br />\n" -" " - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "通知タイミング" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "æ–°ã—ã„メンãƒãƒ¼ãŒç™»éŒ²ã—ãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "質å•ãŒæŠ•ç¨¿ã•ã‚ŒãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "興味ã®ã‚ã‚‹ã‚¿ã‚°ã‚’å«ã‚€è³ªå•ãŒæŠ•ç¨¿ã•ã‚ŒãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "è³¼èªã—ã¦ã„ã‚‹é …ç›®ãŒæ›´æ–°ã•ã‚ŒãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "自動購èªã™ã‚‹é …ç›®" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "表示ã—ãŸè³ªå•" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "興味ã®ã‚ã‚‹ã‚¿ã‚°ã‚’å«ã‚€è³ªå•" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "å…¨ã¦ã®è³ªå•" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "è³¼èªã—ã¦ã„る質å•ã§ã€é€šçŸ¥ã™ã‚‹é …ç›®" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "回ç”ãŒæŠ•ç¨¿ã•ã‚ŒãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "投稿ã«ã‚³ãƒ¡ãƒ³ãƒˆãŒè¿½åŠ ã•ã‚ŒãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "コメントãŒæŠ•ç¨¿ã•ã‚ŒãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "回ç”ãŒæŽ¡ç”¨ã•ã‚ŒãŸã¨ã" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "æ—¥å ±" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "毎日ã®ã‚µã‚¤ãƒˆã®å‡ºæ¥äº‹ã‚’メールã§é€ä¿¡ã—ã¾ã™" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "è°è«–ã®é€šçŸ¥" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" -"コメントã«è¿”ä¿¡ãŒæŠ•ç¨¿ã•ã‚ŒãŸã¨ãã€ã¾ãŸã¯<pre>@username</pre>記法ã§æŒ‡åã•ã‚ŒãŸã¨" -"ãã«é€šçŸ¥ã—ã¾ã™ã€‚" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "ユーザã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆåœæ¢" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "無期é™" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "X日分" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "åœæ¢æœŸé–“" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "æ—¥" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "公開メッセージ" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティãƒã‚°ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "プライベートメッセージ" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "アカウントをåœæ¢ã—ãŸãƒ¦ãƒ¼ã‚¶ã«ã®ã¿è¡¨ç¤ºã•ã‚Œã¾ã™" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "ユーザー" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "投票" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "å対票" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "%(counter)s 件ã®å›žç”:" -msgstr[1] "%(counter)s 件ã®å›žç”:" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -#, fuzzy -msgid "tags are required" -msgstr "ユーザーåを指定ã—ã¦ãã ã•ã„" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, fuzzy, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" -"\n" -" (<a href=\"%(subscriptions_url)s\">プãƒãƒ•ã‚¡ã‚¤ãƒ«</a> ã§é€šçŸ¥è¨å®šã‚’" -"変更ã§ãã¾ã™)\n" -" " - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "興味ã®ãªã„質å•ã‚’éš ã™" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "" -"\n" -"ã‚‚ã—ã“ã®å›žç”ãŒæ°—ã«å…¥ã£ãŸã‚‰ã€%(awarded_user)s ã«è©•ä¾¡ãƒã‚¤ãƒ³ãƒˆã§ã”褒美をã‚ã’ã¦ã" -"ã ã•ã„。\n" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "ã™ã¹ã¦è¡¨ç¤º" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "スコア" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -#, fuzzy -msgid "*italic* or __italic__" -msgstr "*斜体*ã¾ãŸã¯_italic_" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -#, fuzzy -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "一覧ã§è¨å®šã—ãŸä¸¦ã³é †ã‚’記憶ã™ã‚‹" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "評判ãƒã‚¤ãƒ³ãƒˆ" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "%(user)s ã¯ã€ %(count)d 回ã€å›žç”を承èªã•ã‚Œã¾ã—ãŸ" - -#: forum/templatetags/extra_tags.py:120 -#, python-format -msgid "%s has one accepted answer" -msgstr "%s ã¯1回ã€å›žç”を承èªã•ã‚Œã¾ã—ãŸ" - -#: forum/templatetags/extra_tags.py:126 -#, python-format -msgid "%s has no accepted answers" -msgstr "%s ã¯0回ã€å›žç”を承èªã•ã‚Œã¾ã—ãŸ" - -#: forum/templatetags/extra_tags.py:132 -msgid "accept rate" -msgstr "承èªçŽ‡" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "ユーザã®å›žç”ãŒæ‰¿èªã•ã‚ŒãŸçŽ‡" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "2æ—¥å‰" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "昨日" - -#: forum/templatetags/extra_tags.py:170 -msgid "hour ago" -msgstr "時間å‰" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "時間å‰" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "分å‰" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "分å‰" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "秒å‰" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "秒å‰" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "パーマãƒãƒ³ãƒˆãƒªãƒ³ã‚¯" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "回ç”ã®ãƒ‘ーマãƒãƒ³ãƒˆãƒªãƒ³ã‚¯" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "å†ã‚ªãƒ¼ãƒ—ン" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "é–‰ã˜ã‚‹" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "é€šå ±" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "ä¸é©åˆ‡ãªå†…å®¹ã‚’é€šå ±ã™ã‚‹(スパムã€å®£ä¼ã€æ‚ªæ„ã®ã‚ã‚‹æ–‡ç« ãªã©)" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "復旧" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "æ›´æ–°å±¥æ´ã‚’表示" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "コミュニティwikiã¨ã—ã¦ãƒžãƒ¼ã‚¯" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "コミュニティwikiã‚’å–り消ã™" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "コメントã¸ã®å¤‰æ›´" - -#: forum/templatetags/node_tags.py:175 -msgid "convert to question" -msgstr "質å•ã¸ã®å¤‰æ›´" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "投稿" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "質å•ã‚°ãƒ©ãƒ•" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "ユーザーã®ã‚°ãƒ©ãƒ•" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "'%s'è¨å®šã‚’ä¿å˜ã—ã¾ã—ãŸ" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "ブートストラップモードãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã—ãŸ" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "å…¨ã¦ã®è¨å®šå€¤ãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã«æˆ»ã‚Šã¾ã—ãŸ" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "ã™ã¹ã¦ã®å€¤ãŒå†è¨ˆç®—ã•ã‚Œã¾ã™" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "メンテナンスモードãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã—ãŸ" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "è¨å®šã‚’調整ã—ã¾ã—ãŸ" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "ã“ã®ã‚µã‚¤ãƒˆã¯ç¾åœ¨æ£å¸¸ã«å‹•ä½œã—ã¦ã„ã¾ã™" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "ç¾åœ¨ãƒ¡ãƒ³ãƒ†ãƒŠãƒ³ã‚¹ä¸ã§ã™ã€‚ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„。" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -msgid "Create new user" -msgstr "ユーザ登録" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "ユーザãŒç™»éŒ²ã•ã‚Œã¾ã—ãŸã€‚%s。" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "%s ã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‚ç…§" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "added_at" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "added_at_asc" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "著者" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "一括処ç†" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "フィルタ" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "処ç†ã‚’è¡Œã„ã¾ã›ã‚“ã§ã—ãŸ" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "é¸æŠžã—ãŸãƒŽãƒ¼ãƒ‰ã«å‰Šé™¤ãƒžãƒ¼ã‚¯ã‚’è¨å®šã—ã¾ã—ãŸ" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "é¸æŠžã—ãŸãƒŽãƒ¼ãƒ‰ã‚’復旧ã—ã¾ã—ãŸ" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "ã¾ã¨ã‚ã¦ã‚¯ãƒãƒ¼ã‚º" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "é¸æŠžã—ãŸè³ªå•ã‚’クãƒãƒ¼ã‚ºã—ã¾ã—ãŸ" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "é¸æŠžã—ãŸãƒŽãƒ¼ãƒ‰ã‚’削除ã—ã¾ã—ãŸ" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" -"ã“ã®ãƒã‚°ã‚¤ãƒ³æƒ…å ±ã¯ã€ä»–ã®ãƒ¦ãƒ¼ã‚¶ãŒä½¿ç”¨ã—ã¦ã„ã¾ã™ã€‚セッションを終了ã—ã€ã‚‚ã†ä¸€åº¦" -"ã‚„ã‚Šç›´ã—ã¦ãã ã•ã„。" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "ã‚‚ã†ã“ã®ãƒ¦ãƒ¼ã‚¶ã§ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã™ã€‚" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "ã“ã®ãƒã‚°ã‚¤ãƒ³è³‡æ ¼æƒ…å ±ã¯ã€æ—¢ã«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«é–¢é€£ä»˜ã‘られã¦ã„ã¾ã™ã€‚" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "æ–°ã—ã„è³‡æ ¼ã¯ã€ã™ã§ã«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«é–¢é€£ä»˜ã‘られã¦ã„ã¾ã™ã€‚" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" -"処ç†ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ã‚„ã‚Šç›´ã—ã¦ãã ã•ã„クッã‚ーãŒæœ‰åŠ¹ã§ãªã‘" -"ã‚Œã°ã€ãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "æ“迎メールをã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã«é€ä¿¡ã—ã¾ã—ãŸã€‚" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" -"ãŠã£ã¨ã€å‡¦ç†ä¸ã«ä½•ã‹ãŒä¸Šæ‰‹ãã„ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ã‚„ã‚Šç›´ã—ã¦ãã ã•ã„。" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "一時的ãªãƒã‚°ã‚¤ãƒ³ã‚ーをメールã§é€ä¿¡ã—ã¾ã—ãŸ" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" -"一時的ãªã‚¢ã‚¯ã‚»ã‚¹ã‚ーã§ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã™ã€‚アカウントè¨å®šã‚’ä¿®æ£ã—ã¦ãã ã•ã„。" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "メールアドレス検証メールをé€ä¿¡ã—ã¾ã—ãŸ" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚メールアドレスを検証ã—ã¾ã—ãŸã€‚" - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "æ–°ã—ã„パスワードをè¨å®šã—ã¾ã—ãŸ" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "パスワードãŒå¤‰æ›´ã•ã‚Œã¾ã—ãŸ" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "%s ã®é–¢é€£ä»˜ã‘を削除ã—ã¾ã—ãŸ" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "ãŠã‹ãˆã‚Šãªã•ã„ %s。ãƒã‚°ã‚¤ãƒ³ã—ã¾ã—ãŸ" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "%s 件ã®æŠ•ç¨¿ã‚’ä¿ç•™ã—ã¦ã„ã¾ã™ã€‚" - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "ä¿å˜" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "レビュー" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "ã‚ャンセル" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¯åœæ¢ã•ã‚Œã¦ã„ã¾ã™ã€‚" - -#: forum/views/commands.py:28 -#, fuzzy, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" -"%(action)s ã‚’è¡Œã†ãŸã‚ã®è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆãŒè¶³ã‚Šã¾ã›ã‚“。<br /> <a " -"href='%(faq_url)s'>faq</a> を確èªã—ã¦ãã ã•ã„。" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"%(action)s ã‚’è¡Œã†ãŸã‚ã®è©•åˆ¤ãƒã‚¤ãƒ³ãƒˆãŒè¶³ã‚Šã¾ã›ã‚“。<br /> <a " -"href='%(faq_url)s'>faq</a> を確èªã—ã¦ãã ã•ã„。" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" -"自分自身ã®æŠ•ç¨¿ã«%(action)sã¯ã§ãã¾ã›ã‚“。<br /><a href='%(faq_url)s'>faq</a> " -"を確èªã—ã¦ãã ã•ã„。" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" -"匿åユーザ㯠%(action)s ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。<a href='%(signin_url)s'>ã“ã¡" -"ら</a> ã‹ã‚‰ãƒã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" -"本日ã¯ã‚‚ㆠ%(action)s 回数ãŒæ®‹ã£ã¦ã„ã¾ã›ã‚“。<br />一日ã®æœ€å¤§å›žæ•°ã¯ %(limit)s " -"ã§ã™ã€‚<a href='%(faq_url)s'>faq</a>を確èªã—ã¦ãã ã•ã„" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" -"åŒã˜æŠ•ç¨¿ã«2回 %(action)s ã™ã‚‹äº‹ã¯ã§ãã¾ã›ã‚“。.<br /><a " -"href='%(faq_url)s'>faq</a>を確èªã—ã¦ãã ã•ã„" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "投票㯠%(ndays)d %(tdays)s 以内ã—ã‹ã‚ャンセルã§ãã¾ã›ã‚“" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "æ—¥" -msgstr[1] "æ—¥" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "今日ã¯ã‚㨠%(nvotes)s 回%(tvotes)s ã§ãã¾ã™ã€‚" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "フラグã®æŠ•ç¨¿" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "フラグ" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "フラグ" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "ã“ã®æŠ•ç¨¿ã¯ã€%(reason)s ã¨ã—ã¦é€šå ±æ¸ˆã¿ã§ã™ã€‚" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "ç†ç”±ã‚’記入ã—ã¦ãã ã•ã„" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" -"ã”å ±å‘Šã„ãŸã ãã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚モデレーターã¯ã€ã¾ã‚‚ãªãé€šå ±ã‚’ç¢ºèªã—ã¾" -"ã™ã€‚" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "好ã" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "コメントを削除ã™ã‚‹" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "質å•ã‚’ãŠæ°—ã«å…¥ã‚Šã«ç™»éŒ²" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "無効ãªè¦æ±‚" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "コメントãŒå…¥åŠ›ã•ã‚Œã¦ã„ã¾ã›ã‚“" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "コメントã«ã¯æœ€ä½Ž %d æ–‡å—入力ã—ã¦ãã ã•ã„。" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "コメントã«ã¯ %d æ–‡å—ã¾ã§ã—ã‹å…¥åŠ›ã§ãã¾ã›ã‚“。" - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "コメントを編集" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "回ç”を採用" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "ã‚ãªãŸã¯å›žç”を採用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "ã“ã®è³ªå•ã«ã¯ã‚‚ã†å›žç”ãŒæŽ¡ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚" -msgstr[1] "ã“ã®è³ªå•ã«ã¯ã“れ以上回ç”を採用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "ã“ã®å›žç”ã®è‘—者ã¯ã€ã‚‚ã†ã“ã®è³ªå•ã§å›žç”を採用ã•ã‚Œã¦ã„ã¾ã™ã€‚" -msgstr[1] "" -"ã“ã®å›žç”ã®è‘—者ã¯ã€ã“ã®è³ªå•ã§ã¯ã“れ以上回ç”を採用ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“" - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -" %(flagged_url)s ã«ãƒ•ãƒ©ã‚°ãŒãƒžãƒ¼ã‚¯ã•ã‚Œã¾ã—ãŸã€‚\n" -" " - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "投稿を削除" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "質å•ã‚’クãƒãƒ¼ã‚º" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "質å•ã‚’å†ã‚ªãƒ¼ãƒ—ン" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "投稿をコミュニティwikiã«å¤‰æ›´" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "コミュニティwikiã®æŠ•ç¨¿ã‚’ã‚ャンセル" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "回ç”をコメントã«å¤‰æ›´" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "%(uname)s ã®å›žç”: %(snippet)s..." - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "質å•" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "ã“ã®æŠ•ç¨¿ã¯ã‚³ãƒ¡ãƒ³ãƒˆã«ç§»å‹•ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -msgid "convert comments to answers" -msgstr "コメントを回ç”ã«å¤‰æ›´" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "ã“ã®å‡¦ç†ã‚’è¡Œã†ãŸã‚ã®èªè¨¼ãŒã‚ã‚Šã¾ã›ã‚“" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "回ç”ã®ãƒ‘ーマãƒãƒ³ãƒˆURLをクリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸã€‚" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -msgid "award" -msgstr "ãƒã‚¤ãƒ³ãƒˆã‚’贈る" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "%(awarded_user)s ã« %(points)d ãƒã‚¤ãƒ³ãƒˆè´ˆã‚Šã¾ã—ãŸ" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" -"申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ <br />ã—ã°ã‚‰ãã—ã¦ã‹ã‚‰ã€ã‚‚ã†" -"一度試ã—ã¦ã¿ã¦ãã ã•ã„。" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "フィードãƒãƒƒã‚¯ã‚’ãŠå¯„ã›ã„ãŸã ãã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ï¼" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "フィードãƒãƒƒã‚¯ã‚’ãŠå¾…ã¡ã—ã¦ãŠã‚Šã¾ã™ã€‚次回ã¯ãœã²ï¼ :)" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "最近 <strong>æ›´æ–°</strong> ã•ã‚ŒãŸè³ªå•" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "最近 <strong>投稿</strong> ã•ã‚ŒãŸè³ªå•</strong>" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "éŽåŽ»24時間ã§æœ€ã‚‚ <strong>活発</strong> ãªè³ªå•" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "mostvoted" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "一番 <strong>得票数ã®å¤šã‹ã£ãŸ</strong> 質å•" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "å¤ã„é †" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "å¤ã„回ç”" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "å¤ã„回ç”ãŒæœ€åˆã«è¡¨ç¤ºã•ã‚Œã¾ã™" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "最新ã®å›žç”" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "最新ã®å›žç”ãŒæœ€åˆã«è¡¨ç¤ºã•ã‚Œã¾ã™" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "人気ã®å›žç”" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "一番得票ã®å¤šã„回ç”を最åˆã«è¡¨ç¤ºã—ã¾ã™" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "åå‰" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "åå‰é †" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ä¸¦ã¹æ›¿ãˆ" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "äººæ°—é †" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "ã‚¿ã‚°ã®ä½¿ç”¨é »åº¦é †ã«ä¸¦ã¹æ›¿ãˆ" - -#: forum/views/readers.py:72 -msgid " - " -msgstr " - " - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "最新ã®è³ªå•" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "未解決" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "回ç”å—付ä¸ã®è³ªå•" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "未解決ã®è³ªå•" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "<span class=\"tag\">%(tag)s</span> ã‚¿ã‚°ã®è³ªå•" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "%(tag)s ã‚¿ã‚°ã®è³ªå•" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "%s ã®è³ªå•" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "%s ãŒå›žç”ã—ãŸè³ªå•" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "è³¼èªä¸ã®è³ªå• %s" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "%s ãŒè³¼èªä¸ã®è³ªå•" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "質å•" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "ランã‚ング" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "関連" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "最も関連性ã®é«˜ã„質å•" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "'%(keywords)s' ã«ä¸€è‡´ã™ã‚‹è³ªå•" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "Revision n. %(rev_number)d" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "è©•åˆ¤é †ã«ä¸¦ã¹æ›¿ãˆ" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "最新" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "最近ã®ãƒ¡ãƒ³ãƒãƒ¼" - -#: forum/views/users.py:40 -msgid "last" -msgstr "最å¤" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "å¤ã„メンãƒãƒ¼" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "ユーザå" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "ユーザーåé †ã«ä¸¦ã¹æ›¿ãˆ" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "オンラインユーザ" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "プãƒãƒ•ã‚£ãƒ¼ãƒ«ãŒæ›´æ–°ã•ã‚Œã¾ã—ãŸã€‚" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" -"スーパーユーザã®ã¿ãŒä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã‚¢ã‚¯ã‚»ã‚¹è¨±å¯ã‚’変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" -"サイトã®æ‰€æœ‰è€…ã ã‘ãŒã€ä»–ã®ãƒ¦ãƒ¼ã‚¶ã‹ã‚‰ã‚¹ãƒ¼ãƒ‘ーユーザã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’削除ã™ã‚‹ã“ã¨" -"ãŒã§ãã¾ã™ã€‚" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "スーパユーザã ã‘ãŒè©•åˆ¤ãƒã‚¤ãƒ³ãƒˆã‚’贈れã¾ã™" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "贈るãƒã‚¤ãƒ³ãƒˆãŒç„¡åŠ¹ã§ã™ã€‚" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "スーパユーザã ã‘ãŒã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’åœæ¢ã§ãã¾ã™" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "日数ãŒæ£ã—ãã‚ã‚Šã¾ã›ã‚“" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "概è¦" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "ユーザーã®æ¦‚è¦" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "最近ã®æ´»å‹•" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "ユーザーã®æœ€è¿‘ã®æ´»å‹•" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "評判履æ´" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "ユーザーã®ã‚«ãƒ«ãƒžã®ã‚°ãƒ©ãƒ•" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "得票記録" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "ãŠæ°—ã«å…¥ã‚Š" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "ãŠæ°—ã«å…¥ã‚Šã¨ãªã£ãŸè³ªå•" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "è³¼èª" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "è³¼èª" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "è³¼èªè¨å®šã‚’ä¿å˜ã—ã¾ã—ãŸ" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "è¨å®š" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "è¨å®šã‚’ä¿å˜ã—ã¾ã—ãŸ" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "ç”»åƒã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«ã¯ 60評判ãƒã‚¤ãƒ³ãƒˆãŒå¿…è¦ã§ã™" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" -"'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’アップãƒãƒ¼ãƒ‰ã§ãã¾ã™" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "アップãƒãƒ¼ãƒ‰å¯èƒ½ãªãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚µã‚¤ã‚ºã¯ %sM ã¾ã§ã§ã™" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" -"ファイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚サイト管ç†è€…ã«é€£çµ¡ã—ã¦ãã ã•" -"ã„。 %s" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "質å•ã¯ %s ã¾ã§ç¾åœ¨ä¿ç•™ã•ã‚Œã¾ã™" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "メールアドレスã®æ¤œè¨¼" - -#: forum/views/writers.py:129 -msgid "Converted to question" -msgstr "質å•ã«å¤‰æ›´" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "質å•ã¯ %s ã¾ã§ä¿ç•™ã•ã‚Œã¾ã™ã€‚" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "é€ä¿¡" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "%s 回表示ã•ã‚ŒãŸè³ªå•" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "人気ã®ã‚る質å•" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "注目ã®è³ªå•" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "有åãªè³ªå•" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "%s回得票ã—ãŸè³ªå•" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "ナイスãªè³ªå•" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "良ã„質å•" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "グレートãªè³ªå•" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "%s回得票ã—ãŸå›žç”" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "ナイスãªå›žç”" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "グッドãªå›žç”" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "グレートãªå›žç”" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "%sユーザã®ãŠæ°—ã«å…¥ã‚Šã«ç™»éŒ²ã•ã‚ŒãŸè³ªå•" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "ãŠæ°—ã«å…¥ã‚Šã®è³ªå•" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "スター質å•" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "è¦å¾‹" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "スコア %s 以上ã®è‡ªåˆ†ã®æŠ•ç¨¿ã‚’削除" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "åŒèª¿åœ§åŠ›" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "スコア %s 以下ã®è‡ªåˆ†ã®æŠ•ç¨¿ã‚’削除" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "評論家" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "最åˆã«å対票を投ã˜ãŸ" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "サãƒãƒ¼ã‚¿ãƒ¼" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "最åˆã«æŠ•ç¥¨ã—ãŸ" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "市民パトãƒãƒ¼ãƒ«" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "最åˆã«ãƒ•ãƒ©ã‚°ã‚’ãƒã‚¹ãƒˆã—ãŸ" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "æ•´ç†æ•´é “" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "最åˆã«ã‚¿ã‚°ã‚’å†è¨å®šã—ãŸ" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "編集者" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "最åˆã«ç·¨é›†ã—ãŸ" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "å¦è€…" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "最åˆã«è‡ªåˆ†ã®å›žç”を採用ã—ãŸ" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "ãã‚Œã„好ã" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "最åˆã«ãƒãƒ¼ãƒ«ãƒãƒƒã‚¯ã—ãŸ" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "自ä¼ä½œå®¶" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "ユーザプãƒãƒ•ã‚¡ã‚¤ãƒ«ã‚’å…¨ã¦è¨˜å…¥ã—ãŸ" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "市民ã®ç¾©å‹™" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "%s回得票ã—ãŸ" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "専門家" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "%s回コメントã—ãŸ" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "独å¦è€…" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "自分ã®è³ªå•ã«è‡ªåˆ†ã§ç”ãˆã€%s以上得票ã—ãŸ" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "%s エントリを編集ã—ãŸ" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "å¦ç”Ÿ" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "質å•ãŒ1回以上得票ã—ãŸ" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "先生" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "回ç”ãŒ1回以上得票ã—ãŸ" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "有è˜è€…" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "回ç”ãŒ%s回以上得票ã—ãŸ" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "導師" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "回ç”ãŒæŽ¡ç”¨ã•ã‚Œã€%s回以上得票ã—ãŸ" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "霊媒師" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "%(dif_days)s日以上å‰ã®è³ªå•ã«å›žç”ã—ã€%(up_votes)s以上得票ã—ãŸ" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "分類å¦è€…" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "作æˆã—ãŸã‚¿ã‚°ãŒ%s以上ã®è³ªå•ã«ä½¿ã‚ã‚ŒãŸ" - -#: forum_modules/default_badges/badges.py:326 -#, fuzzy -msgid "Validated Email" -msgstr "e-mailを確èª" - -#: forum_modules/default_badges/badges.py:327 -#, fuzzy -msgid "User who has validated email associated to the account" -msgstr "アカウントã«é–¢é€£ä»˜ã‘られã¦ã„ã‚‹OpenIDを変更ã—ã¾ã™ã€‚" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "人気ã®ã‚る質å•ã®è¡¨ç¤ºå›žæ•°" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" -"\n" -"人気ã®ã‚る質å•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªè¡¨ç¤ºæ•°\n" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "注目ã®è³ªå•ã«å¿…è¦ãªè¡¨ç¤ºæ•°" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" -"\n" -"注目ã®è³ªå•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªè¡¨ç¤ºæ•°\n" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "有åãªè³ªå•ã«å¿…è¦ãªè¡¨ç¤ºæ•°" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" -"\n" -"有åãªè³ªå•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªè¡¨ç¤ºæ•°\n" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "ナイスãªå›žç”得票数" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"ナイスãªå›žç”ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "ナイスãªè³ªå•å¾—票数" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" -"\n" -"ナイスãªè³ªå•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "グッドãªå›žç”得票数" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"グッドãªå›žç”ãƒãƒƒã‚¸ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "グッドãªè³ªå•å¾—票数" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" -"\n" -"グッドãªè³ªå•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "グレートãªå›žç”得票数" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" -"\n" -"グレートãªå›žç”ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "グレートãªè³ªå•å¾—票数" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" -"\n" -"グレートãªè³ªå•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "ãŠæ°—ã«å…¥ã‚Šã®è³ªå•ãŠæ°—ã«å…¥ã‚Šæ•°" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" -"\n" -"ãŠæ°—ã«å…¥ã‚Šã®è³ªå•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªãŠæ°—ã«å…¥ã‚Šæ•°\n" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "スター質å•ãŠæ°—ã«å…¥ã‚Šæ•°" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" -"\n" -"スター質å•ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªãŠæ°—ã«å…¥ã‚Šæ•°\n" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "è¦å¾‹æœ€ä½Žã‚¹ã‚³ã‚¢" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" -"\n" -"自分ã®è³ªå•ã‚’削除ã—ãŸã¨ãã€è¦å¾‹ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªæœ€ä½Žã‚¹ã‚³ã‚¢\n" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "åŒèª¿åœ§åŠ›" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" -"\n" -"自分ã®è³ªå•ã‚’削除ã—ãŸã¨ãã€è¦å¾‹ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªæœ€ä½Žã‚¹ã‚³ã‚¢\n" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "市民ã®ç¾©å‹™æŠ•ç¥¨æ•°" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" -"\n" -"市民ã®ç¾©å‹™ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªæŠ•ç¥¨æ•°\n" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "専門家コメント数" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" -"\n" -"専門家ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªã‚³ãƒ¡ãƒ³ãƒˆæ•°\n" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "独å¦è€…得票数" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" -"\n" -"独å¦è€…ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "Strunk and White 編集数" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" -"\n" -"Strunk and Whiteãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªè³ªå•ã¾ãŸã¯å›žç”ã®ç·¨é›†æ•°\n" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "有è˜è€…得票数" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" -"\n" -"有è˜è€…ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "導師得票数" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" -"\n" -"導師ãƒãƒƒã‚¸ã‚’ç²å¾—ã™ã‚‹ãŸã‚ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "霊媒師得票数" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" -"\n" -"霊媒師ãƒãƒƒã‚¸ã‚’ç²å¾—ã™ã‚‹ãŸã‚ã«å¿…è¦ãªå¾—票数\n" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "霊媒師経éŽæ—¥æ•°" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" -"\n" -"霊媒師ãƒãƒƒã‚¸ã‚’ç²å¾—ã™ã‚‹ãŸã‚ã«å¿…è¦ãªã€è³ªå•ã®æŠ•ç¨¿ã‹ã‚‰å›žç”ã®æŠ•ç¨¿ã¾ã§ã®æ—¥æ•°\n" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "分類å¦è€…" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" -"\n" -"分類å¦è€…ãƒãƒƒã‚¸ç²å¾—ã«å¿…è¦ãªã€ä½œæˆã—ãŸã‚¿ã‚°ãŒåˆ©ç”¨ã•ã‚ŒãŸå›žæ•°\n" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "アクション" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "賞" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "è¨å®š" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "ZIP" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "ファイル形å¼" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "圧縮ã•ã‚ŒãŸãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã®ãƒ•ã‚¡ã‚¤ãƒ«å½¢å¼" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "匿å化ã•ã‚ŒãŸãƒ‡ãƒ¼ã‚¿" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "XMLデータã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "使用å¯èƒ½ãªãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "XMLデータインãƒãƒ¼ã‚¿" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "ダンプファイルã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ã‚’インãƒãƒ¼ãƒˆã™ã‚‹" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "全体ã®é€²è¡ŒçŠ¶æ³" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" -"æ£ã—ã„ユーザーåã¨ãƒ‘スワードを入力ã—ã¦ãã ã•ã„(両方ã¨ã‚‚大文å—ã¨å°æ–‡å—ãŒåŒºåˆ¥" -"ã•ã‚Œã¾ã™ï¼‰ã€‚" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "ãƒã‚°ã‚¤ãƒ³ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯æœ‰åŠ¹ãªãƒ¦ãƒ¼ã‚¶ãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "ユーザåã¨ãƒ‘スワードを入力ã—ã¦ãã ã•ã„" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "パスワードを入力ã—ã¦ãã ã•ã„" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "ユーザーåを入力ã—ã¦ãã ã•ã„" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "ã‚ãªãŸã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åã¨ãƒ‘スワードを入力ã—ã¦ãã ã•ã„" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "ã¾ãŸã¯ã€ä¸Šã®å¤–部プãƒãƒã‚¤ãƒ€ãƒ¼ã‹ã‚‰é¸æŠžã—ã¦ãã ã•ã„" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "ãƒã‚°ã‚¤ãƒ³å" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "パスワード" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "アカウントを作æˆã™ã‚‹" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "パスワードを忘れã¾ã—ãŸã‹ï¼Ÿ" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "エラー: oauthトークンãŒè¨å®šã•ã‚Œã¦ã„ã¾ã›ã‚“" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "エラーãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚AuthトークンãŒä¸€è‡´ã—ã¾ã›ã‚“" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€å…¥åŠ›ãŒæœ‰åŠ¹ãªOpenIDã§ã¯ã‚ã‚Šã¾ã›ã‚“" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "OpenIDã®èªè¨¼è¦æ±‚ãŒã‚ャンセルã•ã‚Œã¾ã—ãŸ" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "OpenIDèªè¨¼ã«å¤±æ•—ã—ã¾ã—ãŸï¼š" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "セットアップãŒå¿…è¦ã§ã™" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "ä¸æ˜ŽãªåŽŸå› ã«ã‚ˆã‚Šã€OpenIdèªè¨¼ãŒå¤±æ•—ã—ã¾ã—ãŸ" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "OpenID URLを入力ã—ã¦ãã ã•ã„" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "ãƒã‚°é€€æ²»å±‹" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "\"bug\"ã‚¿ã‚°ã®ä»˜ã„ãŸè³ªå•ã§%s以上得票ã—ãŸ" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "無効ãªCAPTCHA" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "sximporter /" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "Updater Settings" -msgstr "アップデータã®è¨å®š" - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "updater/" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -msgid "updater" -msgstr "" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "更新を確èªã™ã‚‹ãŸã‚OSQAアップデートサーãƒã‚’使用ã—ã¦ãã ã•ã„" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "テストフレーズ1" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "テストフレーズ2" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "テストフレーズ3" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "テストフレーズã®n" - -#, fuzzy -#~ msgid "Create some canned comments to be used for easier moderation." -#~ msgstr "質å•ã®ã‚¯ãƒãƒ¼ã‚ºãƒãƒƒãƒ—アップã§è¡¨ç¤ºã™ã‚‹ã‚¯ãƒãƒ¼ã‚ºç†ç”±ã‚’作æˆã—ã¾ã™ã€‚" - -#~ msgid "Change email " -#~ msgstr "メールアドレスを変更" - -#~ msgid "Add or update the email address associated with your account." -#~ msgstr "アカウントã«é–¢é€£ä»˜ã‘られãŸãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’è¿½åŠ ã¾ãŸã¯æ›´æ–°ã—ã¾ã™ã€‚" - -#~ msgid "Change OpenID" -#~ msgstr "OpenIDを変更" - -#~ msgid "Delete account" -#~ msgstr "アカウントã®å‰Šé™¤" - -#~ msgid "Erase your username and all your data from website" -#~ msgstr "Webサイトã‹ã‚‰ãƒ¦ãƒ¼ã‚¶åã¨ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’消去" - -#~ msgid "You can answer anonymously and then login." -#~ msgstr "ã¾ãšåŒ¿åã§å›žç”ã—ã€ã‚ã¨ã§ãƒã‚°ã‚¤ãƒ³ã™ã‚‹äº‹ãŒå‡ºæ¥ã¾ã™ã€‚" - -#~ msgid "Answer your own question only to give an answer." -#~ msgstr "" -#~ "自分ã®å›žç”ã«å›žç”を書ã込むã¨ãã¯ã€å›žç”以外ã®ã“ã¨ã‚’書ãè¾¼ã¾ãªã„よã†ã«ã—ã¦ã" -#~ "ã ã•ã„。" - -#~ msgid "Please only give an answer, no discussions." -#~ msgstr "回ç”ã ã‘を書ã„ã¦ãã ã•ã„。è°è«–ã¯å§‹ã‚ãªã„ã§ãã ã•ã„。" - -#~ msgid "" -#~ "Remember, your answer will not be published until you validate your email." -#~ msgstr "メールアドレスãŒæ¤œè¨¼ã•ã‚Œã‚‹ã¾ã§ã€ã‚ãªãŸã®ç”ãˆã¯å…¬é–‹ã•ã‚Œã¾ã›ã‚“。" - -#~ msgid "Existing account" -#~ msgstr "æ—¢å˜ã‚¢ã‚«ã‚¦ãƒ³ãƒˆ" - -#~ msgid "user name" -#~ msgstr "ユーザーå" - -#~ msgid "password" -#~ msgstr "パスワード" - -#~ msgid "Register" -#~ msgstr "登録" - -#~ msgid "Refresh" -#~ msgstr "リフレッシュ" - -#~ msgid "Check to make the sort order sticky" -#~ msgstr "ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã¨ã‚½ãƒ¼ãƒˆé †ã‚’記憶ã—ã¾ã™" - -#~ msgid "Sorry, your Facebook session has expired, please try again" -#~ msgstr "" -#~ "申ã—訳ã‚ã‚Šã¾ã›ã‚“ãŒã€Facebookセッションã®æœ‰åŠ¹æœŸé™ãŒåˆ‡ã‚Œã¦ã„ã¾ã™ã€‚ã‚‚ã†ä¸€åº¦è©¦" -#~ "ã—ã¦ãã ã•ã„。" - -#~ msgid "" -#~ "The authentication with Facebook connect failed, cannot find " -#~ "authentication tokens" -#~ msgstr "èªè¨¼ãƒˆãƒ¼ã‚¯ãƒ³ãŒä¸æ˜ŽãªãŸã‚ã€Facebookã§ã®èªè¨¼ãŒå¤±æ•—ã—ã¾ã—ãŸ" - -#~ msgid "" -#~ "The authentication with Facebook connect failed due to an invalid " -#~ "signature" -#~ msgstr "Facebookã§ã®èªè¨¼ãŒç„¡åŠ¹ãªç½²åã®ãŸã‚失敗ã—ã¾ã—ãŸ" diff --git a/locale/l/.svn/all-wcprops b/locale/l/.svn/all-wcprops deleted file mode 100644 index 2f13f01ad8ecc77b8c1d6d8f18a9591e44549967..0000000000000000000000000000000000000000 --- a/locale/l/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 42 -/svnroot/!svn/ver/1239/osqa/trunk/locale/l -END diff --git a/locale/l/.svn/entries b/locale/l/.svn/entries deleted file mode 100644 index 05e616030213a3fc682fd4c957a038212ecadf54..0000000000000000000000000000000000000000 --- a/locale/l/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/l -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/l/LC_MESSAGES/.svn/all-wcprops b/locale/l/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 55bb460f8a3eef384017bc7c7af780c6c3e8b4f0..0000000000000000000000000000000000000000 --- a/locale/l/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 54 -/svnroot/!svn/ver/1239/osqa/trunk/locale/l/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 64 -/svnroot/!svn/ver/1239/osqa/trunk/locale/l/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 64 -/svnroot/!svn/ver/1239/osqa/trunk/locale/l/LC_MESSAGES/django.po -END diff --git a/locale/l/LC_MESSAGES/.svn/entries b/locale/l/LC_MESSAGES/.svn/entries deleted file mode 100644 index 9b0dade8a968581422ae433709124fc74f09fd77..0000000000000000000000000000000000000000 --- a/locale/l/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/l/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.721419Z -0df0c28a45cc3cf881df123cb7113a38 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -378 - -django.po -file - - - - -2012-06-22T20:34:48.717421Z -87c19356d4610c1782626343ee23c912 -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -229214 - diff --git a/locale/l/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/l/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/l/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/l/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/l/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 763306328ae809f1d6a6ec53ba355044ea7748a9..0000000000000000000000000000000000000000 Binary files a/locale/l/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/l/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/l/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 3ec35f5be4d15313269ec5262588530149ce22fe..0000000000000000000000000000000000000000 --- a/locale/l/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,8563 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:16-0700\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "" - -#: forum/registry.py:28 -msgid "logout" -msgstr "" - -#: forum/registry.py:28 -msgid "login" -msgstr "" - -#: forum/registry.py:41 -msgid "administration" -msgstr "" - -#: forum/registry.py:54 -msgid "contact" -msgstr "" - -#: forum/registry.py:57 -msgid "support" -msgstr "" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "" - -#: forum/urls.py:71 -msgid "convert_comment/" -msgstr "" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -msgid "answer_link/" -msgstr "" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -msgid "user/" -msgstr "" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "" - -#: forum/urls.py:85 -msgid "convert_to_question/" -msgstr "" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -msgid "award/" -msgstr "" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" - -#: forum/actions/node.py:225 -#, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" - -#: forum/actions/node.py:231 -msgid "converted to question" -msgstr "" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -msgid "validated e-mail" -msgstr "" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -msgid "gave reputation points" -msgstr "" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "" -msgstr[1] "" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -msgid "post" -msgstr "" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -msgid "Users an accept own answer" -msgstr "" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -msgid "Site 'from' Email Address" -msgstr "" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -msgid "Site 'reply-to' Email Address" -msgstr "" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -msgid "Email Subject Prefix" -msgstr "" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -msgid "Minimum reputation to convert comments to answers" -msgstr "" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -msgid "Minimum reputation to convert answers to questions" -msgstr "" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -msgid "Use canned comments" -msgstr "" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -msgid "Canned comments" -msgstr "" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Sitemap settings" -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -msgid "Questions Sitemap Limit" -msgstr "" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -msgid "Allow negative reputation" -msgstr "" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -msgid "Truncate long usernames" -msgstr "" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -msgid "Show user accept rate" -msgstr "" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -msgid "Freeze accept rate" -msgstr "" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -msgid "Add reputation to max votes per day" -msgstr "" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -msgid "Use canned comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -msgid "Convert comment to answer" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:29 -msgid "Convert comment to question" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -msgid "Convert to question" -msgstr "" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -msgid "Permanent link" -msgstr "" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -msgid "Site Administration" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -msgid "Create User" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -msgid "Quick creation of a new user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -msgid "Delete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "" - -#: forum/skins/default/templates/users/info.html:42 -msgid "Administrator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:45 -msgid "Moderator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -msgid "Users Online" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "" - -#: forum/skins/nuxeo/templates/question.html:145 -#, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:120 -#, python-format -msgid "%s has one accepted answer" -msgstr "" - -#: forum/templatetags/extra_tags.py:126 -#, python-format -msgid "%s has no accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:132 -msgid "accept rate" -msgstr "" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hour ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "" - -#: forum/templatetags/node_tags.py:175 -msgid "convert to question" -msgstr "" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -msgid "Create new user" -msgstr "" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:347 -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -msgid "convert comments to answers" -msgstr "" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -msgid "award" -msgstr "" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "" - -#: forum/views/users.py:40 -msgid "last" -msgstr "" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "" - -#: forum/views/writers.py:129 -msgid "Converted to question" -msgstr "" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "" - -#: forum_modules/default_badges/badges.py:326 -msgid "Validated Email" -msgstr "" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "Updater Settings" -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "updater/" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -msgid "updater" -msgstr "" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" diff --git a/locale/pt/.svn/all-wcprops b/locale/pt/.svn/all-wcprops deleted file mode 100644 index 369c2492dc6173a90b82d312fdb181d50eef1526..0000000000000000000000000000000000000000 --- a/locale/pt/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/pt -END diff --git a/locale/pt/.svn/entries b/locale/pt/.svn/entries deleted file mode 100644 index c1b0f340a0b3b84155223788d6fe3dc746b9a31d..0000000000000000000000000000000000000000 --- a/locale/pt/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/pt -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/pt/LC_MESSAGES/.svn/all-wcprops b/locale/pt/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 72a9d4bd057c035c333a8e6564ab4f0322d2bb9b..0000000000000000000000000000000000000000 --- a/locale/pt/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/pt/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/pt/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/pt/LC_MESSAGES/django.po -END diff --git a/locale/pt/LC_MESSAGES/.svn/entries b/locale/pt/LC_MESSAGES/.svn/entries deleted file mode 100644 index b1700658fc10e08fd969a092965719f6b4c656c2..0000000000000000000000000000000000000000 --- a/locale/pt/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/pt/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.245657Z -0df0c28a45cc3cf881df123cb7113a38 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -378 - -django.po -file - - - - -2012-06-22T20:34:48.237661Z -87c19356d4610c1782626343ee23c912 -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -229214 - diff --git a/locale/pt/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/pt/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/pt/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/pt/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/pt/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 763306328ae809f1d6a6ec53ba355044ea7748a9..0000000000000000000000000000000000000000 Binary files a/locale/pt/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/pt/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/pt/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 3ec35f5be4d15313269ec5262588530149ce22fe..0000000000000000000000000000000000000000 --- a/locale/pt/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,8563 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:16-0700\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -msgid "page" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "" - -#: forum/feed.py:90 -#, python-format -msgid "Answers to: %s" -msgstr "" - -#: forum/feed.py:107 -#, python-format -msgid "Answer by %s" -msgstr "" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "" - -#: forum/registry.py:28 -msgid "logout" -msgstr "" - -#: forum/registry.py:28 -msgid "login" -msgstr "" - -#: forum/registry.py:41 -msgid "administration" -msgstr "" - -#: forum/registry.py:54 -msgid "contact" -msgstr "" - -#: forum/registry.py:57 -msgid "support" -msgstr "" - -#: forum/registry.py:58 -msgid "privacy" -msgstr "" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "" - -#: forum/registry.py:83 -msgid "authentication settings" -msgstr "" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -msgid "related_questions/" -msgstr "" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -msgid "like_comment/" -msgstr "" - -#: forum/urls.py:69 -msgid "comment/" -msgstr "" - -#: forum/urls.py:70 -msgid "delete_comment/" -msgstr "" - -#: forum/urls.py:71 -msgid "convert_comment/" -msgstr "" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -msgid "answer_link/" -msgstr "" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -msgid "user/" -msgstr "" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "" - -#: forum/urls.py:85 -msgid "convert_to_question/" -msgstr "" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -msgid "award/" -msgstr "" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -msgid "reputation/" -msgstr "" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -msgid "contact/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -msgid "voted up" -msgstr "" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "" - -#: forum/actions/node.py:34 -#, python-format -msgid "%(user)s asked %(question)s" -msgstr "" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "" - -#: forum/actions/node.py:55 -#, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" - -#: forum/actions/node.py:62 -msgid "commented" -msgstr "" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -msgid "edited" -msgstr "" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -msgid "closed" -msgstr "" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" - -#: forum/actions/node.py:225 -#, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" - -#: forum/actions/node.py:231 -msgid "converted to question" -msgstr "" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -msgid "validated e-mail" -msgstr "" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -msgid "edited profile" -msgstr "" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -msgid "profile" -msgstr "" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -msgid "gave reputation points" -msgstr "" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "" -msgstr[1] "" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -msgid "was awarded" -msgstr "" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -msgid "were" -msgstr "" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -msgid "Markdown" -msgstr "" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -msgid "Title" -msgstr "" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -msgid "Page Content" -msgstr "" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -msgid "Allow comments" -msgstr "" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "" - -#: forum/forms/admin.py:104 -msgid "email address" -msgstr "" - -#: forum/forms/auth.py:21 -msgid "Your account email" -msgstr "" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "" - -#: forum/forms/qanda.py:31 -#, python-format -msgid "title must be must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "" - -#: forum/forms/qanda.py:55 -#, python-format -msgid "question content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:68 -#, python-format -msgid "answer content must be at least %s characters" -msgstr "" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, python-format -msgid "on %(link)s" -msgstr "" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -msgid "comment" -msgstr "" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -msgid "post" -msgstr "" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "" - -#: forum/models/user.py:233 forum/views/readers.py:144 -msgid "asked-by" -msgstr "" - -#: forum/models/user.py:248 forum/views/readers.py:147 -msgid "answered-by" -msgstr "" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Accepting answers" -msgstr "" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -msgid "Disallow answers to be accepted" -msgstr "" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -msgid "Maximum accepted answers per question" -msgstr "" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -msgid "Users an accept own answer" -msgstr "" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -msgid "Basic settings" -msgstr "" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -msgid "Application description" -msgstr "" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -msgid "Site 'from' Email Address" -msgstr "" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -msgid "Site 'reply-to' Email Address" -msgstr "" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -msgid "Email Subject Prefix" -msgstr "" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -#: forum/settings/form.py:8 -msgid "Enable community wiki" -msgstr "" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -msgid "Limit tag creation" -msgstr "" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -msgid "Empty question content" -msgstr "" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -msgid "context" -msgstr "" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -msgid "Change this:" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "Minimum reputation config" -msgstr "" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -msgid "Show captcha if user with less reputation than" -msgstr "" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -msgid "Minimum reputation to vote down" -msgstr "" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -msgid "Minimum reputation to comment" -msgstr "" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -msgid "Minimum reputation to like a comment" -msgstr "" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -msgid "Minimum reputation to create tags" -msgstr "" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -msgid "Minimum reputation to mark post as community wiki" -msgstr "" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -msgid "Minimum reputation to delete comments" -msgstr "" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -msgid "Minimum reputation to convert answers to comment" -msgstr "" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -msgid "Minimum reputation to convert comments to answers" -msgstr "" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -msgid "Minimum reputation to convert answers to questions" -msgstr "" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Moderation settings" -msgstr "" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -msgid "Use canned comments" -msgstr "" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -msgid "Canned comments" -msgstr "" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -msgid "Initial reputation" -msgstr "" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Sitemap settings" -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -msgid "Questions Sitemap Limit" -msgstr "" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -msgid "Users settings" -msgstr "" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -msgid "Allow negative reputation" -msgstr "" - -#: forum/settings/users.py:11 -msgid "Check if you want to allow negative user reputations in the community." -msgstr "" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -msgid "Editable screen name" -msgstr "" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -msgid "ass" -msgstr "" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "" - -#: forum/settings/users.py:29 -msgid "update" -msgstr "" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "" - -#: forum/settings/users.py:29 -msgid "new" -msgstr "" - -#: forum/settings/users.py:31 -msgid "Disabled usernames" -msgstr "" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -msgid "Truncate long usernames" -msgstr "" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -msgid "Show user accept rate" -msgstr "" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -msgid "Freeze accept rate" -msgstr "" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -msgid "Force unique email" -msgstr "" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -msgid "ask questions" -msgstr "" - -#: forum/settings/users.py:72 -msgid "provide answers" -msgstr "" - -#: forum/settings/users.py:72 -msgid "make comments" -msgstr "" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -msgid "Recent tags block size" -msgstr "" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -msgid "Recent awards block size" -msgstr "" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -msgid "Limit related tags block" -msgstr "" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -msgid "Add reputation to max votes per day" -msgstr "" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -msgid "to home page" -msgstr "" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -msgid "404 Not Found" -msgstr "" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -msgid "Close" -msgstr "" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -msgid "welcome to " -msgstr "" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -msgid "Markdown Help" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -msgid "Markdown Syntax" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -msgid "Search" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" - -#: forum/skins/default/templates/question.html:149 -#, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -msgid "Follow this question" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "subscribe to answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "subscribe to comments and answers" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -msgid "Answers and Comments" -msgstr "" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Create password" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -msgid "Validate my email address" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -msgid "Go to your account" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -msgid "Send link" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -msgid "Username: " -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -msgid " comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -msgid " cancel" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -msgid "Use canned comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -msgid "Edit comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -msgid "Delete comment" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -msgid "Convert comment to answer" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -msgid "just now" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:29 -msgid "Convert comment to question" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -msgid "add new comment" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -msgid "Place the comment under:" -msgstr "" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -msgid "Convert to question" -msgstr "" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -msgid "Permanent link" -msgstr "" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, python-format -msgid "the question %(question_link)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, python-format -msgid "the question \"%(question_title)s\"" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -msgid "Site Administration" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -msgid "Create User" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -msgid "Quick creation of a new user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -msgid "Welcome," -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -msgid "Back to home page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -msgid "Static content" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -msgid "Other settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Editing page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -msgid "Creating page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -msgid "New page" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -msgid "Adjust settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -msgid "Open site" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -msgid "Moderation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -msgid "newer users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -msgid "older users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -msgid "Validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -msgid "Reputation:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -msgid "Reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -msgid "Possible fake accounts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -msgid "out of" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -msgid "rep" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -msgid "Action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -msgid "Mark deleted" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -msgid "Undelete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -msgid "Delete completely" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -msgid "Close (questions only)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -msgid "Preview" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -msgid "Delete" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -msgid "next" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -msgid "vote" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "view" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -msgid "All Questions" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -msgid "Markdown Basics" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "gravatar" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "" - -#: forum/skins/default/templates/users/info.html:42 -msgid "Administrator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:45 -msgid "Moderator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -msgid "User tools" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -msgid "Users Online" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -msgid "No favorite questions to display." -msgstr "" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -msgid "A new question is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -msgid "Questions I view" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -msgid "An answer is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "" - -#: forum/skins/nuxeo/templates/question.html:145 -#, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:120 -#, python-format -msgid "%s has one accepted answer" -msgstr "" - -#: forum/templatetags/extra_tags.py:126 -#, python-format -msgid "%s has no accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:132 -msgid "accept rate" -msgstr "" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hour ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -msgid "hours ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -msgid "min ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -msgid "mins ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" - -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "" - -#: forum/templatetags/node_tags.py:156 -msgid "see revisions" -msgstr "" - -#: forum/templatetags/node_tags.py:163 -msgid "mark as community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:167 -msgid "cancel community wiki" -msgstr "" - -#: forum/templatetags/node_tags.py:171 -msgid "convert to comment" -msgstr "" - -#: forum/templatetags/node_tags.py:175 -msgid "convert to question" -msgstr "" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "" - -#: forum/views/admin.py:141 -msgid "Questions Graph" -msgstr "" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -msgid "Create new user" -msgstr "" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, python-format -msgid "See %s profile" -msgstr "" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -msgid "bulk close" -msgstr "" - -#: forum/views/admin.py:496 -msgid "Selected questions were closed" -msgstr "" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -msgid "New password set" -msgstr "" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -msgid "save it" -msgstr "" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -msgid "review" -msgstr "" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -msgid "cancel" -msgstr "" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -msgid "like comments" -msgstr "" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -msgid "delete comments" -msgstr "" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -#: forum/views/commands.py:267 -msgid "edit comments" -msgstr "" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -msgid "accept answers" -msgstr "" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "" - -#: forum/views/commands.py:332 -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:347 -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -msgid "close questions" -msgstr "" - -#: forum/views/commands.py:399 -msgid "reopen questions" -msgstr "" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -msgid "mark posts as community wiki" -msgstr "" - -#: forum/views/commands.py:425 -msgid "cancel a community wiki post" -msgstr "" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -msgid "convert answers to comments" -msgstr "" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -msgid "Question" -msgstr "" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -msgid "convert comments to answers" -msgstr "" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -msgid "award" -msgstr "" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -msgid "Most <strong>recently updated</strong> questions" -msgstr "" - -#: forum/views/readers.py:40 -msgid "most <strong>recently asked</strong> questions" -msgstr "" - -#: forum/views/readers.py:41 -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "" - -#: forum/views/readers.py:42 -msgid "mostvoted" -msgstr "" - -#: forum/views/readers.py:42 -msgid "most <strong>voted</strong> questions" -msgstr "" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "" - -#: forum/views/readers.py:63 forum/views/users.py:41 -msgid "name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "" - -#: forum/views/readers.py:85 -msgid "unanswered" -msgstr "" - -#: forum/views/readers.py:89 -msgid "open questions without an accepted answer" -msgstr "" - -#: forum/views/readers.py:91 -msgid "Unanswered Questions" -msgstr "" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -#: forum/views/readers.py:126 -#, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "" - -#: forum/views/readers.py:146 -#, python-format -msgid "Questions asked by %s" -msgstr "" - -#: forum/views/readers.py:149 -#, python-format -msgid "Questions answered by %s" -msgstr "" - -#: forum/views/readers.py:156 -#, python-format -msgid "Questions you subscribed %s" -msgstr "" - -#: forum/views/readers.py:158 -#, python-format -msgid "Questions subscribed by %s" -msgstr "" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -msgid "most relevant questions" -msgstr "" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -msgid "sorted by reputation" -msgstr "" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "" - -#: forum/views/users.py:39 -msgid "newest members" -msgstr "" - -#: forum/views/users.py:40 -msgid "last" -msgstr "" - -#: forum/views/users.py:40 -msgid "oldest members" -msgstr "" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "" - -#: forum/views/users.py:41 -msgid "sorted by username" -msgstr "" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -msgid "Profile updated." -msgstr "" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "" - -#: forum/views/users.py:367 -msgid "graph of user karma" -msgstr "" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscription" -msgstr "" - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "" - -#: forum/views/writers.py:129 -msgid "Converted to question" -msgstr "" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -msgid "Minimum reputation to not have your posts checked" -msgstr "" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "" - -#: forum_modules/default_badges/badges.py:24 -msgid "Popular Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:30 -msgid "Notable Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:35 -msgid "Famous Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:58 -msgid "Nice Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:63 -msgid "Good Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:68 -msgid "Great Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:77 -#, python-format -msgid "Answer voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:81 -msgid "Nice Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:86 -msgid "Good Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:91 -msgid "Great Answer" -msgstr "" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "" - -#: forum_modules/default_badges/badges.py:108 -msgid "Favorite Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:113 -msgid "Stellar Question" -msgstr "" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "" - -#: forum_modules/default_badges/badges.py:326 -msgid "Validated Email" -msgstr "" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -msgid "Nice Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -msgid "Good Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -msgid "Great Question up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -msgid "Starting" -msgstr "" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -msgid "Actions" -msgstr "" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -msgid "Awards" -msgstr "" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -msgid "download/" -msgstr "" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "Enter your local user name and password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:8 -msgid "Login name" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:16 -msgid "Password" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Create account" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, python-format -msgid "user-%(id)s" -msgstr "" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "Updater Settings" -msgstr "" - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "updater/" -msgstr "" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -msgid "updater" -msgstr "" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" diff --git a/locale/ru/.svn/all-wcprops b/locale/ru/.svn/all-wcprops deleted file mode 100644 index 823146ee146f9bcae436d02bb377e1b832c76de0..0000000000000000000000000000000000000000 --- a/locale/ru/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ru -END diff --git a/locale/ru/.svn/entries b/locale/ru/.svn/entries deleted file mode 100644 index e1916c455a38eaa2468a7527bcf05c40aceb407c..0000000000000000000000000000000000000000 --- a/locale/ru/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/ru -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/ru/LC_MESSAGES/.svn/all-wcprops b/locale/ru/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 0c890d2bfe41d205fdb77241de842d7f271877ff..0000000000000000000000000000000000000000 --- a/locale/ru/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 55 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ru/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ru/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 65 -/svnroot/!svn/ver/1239/osqa/trunk/locale/ru/LC_MESSAGES/django.po -END diff --git a/locale/ru/LC_MESSAGES/.svn/entries b/locale/ru/LC_MESSAGES/.svn/entries deleted file mode 100644 index af6da39c5cba24a14b291526ecee1cf930bd69cd..0000000000000000000000000000000000000000 --- a/locale/ru/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/ru/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.325617Z -4f834adeec2ac118f5c3a2899080af4a -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -12193 - -django.po -file - - - - -2012-06-22T20:34:48.325617Z -202f3a36859a8556bd3bd148aba11772 -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -273929 - diff --git a/locale/ru/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/ru/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/ru/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/ru/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/ru/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index 94b790ea97cd3117d362d4ec4995bba13bfa42ad..0000000000000000000000000000000000000000 Binary files a/locale/ru/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/ru/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/ru/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index ee3cb3f32e2e9234589cfe685bc2528feba60017..0000000000000000000000000000000000000000 --- a/locale/ru/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9598 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: 0.1\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:16-0700\n" -"PO-Revision-Date: 2011-09-12 14:48+0200\n" -"Last-Translator: Victor Sergienko <singalen@gmail.com>\n" -"Language-Team: Russian <singalen@gmail.com>\n" -"Language: ru\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"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" -"X-Translated-Using: django-rosetta 0.5.3\n" - -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -#, fuzzy -msgid "page" -msgstr "ÑледующаÑ" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -msgid "pagesize" -msgstr "" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -msgid "sort" -msgstr "" - -#: forum/feed.py:90 -#, fuzzy, python-format -msgid "Answers to: %s" -msgstr "Tips" - -#: forum/feed.py:107 -#, fuzzy, python-format -msgid "Answer by %s" -msgstr "ответов" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "ответ" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "вопроÑ" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "ЧаВо" - -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "о Ñайте" - -#: forum/registry.py:28 -msgid "logout" -msgstr "выход" - -#: forum/registry.py:28 -msgid "login" -msgstr "вход" - -#: forum/registry.py:41 -msgid "administration" -msgstr "админиÑтрирование" - -#: forum/registry.py:54 -#, fuzzy -msgid "contact" -msgstr "текÑÑ‚" - -#: forum/registry.py:57 -msgid "support" -msgstr "" - -#: forum/registry.py:58 -#, fuzzy -msgid "privacy" -msgstr "личные данные" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "" - -#: forum/registry.py:83 -#, fuzzy -msgid "authentication settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/registry.py:90 -#, fuzzy -msgid "email notification settings" -msgstr "Verification Email from Q&A forum" - -#: forum/registry.py:97 -msgid "other preferences" -msgstr "" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -msgid "withdraw suspension" -msgstr "" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -msgid "upfiles/" -msgstr "" - -#: forum/urls.py:45 -msgid "faq/" -msgstr "" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "" - -#: forum/urls.py:46 -msgid "about/" -msgstr "" - -#: forum/urls.py:46 -msgid "About" -msgstr "О Ñайте" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -msgid "privacy/" -msgstr "" - -#: forum/urls.py:50 -msgid "logout/" -msgstr "" - -#: forum/urls.py:51 -msgid "answers/" -msgstr "" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -msgid "edit/" -msgstr "" - -#: forum/urls.py:52 -msgid "revisions/" -msgstr "" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -msgid "questions/" -msgstr "" - -#: forum/urls.py:54 -msgid "ask/" -msgstr "" - -#: forum/urls.py:55 -#, fuzzy -msgid "related_questions/" -msgstr "Похожие вопроÑÑ‹" - -#: forum/urls.py:57 -msgid "unanswered/" -msgstr "" - -#: forum/urls.py:62 -msgid "close/" -msgstr "" - -#: forum/urls.py:63 -msgid "reopen/" -msgstr "" - -#: forum/urls.py:64 forum/urls.py:75 -msgid "answer/" -msgstr "" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -msgid "vote/" -msgstr "" - -#: forum/urls.py:68 -#, fuzzy -msgid "like_comment/" -msgstr "answer comment" - -#: forum/urls.py:69 -#, fuzzy -msgid "comment/" -msgstr "post a comment" - -#: forum/urls.py:70 -#, fuzzy -msgid "delete_comment/" -msgstr "post a comment" - -#: forum/urls.py:71 -#, fuzzy -msgid "convert_comment/" -msgstr "post a comment" - -#: forum/urls.py:72 -msgid "accept_answer/" -msgstr "" - -#: forum/urls.py:73 -#, fuzzy -msgid "answer_link/" -msgstr "ответ" - -#: forum/urls.py:74 -msgid "mark_favorite/" -msgstr "" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -#, fuzzy -msgid "user/" -msgstr "пользователи" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -msgid "matching_users/" -msgstr "" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -msgid "convert/" -msgstr "" - -#: forum/urls.py:85 -#, fuzzy -msgid "convert_to_question/" -msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ñ ÐºÐ¾Ð¼Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ð¸Ñми" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -msgid "question/" -msgstr "" - -#: forum/urls.py:94 forum/urls.py:95 -msgid "tags/" -msgstr "" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -msgid "users/" -msgstr "" - -#: forum/urls.py:104 -#, fuzzy -msgid "award/" -msgstr "вÑе награды" - -#: forum/urls.py:105 -msgid "suspend/" -msgstr "" - -#: forum/urls.py:106 -msgid "powers/" -msgstr "" - -#: forum/urls.py:107 -msgid "subscriptions/" -msgstr "" - -#: forum/urls.py:108 -msgid "preferences/" -msgstr "" - -#: forum/urls.py:109 -msgid "favorites/" -msgstr "" - -#: forum/urls.py:110 -#, fuzzy -msgid "reputation/" -msgstr "karma" - -#: forum/urls.py:111 -msgid "votes/" -msgstr "" - -#: forum/urls.py:112 -msgid "recent/" -msgstr "" - -#: forum/urls.py:114 forum/urls.py:115 -msgid "badges/" -msgstr "" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -msgid "search/" -msgstr "" - -#: forum/urls.py:120 -#, fuzzy -msgid "contact/" -msgstr "текÑÑ‚" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -msgid "account/" -msgstr "" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -msgid "done/" -msgstr "" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -msgid "register/" -msgstr "" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -msgid "authsettings/" -msgstr "" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -msgid "remove/" -msgstr "" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -msgid "statistics/" -msgstr "" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -msgid "settings/" -msgstr "" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -msgid "new/" -msgstr "" - -#: forum/urls.py:153 -msgid "tools/" -msgstr "" - -#: forum/urls.py:157 -msgid "test_email_settings/" -msgstr "" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -#, fuzzy -msgid "voted up" -msgstr "голоÑую \"за\"" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -msgid "liked" -msgstr "" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -msgid "your" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -msgid "Initial revision" -msgstr "" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "задан" - -#: forum/actions/node.py:34 -#, fuzzy, python-format -msgid "%(user)s asked %(question)s" -msgstr "без ответов" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -msgid "answered" -msgstr "отвечен" - -#: forum/actions/node.py:55 -#, fuzzy, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" -"<div class=\"questions-count\">%(num_q)s</div>questions <strong>without " -"accepted answers</strong>" - -#: forum/actions/node.py:62 -#, fuzzy -msgid "commented" -msgstr "post a comment" - -#: forum/actions/node.py:70 -#, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -#, fuzzy -msgid "edited" -msgstr "править" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "Ñ‚Ñги отредактированы" - -#: forum/actions/node.py:101 -msgid "Retag" -msgstr "" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -msgid "reverted" -msgstr "" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -#, fuzzy -msgid "closed" -msgstr "закрыть" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -msgid "converted" -msgstr "" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum/actions/node.py:225 -#, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" - -#: forum/actions/node.py:231 -#, fuzzy -msgid "converted to question" -msgstr "list of all questions" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -msgid "created" -msgstr "" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -msgid "published" -msgstr "" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "have" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -msgid "logged in" -msgstr "" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -#, fuzzy -msgid "validated e-mail" -msgstr "How to validate email and why?" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -#, fuzzy -msgid "edited profile" -msgstr "заполнил профиль пользователÑ" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -#, fuzzy -msgid "profile" -msgstr "Профиль" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -#, fuzzy -msgid "gave reputation points" -msgstr "karma" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -msgid "point" -msgid_plural "points" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -#, fuzzy -msgid "was awarded" -msgstr "вÑе награды" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -#, fuzzy -msgid "were" -msgstr "отвечен" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -msgid "suspended" -msgstr "" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -#: forum/actions/user.py:219 -msgid "indefinetely" -msgstr "" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -#, fuzzy -msgid "Please input at least one ip address" -msgstr "ПожалуйÑта, введите email" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -msgid "Message" -msgstr "" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -msgid "None" -msgstr "" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -#, fuzzy -msgid "Markdown" -msgstr "ОÑновы размётки" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -#, fuzzy -msgid "Title" -msgstr "заголовок" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -#, fuzzy -msgid "Page Content" -msgstr "текÑÑ‚" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -#, fuzzy -msgid "Allow comments" -msgstr "post a comment" - -#: forum/forms/admin.py:99 -#, fuzzy -msgid "send validation email" -msgstr "Stop Email" - -#: forum/forms/admin.py:104 -#, fuzzy -msgid "email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/forms/auth.py:21 -#, fuzzy -msgid "Your account email" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "Ðто поле должно быть заполнено" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "ПожалуйÑта, введите email" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -msgid "Current password" -msgstr "" - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -msgid "this field is required" -msgstr "Ñто обÑзательное поле" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "Choose screen name" - -#: forum/forms/general.py:47 -msgid "user name is required" -msgstr "" - -#: forum/forms/general.py:48 -msgid "sorry, this name is taken, please choose another" -msgstr "" - -#: forum/forms/general.py:49 -msgid "sorry, this name is not allowed, please choose another" -msgstr "" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/forms/general.py:104 -msgid "email address is required" -msgstr "email обÑзателен" - -#: forum/forms/general.py:106 -msgid "this email is already used by someone else, please choose another" -msgstr "" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "Пароль" - -#: forum/forms/general.py:132 -msgid "password is required" -msgstr "" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "Password <i>(please retype)</i>" - -#: forum/forms/general.py:136 -msgid "please, retype your password" -msgstr "" - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "заголовок" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "пожалуйÑта, введите Ñодержательное опиÑание Вашего вопроÑа" - -#: forum/forms/qanda.py:31 -#, fuzzy, python-format -msgid "title must be must be at least %s characters" -msgstr "заголовок должен быть от 10 букв" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "текÑÑ‚" - -#: forum/forms/qanda.py:55 -#, fuzzy, python-format -msgid "question content must be at least %s characters" -msgstr "текÑÑ‚ вопроÑа должен быть более 10 Ñимволов" - -#: forum/forms/qanda.py:68 -#, fuzzy, python-format -msgid "answer content must be at least %s characters" -msgstr "текÑÑ‚ вопроÑа должен быть более 10 Ñимволов" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "Ñ‚Ñги" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "Общее вики" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "кратко, что поменÑлоÑÑŒ:" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" - -#: forum/forms/qanda.py:152 -msgid "Your message:" -msgstr "" - -#: forum/forms/qanda.py:158 -msgid "Your name:" -msgstr "Ваше имÑ:" - -#: forum/forms/qanda.py:159 -msgid "Email (not shared with anyone):" -msgstr "" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "ÐаÑтоÑщее имÑ" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "Сайт" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "Откуда" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "Дата рождениÑ" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "Профиль" - -#: forum/forms/qanda.py:311 -msgid "Screen name" -msgstr "Показывать Ð¸Ð¼Ñ ÐºÐ°Ðº" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "Сразу" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "Без уведомлениÑ" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -#, fuzzy -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question containing " -"<strong><span class=\"darkred\">%(searchtitle)s</span></strong></p>" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, fuzzy, python-format -msgid "on %(link)s" -msgstr "link" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -#, fuzzy -msgid "comment" -msgstr "post a comment" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -#, fuzzy -msgid "post" -msgstr "задан" - -#: forum/models/page.py:54 -#, python-format -msgid "[Unpublished] %s" -msgstr "" - -#: forum/models/question.py:34 -msgid "[deleted] " -msgstr "[удалён]" - -#: forum/models/question.py:37 -msgid "[closed] " -msgstr "[закрыт]" - -#: forum/models/tag.py:68 -msgid "interesting" -msgstr "интереÑный" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "игнор" - -#: forum/models/user.py:233 forum/views/readers.py:144 -#, fuzzy -msgid "asked-by" -msgstr "задан" - -#: forum/models/user.py:248 forum/views/readers.py:147 -#, fuzzy -msgid "answered-by" -msgstr "отвечен" - -#: forum/models/user.py:254 forum/views/readers.py:150 -#, fuzzy -msgid "subscribed-by" -msgstr "подпиÑатьÑÑ" - -#: forum/settings/__init__.py:62 -msgid "Badges config" -msgstr "" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -#, fuzzy -msgid "Accepting answers" -msgstr "oldest" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -#, fuzzy -msgid "Disallow answers to be accepted" -msgstr "answer accepted" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -#, fuzzy -msgid "Maximum accepted answers per question" -msgstr "не отвечает на вопроÑ" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -msgid "Maximum accepted answers per user/question" -msgstr "" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -#, fuzzy -msgid "Users an accept own answer" -msgstr "oldest" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -#, fuzzy -msgid "Basic settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -#, fuzzy -msgid "Your site main logo." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -msgid "Application title" -msgstr "" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -msgid "Application short name" -msgstr "" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -#, fuzzy -msgid "Application description" -msgstr "" -"Gold badge is the highest award in this community. To obtain it have to show " -"profound knowledge and ability in addition to your active participation." - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -msgid "Copyright notice" -msgstr "" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -msgid "Contact URL" -msgstr "" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email settings" -msgstr "" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -msgid "E-Mail settings test" -msgstr "" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -msgid "Email Password" -msgstr "" - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -msgid "Use TLS" -msgstr "" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -#, fuzzy -msgid "Site 'from' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -#, fuzzy -msgid "Email Subject Prefix" -msgstr "Welcome to the Q&A forum" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -msgid "Form settings" -msgstr "" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -#: forum/settings/form.py:8 -#, fuzzy -msgid "Enable community wiki" -msgstr "Общее вики" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -#, fuzzy -msgid "Limit tag creation" -msgstr "karma" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -#, fuzzy -msgid "Empty question content" -msgstr "question comment" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -msgid "Required number of tags per question" -msgstr "" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -msgid "Maximum number of tags per question" -msgstr "" - -#: forum/settings/form.py:51 -msgid "How many tags are allowed in questions." -msgstr "" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -#, fuzzy -msgid "context" -msgstr "текÑÑ‚" - -#: forum/settings/forms.py:53 -msgid "default" -msgstr "" - -#: forum/settings/forms.py:66 -#, fuzzy -msgid "Change this:" -msgstr "Change Email" - -#: forum/settings/minrep.py:4 -#, fuzzy -msgid "Minimum reputation config" -msgstr "karma" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -#, fuzzy -msgid "Show captcha if user with less reputation than" -msgstr "Graph of user karma" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -#, fuzzy -msgid "Minimum reputation to vote down" -msgstr "user karma" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -#, fuzzy -msgid "Minimum reputation to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -#, fuzzy -msgid "Minimum reputation to like a comment" -msgstr "user karma" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -#, fuzzy -msgid "Minimum reputation to create tags" -msgstr "user karma" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -msgid "Minimum reputation to retag others questions" -msgstr "" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -#, fuzzy -msgid "Minimum reputation to mark post as community wiki" -msgstr "user karma" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -#, fuzzy -msgid "Minimum reputation to delete comments" -msgstr "user karma" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -#, fuzzy -msgid "Minimum reputation to convert answers to comment" -msgstr "user karma" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -#, fuzzy -msgid "Minimum reputation to convert comments to answers" -msgstr "user karma" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -#, fuzzy -msgid "Minimum reputation to convert answers to questions" -msgstr "user karma" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -#, fuzzy -msgid "Moderation settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "комментировать" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "комментировать" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -msgid "Flag Reasons" -msgstr "" - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -#: forum/settings/moderation.py:41 -msgid "Close Reasons" -msgstr "" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -#, fuzzy -msgid "Initial reputation" -msgstr "karma" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -msgid "Rep lost by downvoted" -msgstr "" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -msgid "Rep gain by accepted answer" -msgstr "" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -msgid "Application intro" -msgstr "" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Sitemap settings" -msgstr "" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -#, fuzzy -msgid "Questions Sitemap Limit" -msgstr "question comment" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -#, fuzzy -msgid "Your custom footer." -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -msgid "The maximum allowed file size for uploads in mb." -msgstr "" - -#: forum/settings/urls.py:4 -msgid "URL settings" -msgstr "" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -#, fuzzy -msgid "Users settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "karma" - -#: forum/settings/users.py:11 -#, fuzzy -msgid "Check if you want to allow negative user reputations in the community." -msgstr "user karma" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -#, fuzzy -msgid "Editable screen name" -msgstr "Показывать Ð¸Ð¼Ñ ÐºÐ°Ðº" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -#: forum/settings/users.py:25 -msgid "Minimum username length" -msgstr "" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "ass" -msgstr "ответов" - -#: forum/settings/users.py:29 -msgid "sex" -msgstr "" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "править" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -msgid "save" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "удалить" - -#: forum/settings/users.py:29 -msgid "manage" -msgstr "" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "update" -msgstr "отредактирован" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -msgid "remove" -msgstr "удалить" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "new" -msgstr "новые" - -#: forum/settings/users.py:31 -#, fuzzy -msgid "Disabled usernames" -msgstr "Choose screen name" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -#, fuzzy -msgid "Truncate long usernames" -msgstr "Choose screen name" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -msgid "Show user accept rate" -msgstr "" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -msgid "Freeze accept rate" -msgstr "" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -#, fuzzy -msgid "Force unique email" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "ask questions" -msgstr "задать вопроÑ" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "provide answers" -msgstr "oldest" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "make comments" -msgstr "post a comment" - -#: forum/settings/users.py:72 -msgid "report posts" -msgstr "" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -#, fuzzy -msgid "Gravatar rating" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -#, fuzzy -msgid "Gravatar default" -msgstr "" -"<strong>Gravatar</strong> means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong> - your unique avatar image " -"associated with your email address. It's simply a picture that shows next to " -"your posts on the websites that support gravatar protocol. By default gravar " -"appears as a square filled with a snowflake-like figure. You can <strong>set " -"your image</strong> at <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a>" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -msgid "View settings" -msgstr "" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -#, fuzzy -msgid "Recent tags block size" -msgstr "Ðедавние Ñ‚Ñги" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -#, fuzzy -msgid "Recent awards block size" -msgstr "Ðедавние награды" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -msgid "Update latest activity on tag edit" -msgstr "" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -#, fuzzy -msgid "Limit related tags block" -msgstr "Tags" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -#, fuzzy -msgid "Add reputation to max votes per day" -msgstr "user karma" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -msgid "Flag count to delete post" -msgstr "" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -msgid "Days to cancel a vote" -msgstr "" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -msgid "Redirecting to the login page." -msgstr "" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -#, fuzzy -msgid "to home page" -msgstr "на главную" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "вÑе вопроÑÑ‹" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "вÑе Ñ‚Ñги" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -#, fuzzy -msgid "404 Not Found" -msgstr "Ðичего не нашли" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -msgid "if you believe this error 404 should not have occurred, please" -msgstr "" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -msgid "see latest questions" -msgstr "" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -msgid "see tags" -msgstr "Ñмотреть Ñ‚Ñги" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "Сменить пароль" - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "Редактировать ответ" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "ÑпрÑтать предпроÑмотр" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "показать предпроÑмотр" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "назад" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "Сохранить правку" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "Отменить" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "Tips" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -msgid "please try to provide details" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "Login/Signup to Post" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "Задайте Ñвой вопроÑ" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -msgid "Badges summary" -msgstr "" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" -"If your questions and answers are highly voted, your contribution to this " -"Q&A community will be recognized with the variety of badges." - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -#, fuzzy -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "" -"Currently badges differ only by their level: <strong>gold</strong>, " -"<strong>silver</strong> and <strong>bronze</strong> (their meanings are " -"described on the right). In the future there will be many types of badges at " -"each level. <strong>Please give us your <a href='%(feedback_faq_url)" -"s'>feedback</a></strong> - what kinds of badges would you like to see and " -"suggest the activity for which those badges might be awarded." - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "Badge levels" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "золотых" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "ОпиÑание золотой медали" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "" - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "ÑеребрÑных" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "ОпиÑание ÑеребрÑной медали" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "бронзовых" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -msgid "bronze badge description" -msgstr "ОпиÑание бронзовой медали" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -msgid "Message:" -msgstr "" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -#, fuzzy -msgid "Close" -msgstr "закрыть" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -msgid "words" -msgstr "" - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "" - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -msgid "home" -msgstr "на главную" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -msgid "Feedback" -msgstr "" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -msgid "(this field is required)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -msgid "Send Feedback" -msgstr "" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "на главную" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "задать вопроÑ" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "поиÑк" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "вопроÑÑ‹" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "пользователи" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -#, fuzzy -msgid "welcome to " -msgstr "Welcome to Q&A forum" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" -"Clicking <strong>Logout</strong> will log you out from the forum, but will " -"not sign you off from your OpenID provider.</p><p>If you wish to sign off " -"completely - please make sure to log out from your OpenID provider as well." - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "Выйти" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -#, fuzzy -msgid "Markdown Help" -msgstr "ОÑновы размётки" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -#, fuzzy -msgid "Markdown Syntax" -msgstr "ОÑновы размётки" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -msgid "Headers" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -msgid "Links" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -msgid "link text" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -msgid "A Lot More" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "Я человек" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -#, fuzzy -msgid "Search" -msgstr "поиÑк" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "вопроÑов на Ñтраницу" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "предыдущаÑ" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "Ñта Ñтраница" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "номер Ñтраницы" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "ÑледующаÑ" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" -"Respecting users privacy is an important core principle of this Q&A " -"forum. Information on this page details how this forum protects your " -"privacy, and what type of information is collected." - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" -"Information on question views, revisions of questions and answers - both " -"times and content are recorded for each user in order to correctly count " -"number of views, maintain data integrity and report relevant updates." - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "Личные данные" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" -"Members of this community may choose to display personally identifiable " -"information in their profiles. Forum will never display such information " -"without a request from the user." - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" -"None of the data that is not openly shown on the forum by the choice of the " -"user is shared with any third party." - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" -"Forum software relies on the internet cookie technology to keep track of " -"user sessions. Cookies must be enabled in your browser so that forum can " -"work for you." - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -msgid "how privacy policies can be changed" -msgstr "" -"These policies may be adjusted to improve protection of user's privacy. " -"Whenever such changes occur, users will be notified via the internal " -"messaging system. " - -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "" - -#: forum/skins/default/templates/question.html:149 -#, fuzzy, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "новые ответы" -msgstr[1] "новые ответы" -msgstr[2] "новые ответы" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "Ваш ответ" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -msgid "Be the first one to answer this question!" -msgstr "Ваш ответ будет первым!" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -msgid "Answer Your Own Question" -msgstr "Ответить на Ñвой вопроÑ" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "ТÑги" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "вопроÑÑ‹, отмеченные Ñ‚Ñгом" - -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -msgid "question asked" -msgstr "Задан" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "ПроÑмотров" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "Отредактирован" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -msgid "Related questions" -msgstr "Похожие вопроÑÑ‹" - -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "Редактировать вопроÑ" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "Редактировать Ñ‚Ñги" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -msgid "tags help us keep Questions organized" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "ответов" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "голоÑов" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "Ñмотрели" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -msgid "subscribe to question RSS feed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "Переоткрыть вопроÑ" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "The question was closed for the following reason " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "on " -msgstr "" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -msgid "Reopen this question" -msgstr "" - -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -#, fuzzy -msgid "Follow this question" -msgstr "поÑледние вопроÑÑ‹" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -#, fuzzy -msgid "By Email" -msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "Ð’Ñ‹ автоматичеÑки подпиÑаны на Ñтот вопроÑ." - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -msgid "You are subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -msgid "You are not subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "отпиÑатьÑÑ" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "подпиÑатьÑÑ" - -#: forum/skins/default/templates/subscription_status.html:25 -#, fuzzy, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" -"\n" -" (Ð’Ñ‹ можете поменÑÑ‚ÑŒ наÑтройки оповещений на Ñтранице <a href=" -"\"%(profile_url)s?sort=email_subscriptions\">профилÑ</a>)\n" -" " - -#: forum/skins/default/templates/subscription_status.html:30 -#, fuzzy -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" -"<span class='strong'>Here</span> (once you log in) you will be able to sign " -"up for the periodic email updates about this question." - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -#, fuzzy -msgid "subscribe to answers" -msgstr "подпиÑатьÑÑ" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -#, fuzzy -msgid "Answers" -msgstr "ответов" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "subscribe to comments and answers" -msgstr "oldest" - -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "Answers and Comments" -msgstr "комментировать" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -msgid "Nothing found" -msgstr "Ðичего не нашли" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" -"<span class='strong'>To change your password</span> please fill out and " -"submit this form" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -#, fuzzy -msgid "Create password" -msgstr "Password <i>(please retype)</i>" - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "New user signup" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "New user signup" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "Signup" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -msgid "This e-mail has already been validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -#, fuzzy -msgid "Validate my email address" -msgstr "Your email <i>(never shared)</i>" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "User login" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "Click" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "With the OpenID you don't need to create new username and password." - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "You can safely re-use the same login for all OpenID-enabled websites." - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "" -"There are > 160,000,000 OpenID account in use. Over 10,000 sites are OpenID-" -"enabled." - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "OpenID is based on an open standard, supported by many organizations." - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -#, fuzzy -msgid "Go to your account" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " -"anyone, must be valid)" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -#, fuzzy -msgid "Send link" -msgstr "link" - -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -#, fuzzy -msgid "Username: " -msgstr "Ваше имÑ:" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -msgid "mark this answer as the accepted answer" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -msgid "characters left" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -#, fuzzy -msgid " comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -#, fuzzy -msgid " cancel" -msgstr "Отменить" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "комментировать" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -#, fuzzy -msgid "Edit comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -#, fuzzy -msgid "Delete comment" -msgstr "post a comment" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -#, fuzzy -msgid "Convert comment to answer" -msgstr "ответ Ñ ÐºÐ¾Ð¼Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ð¸Ñми" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -#, fuzzy -msgid "just now" -msgstr "Logout Now" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -msgid "I like this comment (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "list of all questions" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -#, fuzzy -msgid "add new comment" -msgstr "комментировать" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -#, fuzzy -msgid "Place the comment under:" -msgstr "post a comment" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -#, fuzzy -msgid "Convert to question" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -#, fuzzy -msgid "Permanent link" -msgstr "ÑÑылка" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -msgid "more" -msgstr "" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -msgid "I like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -msgid "I dont like this post (click again to cancel)" -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, fuzzy, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "Ответ на Ð²Ð¾Ð¿Ñ€Ð¾Ñ '%(question_title)s' принÑÑ‚" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -msgid "Thanks" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, fuzzy, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" -"\n" -"(one comment)" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, fuzzy, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -msgid "We think you might like the following questions:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, fuzzy, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, fuzzy, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, fuzzy, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, fuzzy, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, fuzzy, python-format -msgid "the question %(question_link)s" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, fuzzy, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question tagged</p><p><span " -"class=\"tag\">%(tagname)s</span></p>" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, fuzzy, python-format -msgid "the question \"%(question_title)s\"" -msgstr "Post Your Answer" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -#, fuzzy -msgid "Site Administration" -msgstr "админиÑтрирование" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -#, fuzzy -msgid "Create User" -msgstr "Password <i>(please retype)</i>" - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -#, fuzzy -msgid "Quick creation of a new user" -msgstr "answer" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -#, fuzzy -msgid "Save" -msgstr "Сохранить правку" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -msgid "Quick statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "user" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -msgid "Site status" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -msgid "Recent activity" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -#, fuzzy -msgid "Administration Area" -msgstr "админиÑтрирование" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -#, fuzzy -msgid "Welcome," -msgstr "Welcome to Q&A forum" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -#, fuzzy -msgid "Back to home page" -msgstr "на главную" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -msgid "Log out" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -msgid "Home" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -msgid "Forum settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -#, fuzzy -msgid "Static content" -msgstr "текÑÑ‚" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -msgid "Custom Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -#, fuzzy -msgid "Other settings" -msgstr "интереÑный" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -#, fuzzy -msgid "Editing page" -msgstr "Редактировать ответ" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -#, fuzzy -msgid "Creating page" -msgstr "Ñта Ñтраница" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -#, fuzzy -msgid "New page" -msgstr "ÑледующаÑ" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Published" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -msgid "Unpublished" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -msgid "Edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -msgid "Unpublish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -msgid "Publish" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -msgid "Site statistics" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "Recalculate" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -#, fuzzy -msgid "Adjust settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -#, fuzzy -msgid "Open site" -msgstr "Сайт" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -#, fuzzy -msgid "Moderation" -msgstr "Откуда" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -#, fuzzy -msgid "newer users" -msgstr "новые ответы" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -#, fuzzy -msgid "older users" -msgstr "oldest" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -msgid "(Comma separated list of user ids)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -#, fuzzy -msgid "Email" -msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -#, fuzzy -msgid "Validated" -msgstr "отредактирован" - -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -msgid "Not validated" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -#, fuzzy -msgid "Reputation:" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -#, fuzzy -msgid "Reputation" -msgstr "karma" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -msgid "Cheating score" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -#, fuzzy -msgid "Possible fake accounts" -msgstr "Signup" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -#, fuzzy -msgid "out of" -msgstr "Выйти" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -#, fuzzy -msgid "rep" -msgstr "переоткрыть" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -msgid "uses" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -msgid "Node manager" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -#, fuzzy -msgid "any" -msgstr "день" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -msgid "By author(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -msgid "By tag(s)" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -msgid "Filter name..." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -#, fuzzy -msgid "Action" -msgstr "Откуда" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -#, fuzzy -msgid "Mark deleted" -msgstr "[удалён]" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -#, fuzzy -msgid "Undelete" -msgstr "удалить" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -#, fuzzy -msgid "Delete completely" -msgstr "post a comment" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -#, fuzzy -msgid "Close (questions only)" -msgstr "<strong>Newest</strong> questions are shown first." - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -msgid "State" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -msgid "Author" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -msgid "Last activity by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -msgid "Last activity at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -#, fuzzy -msgid "Preview" -msgstr "Ñмотрели" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -msgid "Reset Changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -msgid "Pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "удалить" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#, fuzzy -msgid "next" -msgstr "ÑледующаÑ" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -#, fuzzy -msgid "vote" -msgstr "голоÑ" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -msgid "this question has an accepted answer" -msgstr "" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -#, fuzzy -msgid "view" -msgstr "Ñмотрели" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "Tags" - -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "Ñмотреть вопроÑÑ‹ Ñ Ñ‚Ñгом '%(tag_name)s'" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "недавно отредактированные вопроÑÑ‹" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -msgid "active" -msgstr "активные" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "заданные недавно" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "новые" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "Ñамые обÑуждаемые" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "обÑуждаемые" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "вопроÑÑ‹, за которые больше вÑего голоÑуют" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "популÑрные" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -#, fuzzy -msgid "Unsubscribe" -msgstr "отпиÑатьÑÑ" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -msgid "Interesting tags" -msgstr "Избранные Ñ‚Ñги" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -msgid "Ignored tags" -msgstr "Игнорировать Ñ‚Ñги" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "Tagged questions" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "Без ответов" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -#, fuzzy -msgid "All Questions" -msgstr "Ð’Ñе вопроÑÑ‹" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -#, fuzzy -msgid "Markdown Basics" -msgstr "ОÑновы размётки" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -msgid "*italic* or _italic_" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "Ðедавние награды" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "вÑе награды" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "Ðедавние Ñ‚Ñги" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "популÑрные Ñ‚Ñги" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -#, fuzzy -msgid "gravatar" -msgstr "что такое граватар" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -msgid "Screen Name" -msgstr "" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "karma" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -msgid "Suspended" -msgstr "" - -#: forum/skins/default/templates/users/info.html:42 -#, fuzzy -msgid "Administrator" -msgstr "админиÑтрирование" - -#: forum/skins/default/templates/users/info.html:45 -msgid "Moderator" -msgstr "" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "member since" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "" - -#: forum/skins/default/templates/users/info.html:71 -msgid "user's website" -msgstr "" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "" - -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "years old" - -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -msgid "not validated" -msgstr "" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -#, fuzzy -msgid "User tools" -msgstr "User login" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -#, fuzzy -msgid "Users Online" -msgstr "User login" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, python-format -msgid "users matching query %(suser)s:" -msgstr "" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -msgid "Preferences" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -#, fuzzy -msgid "No favorite questions to display." -msgstr "вопроÑÑ‹, за которые больше вÑего голоÑуют" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "медали" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">%(counter)s</span> ВопроÑ\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> ВопроÑа\n" -" " -msgstr[2] "" -"\n" -" <span class=\"count\">%(counter)s</span> ВопроÑов\n" -" " - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">1</span> Ответ\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> Ответа\n" -" " -msgstr[2] "" -"\n" -" <span class=\"count\">%(counter)s</span> Ответов\n" -" " - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">1</span> ГолоÑ\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(cnt)s</span> ГолоÑа\n" -" " -msgstr[2] "" -"\n" -" <span class=\"count\">%(cnt)s</span> ГолоÑов\n" -" " - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -msgid "user voted down this many times" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">1</span> ТÑг\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">1</span> ТÑга\n" -" " -msgstr[2] "" -"\n" -" <span class=\"count\">1</span> ТÑгов\n" -" " - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, fuzzy, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -"\n" -" <span class=\"count\">1</span> Медаль\n" -" " -msgstr[1] "" -"\n" -" <span class=\"count\">%(counter)s</span> Медали\n" -" " -msgstr[2] "" -"\n" -" <span class=\"count\">%(counter)s</span> Медалей\n" -" " - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -#, fuzzy -msgid "show auto-subscribe" -msgstr "отпиÑатьÑÑ" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -#, fuzzy -msgid "Notifications and subscription settings" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -#, fuzzy -msgid "A new question is posted" -msgstr "Tips" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -#, fuzzy -msgid "Questions I view" -msgstr "Tags" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "Ð’Ñе вопроÑÑ‹" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -#, fuzzy -msgid "An answer is posted" -msgstr "Tips" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -#, fuzzy -msgid "An answer is accepted" -msgstr "answer accepted" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -msgid "Public message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -msgid "Private message" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "голоÑую \"за\"" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "голоÑую \"против\"" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "новые ответы" -msgstr[1] "новые ответы" -msgstr[2] "новые ответы" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr "Ñ‚Ñги обÑзательны" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, fuzzy, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" -"\n" -"<div class=\"questions-count\">%(q_num)s</div><p>question with title " -"containing <strong><span class=\"darkred\">%(searchtitle)s</span></strong></" -"p>" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -msgid "keep ignored questions hidden" -msgstr "" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "sorry, file uploading requires karma >60" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -msgid "Score" -msgstr "" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -msgid "*italic* or __italic__" -msgstr "" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -msgid "reputation points" -msgstr "karma" - -#: forum/templatetags/extra_tags.py:114 -#, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:120 -#, fuzzy, python-format -msgid "%s has one accepted answer" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:126 -#, fuzzy, python-format -msgid "%s has no accepted answers" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:132 -#, fuzzy -msgid "accept rate" -msgstr "oldest" - -#: forum/templatetags/extra_tags.py:133 -msgid "Rate of the user's accepted answers" -msgstr "" - -#: forum/templatetags/extra_tags.py:166 -msgid "2 days ago" -msgstr "2 Ð´Ð½Ñ Ð½Ð°Ð·Ð°Ð´" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "вчера" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hour ago" -msgstr "%(hr)d Ñ‡Ð°Ñ Ð½Ð°Ð·Ð°Ð´" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hours ago" -msgstr "%(hr)d Ñ‡Ð°Ñ Ð½Ð°Ð·Ð°Ð´" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "%(hr)d Ñ‡Ð°Ñ Ð½Ð°Ð·Ð°Ð´" -msgstr[1] "%(hr)d чаÑа назад" -msgstr[2] "%(hr)d чаÑов назад" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "min ago" -msgstr "%(min)d минуту назад" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "mins ago" -msgstr "%(min)d минуту назад" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "%(min)d минуту назад" -msgstr[1] "%(min)d минуты назад" -msgstr[2] "%(min)d минут назад" - -#: forum/templatetags/extra_tags.py:174 -msgid "sec ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -msgid "secs ago" -msgstr "" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "ÑÑылка" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "ÑÑылка на ответ" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -msgid "retag" -msgstr "Ñменить Ñ‚Ñги" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "переоткрыть" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "закрыть" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "" -"отметить как нежелательный (Ñ‚.е. Ñпам, реклама, злонамеренный текÑÑ‚, и Ñ‚.п.)" - -#: forum/templatetags/node_tags.py:149 -#, fuzzy -msgid "undelete" -msgstr "удалить" - -#: forum/templatetags/node_tags.py:156 -#, fuzzy -msgid "see revisions" -msgstr "вÑе вопроÑÑ‹" - -#: forum/templatetags/node_tags.py:163 -#, fuzzy -msgid "mark as community wiki" -msgstr "Общее вики" - -#: forum/templatetags/node_tags.py:167 -#, fuzzy -msgid "cancel community wiki" -msgstr "Общее вики" - -#: forum/templatetags/node_tags.py:171 -#, fuzzy -msgid "convert to comment" -msgstr "post a comment" - -#: forum/templatetags/node_tags.py:175 -#, fuzzy -msgid "convert to question" -msgstr "Post Your Answer" - -#: forum/templatetags/node_tags.py:258 -msgid "posted" -msgstr "задан" - -#: forum/views/admin.py:141 -#, fuzzy -msgid "Questions Graph" -msgstr "Tags" - -#: forum/views/admin.py:145 -msgid "Users Graph" -msgstr "" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "Create new user" -msgstr "Password <i>(please retype)</i>" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, fuzzy, python-format -msgid "See %s profile" -msgstr "заполнил профиль пользователÑ" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -msgid "author" -msgstr "" - -#: forum/views/admin.py:447 -msgid "author_asc" -msgstr "" - -#: forum/views/admin.py:448 -msgid "score" -msgstr "" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -msgid "filter" -msgstr "" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -#, fuzzy -msgid "bulk close" -msgstr "закрыть" - -#: forum/views/admin.py:496 -#, fuzzy -msgid "Selected questions were closed" -msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ ÑƒÐ´Ð°Ð»Ñ‘Ð½" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -msgid "A welcome email has been sent to your email address. " -msgstr "" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -msgid "An email has been sent with your temporary login key" -msgstr "" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -msgid "A message with an email validation link was just sent to your address." -msgstr "" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -#, fuzzy -msgid "New password set" -msgstr "Recover password" - -#: forum/views/auth.py:337 -msgid "Your password was changed" -msgstr "" - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -#: forum/views/auth.py:403 -#, fuzzy -msgid "save it" -msgstr "Сохранить правку" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -#, fuzzy -msgid "review" -msgstr "Ñмотрели" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -#, fuzzy -msgid "cancel" -msgstr "Отменить" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "день" -msgstr[1] "днÑ" -msgstr[2] "дней" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "пожаловатьÑÑ" - -#: forum/views/commands.py:153 -msgid "flags" -msgstr "" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -#: forum/views/commands.py:163 forum/views/commands.py:409 -msgid "Reason is empty" -msgstr "" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -#, fuzzy -msgid "like comments" -msgstr "post a comment" - -#: forum/views/commands.py:178 -msgid "like" -msgstr "" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -#, fuzzy -msgid "delete comments" -msgstr "post a comment" - -#: forum/views/commands.py:224 -msgid "mark a question as favorite" -msgstr "" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -#: forum/views/commands.py:267 -#, fuzzy -msgid "edit comments" -msgstr "post a comment" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -#, fuzzy -msgid "accept answers" -msgstr "oldest" - -#: forum/views/commands.py:323 -msgid "Sorry but you cannot accept the answer" -msgstr "" - -#: forum/views/commands.py:332 -#, fuzzy -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "еÑÑ‚ÑŒ ответ, правильный ответ принÑÑ‚" -msgstr[1] "еÑÑ‚ÑŒ ответ, правильный ответ принÑÑ‚" -msgstr[2] "еÑÑ‚ÑŒ ответ, правильный ответ принÑÑ‚" - -#: forum/views/commands.py:339 -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" - -#: forum/views/commands.py:347 -#, fuzzy -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" -"\n" -" %(rev_count)s верÑиÑ\n" -" " - -#: forum/views/commands.py:369 forum/views/commands.py:372 -msgid "delete posts" -msgstr "" - -#: forum/views/commands.py:395 forum/views/commands.py:404 -#, fuzzy -msgid "close questions" -msgstr "Ð’Ñе вопроÑÑ‹" - -#: forum/views/commands.py:399 -#, fuzzy -msgid "reopen questions" -msgstr "Переоткрыть вопроÑ" - -#: forum/views/commands.py:421 forum/views/commands.py:433 -#, fuzzy -msgid "mark posts as community wiki" -msgstr "Общее вики" - -#: forum/views/commands.py:425 -#, fuzzy -msgid "cancel a community wiki post" -msgstr "Общее вики" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -#, fuzzy -msgid "convert answers to comments" -msgstr "answer comment" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -#, fuzzy -msgid "Question" -msgstr "вопроÑ" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -#, fuzzy -msgid "convert comments to answers" -msgstr "oldest" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -#, fuzzy -msgid "award" -msgstr "вÑе награды" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -#, fuzzy -msgid "Most <strong>recently updated</strong> questions" -msgstr "недавно отредактированные вопроÑÑ‹" - -#: forum/views/readers.py:40 -#, fuzzy -msgid "most <strong>recently asked</strong> questions" -msgstr "заданные недавно" - -#: forum/views/readers.py:41 -#, fuzzy -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr " " - -#: forum/views/readers.py:42 -#, fuzzy -msgid "mostvoted" -msgstr "популÑрные" - -#: forum/views/readers.py:42 -#, fuzzy -msgid "most <strong>voted</strong> questions" -msgstr "вопроÑÑ‹, за которые больше вÑего голоÑуют" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "oldest" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "новые ответы" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "популÑрные ответы" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "" - -#: forum/views/readers.py:63 forum/views/users.py:41 -#, fuzzy -msgid "name" -msgstr "по имени" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "по имени" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -msgid "used" -msgstr "" - -#: forum/views/readers.py:64 -msgid "by popularity" -msgstr "по популÑрноÑти" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "" - -#: forum/views/readers.py:72 -msgid " - " -msgstr " - " - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "поÑледние вопроÑÑ‹" - -#: forum/views/readers.py:85 -#, fuzzy -msgid "unanswered" -msgstr "отвечен" - -#: forum/views/readers.py:89 -#, fuzzy -msgid "open questions without an accepted answer" -msgstr "еÑÑ‚ÑŒ ответ, правильный ответ принÑÑ‚" - -#: forum/views/readers.py:91 -#, fuzzy -msgid "Unanswered Questions" -msgstr "Без ответов" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -#: forum/views/readers.py:126 -#, fuzzy, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "Ñмотреть вопроÑÑ‹ Ñ Ñ‚Ñгом '%(tag_name)s'" - -#: forum/views/readers.py:146 -#, fuzzy, python-format -msgid "Questions asked by %s" -msgstr "Задан" - -#: forum/views/readers.py:149 -#, fuzzy, python-format -msgid "Questions answered by %s" -msgstr "answer" - -#: forum/views/readers.py:156 -#, fuzzy, python-format -msgid "Questions you subscribed %s" -msgstr "Tags" - -#: forum/views/readers.py:158 -#, fuzzy, python-format -msgid "Questions subscribed by %s" -msgstr "отпиÑатьÑÑ" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -msgid "relevance" -msgstr "" - -#: forum/views/readers.py:251 -#, fuzzy -msgid "most relevant questions" -msgstr "вопроÑÑ‹, за которые больше вÑего голоÑуют" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -#, fuzzy -msgid "sorted by reputation" -msgstr "karma" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "" - -#: forum/views/users.py:39 -#, fuzzy -msgid "newest members" -msgstr "новые ответы" - -#: forum/views/users.py:40 -msgid "last" -msgstr "" - -#: forum/views/users.py:40 -#, fuzzy -msgid "oldest members" -msgstr "oldest" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "" - -#: forum/views/users.py:41 -#, fuzzy -msgid "sorted by username" -msgstr "Choose screen name" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -#, fuzzy -msgid "Profile updated." -msgstr "Отредактирован" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "" - -#: forum/views/users.py:321 -msgid "user overview" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "" - -#: forum/views/users.py:358 -msgid "recent user activity" -msgstr "" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "karma history" - -#: forum/views/users.py:367 -#, fuzzy -msgid "graph of user karma" -msgstr "Graph of user karma" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "" - -#: forum/views/users.py:395 -#, fuzzy -msgid "subscription" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/views/users.py:395 -msgid "subscriptions" -msgstr "" - -#: forum/views/users.py:428 -#, fuzzy -msgid "New subscription settings are now saved" -msgstr "" -"<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "" - -#: forum/views/users.py:451 -msgid "New preferences saved" -msgstr "" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "sorry, file uploading requires karma >60" - -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "" - -#: forum/views/writers.py:65 -#, python-format -msgid "maximum upload file size is %sM" -msgstr "" - -#: forum/views/writers.py:67 -#, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -#, fuzzy -msgid "validate your email" -msgstr "How to validate email and why?" - -#: forum/views/writers.py:129 -#, fuzzy -msgid "Converted to question" -msgstr "Post Your Answer" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -#, fuzzy -msgid "Minimum reputation to not have your posts checked" -msgstr "user karma" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, python-format -msgid "Asked a question with %s views" -msgstr "" - -#: forum_modules/default_badges/badges.py:24 -#, fuzzy -msgid "Popular Question" -msgstr "Задайте Ñвой вопроÑ" - -#: forum_modules/default_badges/badges.py:30 -#, fuzzy -msgid "Notable Question" -msgstr "Ñамые обÑуждаемые" - -#: forum_modules/default_badges/badges.py:35 -#, fuzzy -msgid "Famous Question" -msgstr "задать вопроÑ" - -#: forum_modules/default_badges/badges.py:54 -#, python-format -msgid "Question voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:58 -#, fuzzy -msgid "Nice Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:63 -#, fuzzy -msgid "Good Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:68 -#, fuzzy -msgid "Great Question" -msgstr "Tags" - -#: forum_modules/default_badges/badges.py:77 -#, fuzzy, python-format -msgid "Answer voted up %s times" -msgstr "Post Your Answer" - -#: forum_modules/default_badges/badges.py:81 -#, fuzzy -msgid "Nice Answer" -msgstr "ответ отредактирован" - -#: forum_modules/default_badges/badges.py:86 -#, fuzzy -msgid "Good Answer" -msgstr "oldest" - -#: forum_modules/default_badges/badges.py:91 -#, fuzzy -msgid "Great Answer" -msgstr "ответ" - -#: forum_modules/default_badges/badges.py:100 -#, python-format -msgid "Question favorited by %s users" -msgstr "" - -#: forum_modules/default_badges/badges.py:108 -#, fuzzy -msgid "Favorite Question" -msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¾Ñ‚Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½" - -#: forum_modules/default_badges/badges.py:113 -#, fuzzy -msgid "Stellar Question" -msgstr "Ð’Ñе вопроÑÑ‹" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -msgid "First down vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:150 -msgid "Supporter" -msgstr "" - -#: forum_modules/default_badges/badges.py:151 -msgid "First up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -msgid "Editor" -msgstr "" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -msgid "First accepted answer on your own question" -msgstr "" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -msgid "Completed all user profile fields" -msgstr "" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -msgid "Pundit" -msgstr "" - -#: forum_modules/default_badges/badges.py:221 -#, python-format -msgid "Left %s comments" -msgstr "" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, fuzzy, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " -"can always <strong>revise your original question</strong>. Please " -"<strong>use comments for discussions</strong> and <strong>please don't " -"forget to vote :)</strong> for the answers that you liked (or perhaps did " -"not like)! " - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, python-format -msgid "Edited %s entries" -msgstr "" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -msgid "Teacher" -msgstr "" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, python-format -msgid "Accepted answer and voted up %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:304 -msgid "Necromancer" -msgstr "" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, python-format -msgid "Created a tag used by %s questions" -msgstr "" - -#: forum_modules/default_badges/badges.py:326 -msgid "Validated Email" -msgstr "" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -msgid "Notable Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -msgid "Famous Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -msgid "Nice Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -#, fuzzy -msgid "Nice Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -msgid "Good Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -#, fuzzy -msgid "Good Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -msgid "Great Answer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -#, fuzzy -msgid "Great Question up votes" -msgstr "Tags" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -msgid "Favorite Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -msgid "Pundit number of comments" -msgstr "" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -msgid "Guru up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -msgid "Necromancer up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -msgid "Writing inf file." -msgstr "" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -#, fuzzy -msgid "Starting" -msgstr "интереÑный" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -msgid "Done" -msgstr "" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -msgid "Nodes" -msgstr "" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -#, fuzzy -msgid "Actions" -msgstr "Откуда" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -#, fuzzy -msgid "Awards" -msgstr "вÑе награды" - -#: forum_modules/exporter/exporter.py:538 -msgid "Settings" -msgstr "" - -#: forum_modules/exporter/forms.py:5 -msgid "tar.gz" -msgstr "" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Exporter settings" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -msgid "Data export settings" -msgstr "" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -#, fuzzy -msgid "download/" -msgstr "голоÑую \"против\"" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -#, fuzzy -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" -"\n" -" <span class=\"count\">1</span> Медаль\n" -" " - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -msgid "Login failed." -msgstr "" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -msgid "Please enter username and password" -msgstr "" - -#: forum_modules/localauth/forms.py:96 -msgid "Please enter your password" -msgstr "" - -#: forum_modules/localauth/forms.py:98 -msgid "Please enter user name" -msgstr "" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -#, fuzzy -msgid "Enter your local user name and password" -msgstr "" -"<span class='big strong'>Enter your CNPROG login and password</span><br/" -"><span class='grey'>(or select your OpenID provider above)</span>" - -#: forum_modules/localauth/templates/loginform.html:4 -msgid "or select your external provider above" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:8 -#, fuzzy -msgid "Login name" -msgstr "Ваше имÑ:" - -#: forum_modules/localauth/templates/loginform.html:16 -#, fuzzy -msgid "Password" -msgstr "Send me a new password" - -#: forum_modules/localauth/templates/loginform.html:27 -#, fuzzy -msgid "Create account" -msgstr "Signup" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -msgid "Twitter consumer key" -msgstr "" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -msgid "Enter your OpenId Url" -msgstr "" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, fuzzy, python-format -msgid "user-%(id)s" -msgstr "пользователи" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "Updater Settings" -msgstr "Ñ‚Ñги обновлены" - -#: forum_modules/updates/settings.py:8 -msgid "OSQA Update Checker Settings." -msgstr "" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -#, fuzzy -msgid "updater/" -msgstr "отредактирован" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -#, fuzzy -msgid "updater" -msgstr "отредактирован" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -msgid "Update Checker" -msgstr "" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" - -#~ msgid "duplicate question" -#~ msgstr "дублированный вопроÑ" - -#~ msgid "question is off-topic or not relevant" -#~ msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ - офф-топик или не отноÑитÑÑ Ðº делу" - -#~ msgid "too subjective and argumentative" -#~ msgstr "Ñлишком Ñубъективный и неаргументированный" - -#~ msgid "problem is not reproducible or outdated" -#~ msgstr "проблема не воÑпроизводитÑÑ Ð¸Ð»Ð¸ более не актуальна" - -#~ msgid "question contains offensive inappropriate, or malicious remarks" -#~ msgstr "" -#~ "в вопроÑе еÑÑ‚ÑŒ оÑкорбительные, неумеÑтные или злонамеренные замечаниÑ" - -#~ msgid "spam or advertising" -#~ msgstr "Ñпам или реклама" - -#~ msgid "received award" -#~ msgstr "received badge" - -#~ msgid "marked best answer" -#~ msgstr "отмечен лучший ответ" - -#~ msgid "upvote canceled" -#~ msgstr "Ñнимаю Ð³Ð¾Ð»Ð¾Ñ \"за\"" - -#~ msgid "downvote canceled" -#~ msgstr "Ñнимаю Ð³Ð¾Ð»Ð¾Ñ \"против\"" - -#~ msgid "deleted answer" -#~ msgstr "ответ удалён" - -#~ msgid "marked offensive" -#~ msgstr "отмечен как оÑкорбительный" - -#~ msgid "selected favorite" -#~ msgstr "добавлен в избранные" - -#~ msgid "question_answered" -#~ msgstr "answer" - -#~ msgid "answer_accepted" -#~ msgstr "answer accepted" - -#~ msgid "[closed]" -#~ msgstr "[закрыт]" - -#~ msgid "initial version" -#~ msgstr "Ð¿ÐµÑ€Ð²Ð°Ñ Ð²ÐµÑ€ÑиÑ" - -#~ msgid "Daily" -#~ msgstr "Ежедневно" - -#~ msgid "Weekly" -#~ msgstr "Еженедельно" - -#~ msgid "please use 5 tags or less" -#~ msgstr "пожалуйÑта, не больее 5 Ñ‚Ñгов" - -#~ msgid "tags must be shorter than 20 characters" -#~ msgstr "Ñ‚Ñги должны быть короче 20 букв" - -#~ msgid "okay, let's try!" -#~ msgstr "Ðу, попробуем!" - -#~ msgid "marked an answer" -#~ msgstr "ответ принÑÑ‚" - -#, fuzzy -#~ msgid "edited an answer" -#~ msgstr "oldest" - -#, fuzzy -#~ msgid "received badge" -#~ msgstr "received badge" - -#~ msgid "Change email " -#~ msgstr "Сменить email" - -#~ msgid "Change OpenID" -#~ msgstr "Сменить OpenID" - -#~ msgid "login to post question info" -#~ msgstr "" -#~ "<span class=\"strong big\">You are welcome to start submitting your " -#~ "question anonymously</span>. When you submit the post, you will be " -#~ "redirected to the login/signup page. Your question will be saved in the " -#~ "current session and will be published after you log in. Login/signup " -#~ "process is very simple. Login takes about 30 seconds, initial signup " -#~ "takes a minute or less." - -#~ msgid "" -#~ "must have valid %(email)s to post, \n" -#~ " see %(email_validation_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<span class='strong big'>Looks like your email address, %(email)s has not " -#~ "yet been validated.</span> To post messages you must verify your email, " -#~ "please see <a href='%(email_validation_faq_url)s'>more details here</a>." -#~ "<br>You can submit your question now and validate email after that. Your " -#~ "question will saved as pending meanwhile. " - -#~ msgid "" -#~ "Before asking the question - please make sure to use search to see " -#~ "whether your question has alredy been answered." -#~ msgstr "" -#~ "Прежде чем Ñпрашивать, пожалуйÑта, Ñделайте поиÑк — может быть, на Ваш " -#~ "Ð²Ð¾Ð¿Ñ€Ð¾Ñ ÑƒÐ¶Ðµ ответили?" - -#~ msgid "What questions should I avoid asking?" -#~ msgstr "Какие вопроÑÑ‹ не надо задавать?" - -#~ msgid "" -#~ "is a Q&A site, not a discussion group. Therefore - please avoid having " -#~ "discussions in your answers, comment facility allows some space for brief " -#~ "discussions." -#~ msgstr "" -#~ "is a <strong>question and answer</strong> site - <strong>it is not a " -#~ "discussion group</strong>. Please avoid holding debates in your answers " -#~ "as they tend to dilute the essense of questions and answers. For the " -#~ "brief discussions please use commenting facility." - -#~ msgid "" -#~ "The reputation system allows users earn the authorization to perform a " -#~ "variety of moderation tasks." -#~ msgstr "" -#~ "Karma system allows users to earn rights to perform a variety of " -#~ "moderation tasks" - -#~ msgid "How does reputation system work?" -#~ msgstr "How does karma system work?" - -#~ msgid "Rep system summary" -#~ msgstr "" -#~ "When a question or answer is upvoted, the user who posted them will gain " -#~ "some points, which are called \"karma points\". These points serve as a " -#~ "rough measure of the community trust to him/her. Various moderation tasks " -#~ "are gradually assigned to the users based on those points." - -#~ msgid "edit any answer" -#~ msgstr "редактировать любой ответ" - -#~ msgid "" -#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)" -#~ "s" -#~ msgstr "" -#~ "<form style='margin:0;padding:0;' action='%(send_email_key_url)" -#~ "s'><p><span class=\"bigger strong\">How?</span> If you have just set or " -#~ "changed your email address - <strong>check your email and click the " -#~ "included link</strong>.<br>The link contains a key generated specifically " -#~ "for you. You can also <button style='display:inline' " -#~ "type='submit'><strong>get a new key</strong></button> and check your " -#~ "email again.</p></form><span class=\"bigger strong\">Why?</span> Email " -#~ "validation is required to make sure that <strong>only you can post " -#~ "messages</strong> on your behalf and to <strong>minimize spam</strong> " -#~ "posts.<br>With email you can <strong>subscribe for updates</strong> on " -#~ "the most interesting questions. Also, when you sign up for the first time " -#~ "- create a unique <a href='%(gravatar_faq_url)s'><strong>gravatar</" -#~ "strong></a> personal image.</p>" - -#~ msgid "" -#~ "Please ask your question at %(ask_question_url)s, help make our community " -#~ "better!" -#~ msgstr "" -#~ "Please <a href='%(ask_question_url)s'>ask</a> your question, help make " -#~ "our community better!" - -#~ msgid "give feedback" -#~ msgstr "Ð¾Ð±Ñ€Ð°Ñ‚Ð½Ð°Ñ ÑвÑзь" - -#~ msgid "" -#~ "\n" -#~ " One Answer:\n" -#~ " " -#~ msgid_plural "" -#~ "\n" -#~ " %(counter)s Answers:\n" -#~ " " -#~ msgstr[0] "" -#~ "\n" -#~ " %(counter)s Ответ:\n" -#~ " " -#~ msgstr[1] "" -#~ "\n" -#~ " %(counter)s Ответа:\n" -#~ " " -#~ msgstr[2] "" -#~ "\n" -#~ " %(counter)s Ответов:\n" -#~ " " - -#~ msgid "you can answer anonymously and then login" -#~ msgstr "" -#~ "<span class='strong big'>Please start posting your answer anonymously</" -#~ "span> - your answer will be saved within the current session and " -#~ "published after you log in or create a new account. Please try to give a " -#~ "<strong>substantial answer</strong>, for discussions, <strong>please use " -#~ "comments</strong> and <strong>please do remember to vote</strong> (after " -#~ "you log in)!" - -#~ msgid "please only give an answer, no discussions" -#~ msgstr "" -#~ "<span class='big strong'>Please try to give a substantial answer</span>. " -#~ "If you wanted to comment on the question or answer, just <strong>use the " -#~ "commenting tool</strong>. Please remember that you can always " -#~ "<strong>revise your answers</strong> - no need to answer the same " -#~ "question twice. Also, please <strong>don't forget to vote</strong> - it " -#~ "really helps to select the best questions and answers!" - -#~ msgid "question tips" -#~ msgstr "Tips" - -#~ msgid "please try provide enough details" -#~ msgstr "provide enough details" - -#~ msgid "Screen name label" -#~ msgstr "<strong>Screen Name</strong> (<i>will be shown to others</i>)" - -#~ msgid "Email address label" -#~ msgstr "" -#~ "<strong>Email Address</strong> (<i>will <strong>not</strong> be shared " -#~ "with anyone, must be valid</i>)" - -#~ msgid "receive updates motivational blurb" -#~ msgstr "" -#~ "<strong>Receive forum updates by email</strong> - this will help our " -#~ "community grow and become more useful.<br/>By default <span " -#~ "class='orange'>Q&A</span> forum sends up to <strong>one email digest " -#~ "per week</strong> - only when there is anything new.<br/>If you like, " -#~ "please adjust this now or any time later from your user account." - -#, fuzzy -#~ msgid "" -#~ "Sincerely,<br />\n" -#~ " Forum Administrator" -#~ msgstr "" -#~ "Sincerely,\n" -#~ "Q&A Forum Administrator" - -#~ msgid "Click to sign in through any of these services." -#~ msgstr "" -#~ "<p><span class=\"big strong\">Please select your favorite login method " -#~ "below.</span></p><p><font color=\"gray\">External login services use <a " -#~ "href=\"http://openid.net\"><b>OpenID</b></a> technology, where your " -#~ "password always stays confidential between you and your login provider " -#~ "and you don't have to remember another one. CNPROG option requires your " -#~ "login name and password entered here.</font></p>" - -#~ msgid "Traditional signup info" -#~ msgstr "" -#~ "<span class='strong big'>If you prefer, create your forum login name and " -#~ "password here. However</span>, please keep in mind that we also support " -#~ "<strong>OpenID</strong> login method. With <strong>OpenID</strong> you " -#~ "can simply reuse your external login (e.g. Gmail or AOL) without ever " -#~ "sharing your login details with anyone and having to remember yet another " -#~ "password." - -#, fuzzy -#~ msgid "On question " -#~ msgstr "Tips" - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " %(answer_count)s new answer%(answer_count_pluralize)" -#~ "s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(one comment)" - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " %(comment_count)s new comment" -#~ "%(comment_count_pluralize)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(one comment)" - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " Posted by %(author_name)s in %(question_time)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" - -#~ msgid "avatar, see %(gravatar_faq_url)s" -#~ msgstr "<a href='%(gravatar_faq_url)s'>gravatar</a>" - -#~ msgid "casted votes" -#~ msgstr "votes" - -#~ msgid "Questions sorted by <strong>number of responses</strong>." -#~ msgstr "Questions sorted by the <strong>number of answers</strong>." - -#~ msgid "profile - user reputation" -#~ msgstr "Profile - User's Karma" - -#, fuzzy -#~ msgid "profile - subscriptions" -#~ msgstr "Profile - User's Karma" - -#~ msgid "email update message subject" -#~ msgstr "news from Q&A forum" - -#~ msgid "%(name)s, this is an update message header for a question" -#~ msgid_plural "" -#~ "%(name)s, this is an update message header for %(num)d questions" -#~ msgstr[0] "" -#~ "<p>Dear %(name)s,</p></p>The following question has been updated on the " -#~ "Q&A forum:</p>" -#~ msgstr[1] "" -#~ "<p>Dear %(name)s,</p><p>The following %(num)d questions have been updated " -#~ "on the Q&A forum:</p>" - -#~ msgid "" -#~ "go to %(link)s to change frequency of email updates or %(email)s " -#~ "administrator" -#~ msgstr "" -#~ "<p>Please remember that you can always <a href='%(link)s'>adjust</a> " -#~ "frequency of the email updates or turn them off entirely.<br/>If you " -#~ "believe that this message was sent in an error, please email about it the " -#~ "forum administrator at %(email)s.</p><p>Sincerely,</p><p>Your friendly " -#~ "Q&A forum server.</p>" - -#~ msgid "Account: change password" -#~ msgstr "Change your password" - -#~ msgid "list of unanswered questions" -#~ msgstr "unanswered questions" - -#~ msgid "Notify me once a day when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> once a day by email when there are any new " -#~ "answers or updates" - -#~ msgid "Notify me weekly when there are any new answers" -#~ msgstr "" -#~ "<strong>Notify me</strong> weekly when there are any new answers or " -#~ "updates" - -#~ msgid "" -#~ "\n" -#~ " You can always adjust frequency of email updates from " -#~ "your %(profile_url)s\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "(note: you can always <a href='%(profile_url)s?" -#~ "sort=email_subscriptions'>adjust frequency</a> of email updates)" - -#~ msgid "please ask a relevant question" -#~ msgstr "ask a question relevant to the CNPROG community" - -#~ msgid "" -#~ "\n" -#~ " have total %(q_num)s unanswered questions\n" -#~ " " -#~ msgid_plural "" -#~ "\n" -#~ " have total %(q_num)s unanswered questions\n" -#~ " " -#~ msgstr[0] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question without an " -#~ "accepted answer</p>" -#~ msgstr[1] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>questions without an " -#~ "accepted answer</p>" - -#~ msgid "Most recently answered ones are shown first." -#~ msgstr "<strong>Most recently answered</strong> questions are shown first." - -#~ msgid "change %(email)s info" -#~ msgstr "" -#~ "<span class=\"strong big\">Enter your new email into the box below</span> " -#~ "if you'd like to use another email for <strong>update subscriptions</" -#~ "strong>.<br>Currently you are using <strong>%(email)s</strong>" - -#~ msgid "here is why email is required, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<span class='strong big'>Please enter your email address in the box below." -#~ "</span> Valid email address is required on this Q&A forum. If you " -#~ "like, you can <strong>receive updates</strong> on interesting questions " -#~ "or entire forum via email. Also, your email is used to create a unique <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for your " -#~ "account. Email addresses are never shown or otherwise shared with anybody " -#~ "else." - -#~ msgid "validate %(email)s info or go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">An email with a validation link has been sent " -#~ "to %(email)s.</span> Please <strong>follow the emailed link</strong> with " -#~ "your web browser. Email validation is necessary to help insure the proper " -#~ "use of email on <span class=\"orange\">Q&A</span>. If you would like " -#~ "to use <strong>another email</strong>, please <a href='%(change_email_url)" -#~ "s'><strong>change it again</strong></a>." - -#~ msgid "old %(email)s kept, if you like go to %(change_email_url)s" -#~ msgstr "" -#~ "<span class=\"strong big\">Your email address %(email)s has not been " -#~ "changed.</span> If you decide to change it later - you can always do it " -#~ "by editing it in your user profile or by using the <a " -#~ "href='%(change_email_url)s'><strong>previous form</strong></a> again." - -#~ msgid "your current %(email)s can be used for this" -#~ msgstr "" -#~ "<span class='big strong'>Your email address is now set to %(email)s.</" -#~ "span> Updates on the questions that you like most will be sent to this " -#~ "address. Email notifications are sent once a day or less frequently - " -#~ "only when there are any news." - -#~ msgid "thanks for verifying email" -#~ msgstr "" -#~ "<span class=\"big strong\">Thank you for verifying your email!</span> Now " -#~ "you can <strong>ask</strong> and <strong>answer</strong> questions. Also " -#~ "if you find a very interesting question you can <strong>subscribe for the " -#~ "updates</strong> - then will be notified about changes <strong>once a " -#~ "day</strong> or less frequently." - -#~ msgid "email key not sent" -#~ msgstr "Validation email not sent" - -#~ msgid "email key not sent %(email)s change email here %(change_link)s" -#~ msgstr "" -#~ "<span class='big strong'>Your current email address %(email)s has been " -#~ "validated before</span> so the new key was not sent. You can <a " -#~ "href='%(change_link)s'>change</a> email used for update subscriptions if " -#~ "necessary." - -#~ msgid "register new %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span> Please create your <strong>screen name</" -#~ "strong> and save your <strong>email</strong> address. Saved email address " -#~ "will let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "" -#~ "%(username)s already exists, choose another name for \n" -#~ " %(provider)s. Email is required too, see " -#~ "%(gravatar_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<p><span class='strong big'>Oops... looks like screen name %(username)s " -#~ "is already used in another account.</span></p><p>Please choose another " -#~ "screen name to use with your %(provider)s login. Also, a valid email " -#~ "address is required on the <span class='orange'>Q&A</span> forum. " -#~ "Your email is used to create a unique <a href='%(gravatar_faq_url)" -#~ "s'><strong>gravatar</strong></a> image for your account. If you like, you " -#~ "can <strong>receive updates</strong> on the interesting questions or " -#~ "entire forum by email. Email addresses are never shown or otherwise " -#~ "shared with anybody else.</p>" - -#~ msgid "" -#~ "register new external %(provider)s account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "%(provider)s login.</span></p><p>You can either keep your <strong>screen " -#~ "name</strong> the same as your %(provider)s login name or choose some " -#~ "other nickname.</p><p>Also, please save a valid <strong>email</strong> " -#~ "address. With the email you can <strong>subscribe for the updates</" -#~ "strong> on the most interesting questions. Email address is also used to " -#~ "create and retrieve your unique avatar image - <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" - -#~ msgid "register new Facebook connect account info, see %(gravatar_faq_url)s" -#~ msgstr "" -#~ "<p><span class=\"big strong\">You are here for the first time with your " -#~ "Facebook login.</span> Please create your <strong>screen name</strong> " -#~ "and save your <strong>email</strong> address. Saved email address will " -#~ "let you <strong>subscribe for the updates</strong> on the most " -#~ "interesting questions and will be used to create and retrieve your unique " -#~ "avatar image - <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></" -#~ "a>.</p>" - -#~ msgid "password recovery information" -#~ msgstr "" -#~ "<span class='big strong'>Forgot you password? No problems - just get a " -#~ "new one!</span><br/>Please follow the following steps:<br/>• submit " -#~ "your user name below and check your email<br/>• <strong>follow the " -#~ "activation link</strong> for the new password - sent to you by email and " -#~ "login with the suggested password<br/>• at this you might want to " -#~ "change your password to something you can remember better" - -#~ msgid "" -#~ "email explanation how to use new %(password)s for %(username)s\n" -#~ "with the %(key_link)s" -#~ msgstr "" -#~ "To change your password, please follow these steps:\n" -#~ "* visit this link: %(key_link)s\n" -#~ "* login with user name %(username)s and password %(password)s\n" -#~ "* go to your user profile and set the password to something you can " -#~ "remember" - -#~ msgid "" -#~ "\n" -#~ " Your answer to %(title)s %(summary)s will be posted once " -#~ "you log in\n" -#~ " " -#~ msgstr "" -#~ "\n" -#~ "<span class=\"strong big\">Your answer to </span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "" -#~ "Your question \n" -#~ " %(title)s %(summary)s will be posted once you log in\n" -#~ " " -#~ msgstr "" -#~ "<span class=\"strong big\">Your question</span> <i>\"<strong>%(title)s</" -#~ "strong> %(summary)s...\"</i> <span class=\"strong big\">is saved and will " -#~ "be posted once you log in.</span>" - -#~ msgid "Enter your <span id=\"enter_your_what\">Provider user name</span>" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your </span><span id=\"enter_your_what\" " -#~ "class='big strong'>Provider user name</span><br/><span class='grey'>(or " -#~ "select another login method above)</span>" - -#~ msgid "" -#~ "Enter your <a class=\"openid_logo\" href=\"http://openid.net\">OpenID</a> " -#~ "web address" -#~ msgstr "" -#~ "<span class=\"big strong\">Enter your <a class=\"openid_logo\" href=" -#~ "\"http://openid.net\">OpenID</a> web address</span><br/><span " -#~ "class='grey'>(or choose another login method above)</span>" - -#~ msgid "subscription saved, %(email)s needs validation, see %(details_url)s" -#~ msgstr "" -#~ "Your subscription is saved, but email address %(email)s needs to be " -#~ "validated, please see <a href='%(details_url)s'>more details here</a>" - -#~ msgid "Incorrect username." -#~ msgstr "sorry, there is no such user name" - -#~ msgid "your email needs to be validated see %(details_url)s" -#~ msgstr "" -#~ "Your email needs to be validated. Please see details <a " -#~ "id='validate_email_alert' href='%(details_url)s'>here</a>." - -#~ msgid "first time greeting with %(url)s" -#~ msgstr "Hello and welcome to OSQA - <a href='%(url)s'>please join us</a>!" - -#~ msgid "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgid_plural "" -#~ "\n" -#~ "\t\t\t\thave total %(q_num)s questions\n" -#~ "\t\t\t\t" -#~ msgstr[0] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question</p>" -#~ msgstr[1] "" -#~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>questions</p>" diff --git a/locale/zh_CN/.svn/all-wcprops b/locale/zh_CN/.svn/all-wcprops deleted file mode 100644 index 9aad445d1d9f2ba133182cd002683fae4fcfc1fd..0000000000000000000000000000000000000000 --- a/locale/zh_CN/.svn/all-wcprops +++ /dev/null @@ -1,5 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 46 -/svnroot/!svn/ver/1239/osqa/trunk/locale/zh_CN -END diff --git a/locale/zh_CN/.svn/entries b/locale/zh_CN/.svn/entries deleted file mode 100644 index 6e30d389f6474c5b116820624ba849d28918138a..0000000000000000000000000000000000000000 --- a/locale/zh_CN/.svn/entries +++ /dev/null @@ -1,31 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/zh_CN -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -LC_MESSAGES -dir - diff --git a/locale/zh_CN/LC_MESSAGES/.svn/all-wcprops b/locale/zh_CN/LC_MESSAGES/.svn/all-wcprops deleted file mode 100644 index 0b3fa25732588d37a95cb341fb102b51e6e877fe..0000000000000000000000000000000000000000 --- a/locale/zh_CN/LC_MESSAGES/.svn/all-wcprops +++ /dev/null @@ -1,17 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 58 -/svnroot/!svn/ver/1239/osqa/trunk/locale/zh_CN/LC_MESSAGES -END -django.mo -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1239/osqa/trunk/locale/zh_CN/LC_MESSAGES/django.mo -END -django.po -K 25 -svn:wc:ra_dav:version-url -V 68 -/svnroot/!svn/ver/1239/osqa/trunk/locale/zh_CN/LC_MESSAGES/django.po -END diff --git a/locale/zh_CN/LC_MESSAGES/.svn/entries b/locale/zh_CN/LC_MESSAGES/.svn/entries deleted file mode 100644 index 50320a635e8a716c2ed9eaa6a5d9eef746c358b8..0000000000000000000000000000000000000000 --- a/locale/zh_CN/LC_MESSAGES/.svn/entries +++ /dev/null @@ -1,96 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/locale/zh_CN/LC_MESSAGES -http://svn.osqa.net/svnroot - - - -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -django.mo -file - - - - -2012-06-22T20:34:48.085737Z -e9b64f0ff0e8595dff7b9df282f5fa74 -2012-04-02T21:22:37.837431Z -1239 -jordan -has-props - - - - - - - - - - - - - - - - - - - - -15527 - -django.po -file - - - - -2012-06-22T20:34:48.085737Z -81ab2250422e45cfa39c29c79e0f9fba -2012-04-02T21:22:37.837431Z -1239 -jordan - - - - - - - - - - - - - - - - - - - - - -273537 - diff --git a/locale/zh_CN/LC_MESSAGES/.svn/prop-base/django.mo.svn-base b/locale/zh_CN/LC_MESSAGES/.svn/prop-base/django.mo.svn-base deleted file mode 100644 index 5e9587e658c3c3c18ab62ebc908568efd1226aed..0000000000000000000000000000000000000000 --- a/locale/zh_CN/LC_MESSAGES/.svn/prop-base/django.mo.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/locale/zh_CN/LC_MESSAGES/.svn/text-base/django.mo.svn-base b/locale/zh_CN/LC_MESSAGES/.svn/text-base/django.mo.svn-base deleted file mode 100644 index e2f1d778bc5c5d5ed0d8745dd8e62fe6100465a6..0000000000000000000000000000000000000000 Binary files a/locale/zh_CN/LC_MESSAGES/.svn/text-base/django.mo.svn-base and /dev/null differ diff --git a/locale/zh_CN/LC_MESSAGES/.svn/text-base/django.po.svn-base b/locale/zh_CN/LC_MESSAGES/.svn/text-base/django.po.svn-base deleted file mode 100644 index 1c55a5340b290890d92f23636105fed51929d073..0000000000000000000000000000000000000000 --- a/locale/zh_CN/LC_MESSAGES/.svn/text-base/django.po.svn-base +++ /dev/null @@ -1,9928 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-02 14:17-0700\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" - -# user_info.html -#: forum/feed.py:73 forum/models/page.py:24 forum/utils/pagination.py:167 -#: forum/views/readers.py:175 forum/views/readers.py:328 -#, fuzzy -msgid "page" -msgstr "年龄" - -#: forum/feed.py:73 forum/utils/pagination.py:163 forum/views/readers.py:175 -#, fuzzy -msgid "pagesize" -msgstr "ã€é¡µæ•°ã€‘" - -#: forum/feed.py:73 forum/utils/pagination.py:171 forum/views/readers.py:175 -#, fuzzy -msgid "sort" -msgstr "或者" - -#: forum/feed.py:90 -#, fuzzy, python-format -msgid "Answers to: %s" -msgstr "个回ç”" - -#: forum/feed.py:107 -#, fuzzy, python-format -msgid "Answer by %s" -msgstr "个回ç”" - -#: forum/feed.py:109 -#, python-format -msgid "Comment by %(cauthor)s on %(pauthor)s's %(qora)s" -msgstr "" - -#: forum/feed.py:112 forum/models/answer.py:5 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/writers.py:260 forum_modules/akismet/startup.py:76 -msgid "answer" -msgstr "回ç”" - -#: forum/feed.py:112 forum/models/question.py:17 -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/views/writers.py:91 forum_modules/akismet/startup.py:75 -msgid "question" -msgstr "æé—®" - -#: forum/registry.py:24 forum/registry.py:59 -#: forum/skins/default/templates/index.html:15 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/index.html:15 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "faq" -msgstr "常è§é—®é¢˜" - -# footer.html -#: forum/registry.py:25 forum/registry.py:60 -#: forum/skins/default/templates/index.html:14 -#: forum/skins/nuxeo/templates/index.html:14 -msgid "about" -msgstr "关于本站" - -#: forum/registry.py:28 -msgid "logout" -msgstr "退出登录" - -#: forum/registry.py:28 -msgid "login" -msgstr "登录" - -#: forum/registry.py:41 -msgid "administration" -msgstr "" - -#: forum/registry.py:54 -#, fuzzy -msgid "contact" -msgstr "è”系我们" - -#: forum/registry.py:57 -#, fuzzy -msgid "support" -msgstr "投赞æˆç¥¨" - -#: forum/registry.py:58 -#, fuzzy -msgid "privacy" -msgstr "éšç§æ”¿ç–" - -#: forum/registry.py:73 forum/skins/default/templates/users/edit.html:33 -#: forum/skins/nuxeo/templates/users/edit.html:33 -msgid "edit profile" -msgstr "修改资料" - -#: forum/registry.py:83 -#, fuzzy -msgid "authentication settings" -msgstr "用户å‚数的设置" - -#: forum/registry.py:90 -msgid "email notification settings" -msgstr "" - -#: forum/registry.py:97 -#, fuzzy -msgid "other preferences" -msgstr "设置" - -#: forum/registry.py:102 -msgid "Moderation tools" -msgstr "" - -#: forum/registry.py:104 -#, fuzzy -msgid "withdraw suspension" -msgstr "修改问题" - -#: forum/registry.py:104 -msgid "suspend this user" -msgstr "" - -#: forum/registry.py:111 -msgid "give/take karma" -msgstr "" - -#: forum/registry.py:119 -msgid "remove moderator status" -msgstr "" - -#: forum/registry.py:119 -msgid "grant moderator status" -msgstr "" - -#: forum/registry.py:126 -msgid "remove super user status" -msgstr "" - -#: forum/registry.py:126 -msgid "grant super user status" -msgstr "" - -#: forum/urls.py:22 forum/urls.py:24 -msgid "nimda/" -msgstr "" - -#: forum/urls.py:43 -#, fuzzy -msgid "upfiles/" -msgstr "个人资料" - -#: forum/urls.py:45 -#, fuzzy -msgid "faq/" -msgstr "常è§é—®é¢˜" - -#: forum/urls.py:45 -msgid "FAQ" -msgstr "" - -# footer.html -#: forum/urls.py:46 -#, fuzzy -msgid "about/" -msgstr "关于本站" - -# footer.html -#: forum/urls.py:46 -#, fuzzy -msgid "About" -msgstr "关于本站" - -#: forum/urls.py:47 -msgid "markdown_help/" -msgstr "" - -#: forum/urls.py:49 -#, fuzzy -msgid "privacy/" -msgstr "éšç§æ”¿ç–" - -#: forum/urls.py:50 -#, fuzzy -msgid "logout/" -msgstr "退出登录" - -#: forum/urls.py:51 -#, fuzzy -msgid "answers/" -msgstr "回ç”" - -#: forum/urls.py:51 forum/urls.py:61 forum/urls.py:103 forum/urls.py:150 -#, fuzzy -msgid "edit/" -msgstr "编辑" - -#: forum/urls.py:52 -#, fuzzy -msgid "revisions/" -msgstr "版本" - -#: forum/urls.py:53 forum/urls.py:54 forum/urls.py:55 forum/urls.py:57 -#: forum/urls.py:58 forum/urls.py:61 forum/urls.py:62 forum/urls.py:63 -#: forum/urls.py:64 forum/urls.py:89 forum/urls.py:90 forum/urls.py:91 -#, fuzzy -msgid "questions/" -msgstr "问题" - -#: forum/urls.py:54 -#, fuzzy -msgid "ask/" -msgstr "æ问于" - -#: forum/urls.py:55 -#, fuzzy -msgid "related_questions/" -msgstr "相似的问题" - -#: forum/urls.py:57 -#, fuzzy -msgid "unanswered/" -msgstr "回ç”" - -#: forum/urls.py:62 -#, fuzzy -msgid "close/" -msgstr "å…³é—" - -#: forum/urls.py:63 -#, fuzzy -msgid "reopen/" -msgstr "打开" - -#: forum/urls.py:64 forum/urls.py:75 -#, fuzzy -msgid "answer/" -msgstr "回ç”" - -#: forum/urls.py:65 -msgid "pending-data/" -msgstr "" - -#: forum/urls.py:67 -#, fuzzy -msgid "vote/" -msgstr "票" - -#: forum/urls.py:68 -#, fuzzy -msgid "like_comment/" -msgstr "评论" - -#: forum/urls.py:69 -#, fuzzy -msgid "comment/" -msgstr "评论" - -#: forum/urls.py:70 -#, fuzzy -msgid "delete_comment/" -msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªè¯„è®º" - -#: forum/urls.py:71 -#, fuzzy -msgid "convert_comment/" -msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªè¯„è®º" - -#: forum/urls.py:72 -#, fuzzy -msgid "accept_answer/" -msgstr "回ç”" - -#: forum/urls.py:73 -#, fuzzy -msgid "answer_link/" -msgstr "回ç”" - -#: forum/urls.py:74 -#, fuzzy -msgid "mark_favorite/" -msgstr "收è—" - -#: forum/urls.py:75 -msgid "award_points/" -msgstr "" - -#: forum/urls.py:75 -#, fuzzy -msgid "user/" -msgstr "用户" - -#: forum/urls.py:77 -msgid "flag/" -msgstr "" - -#: forum/urls.py:78 forum/urls.py:151 -msgid "delete/" -msgstr "åˆ é™¤" - -#: forum/urls.py:79 forum/urls.py:80 -msgid "subscribe/" -msgstr "" - -#: forum/urls.py:81 -msgid "matching_tags/" -msgstr "" - -#: forum/urls.py:82 -#, fuzzy -msgid "matching_users/" -msgstr "回ç”" - -#: forum/urls.py:83 -msgid "node_markdown/" -msgstr "" - -#: forum/urls.py:84 -#, fuzzy -msgid "convert/" -msgstr "内容" - -#: forum/urls.py:85 -#, fuzzy -msgid "convert_to_question/" -msgstr "评论问题" - -#: forum/urls.py:86 -msgid "wikify/" -msgstr "" - -#: forum/urls.py:88 -#, fuzzy -msgid "question/" -msgstr "æé—®" - -#: forum/urls.py:94 forum/urls.py:95 -#, fuzzy -msgid "tags/" -msgstr "æ ‡ç¾" - -#: forum/urls.py:96 forum/urls.py:97 -msgid "mark-tag/" -msgstr "" - -#: forum/urls.py:96 -msgid "interesting/" -msgstr "" - -#: forum/urls.py:97 -msgid "ignored/" -msgstr "" - -#: forum/urls.py:98 -msgid "unmark-tag/" -msgstr "" - -#: forum/urls.py:100 forum/urls.py:103 forum/urls.py:104 forum/urls.py:105 -#: forum/urls.py:106 forum/urls.py:107 forum/urls.py:108 forum/urls.py:109 -#: forum/urls.py:110 forum/urls.py:111 forum/urls.py:112 forum/urls.py:113 -#, fuzzy -msgid "users/" -msgstr "用户" - -#: forum/urls.py:104 -#, fuzzy -msgid "award/" -msgstr "所有奖牌" - -#: forum/urls.py:105 -#, fuzzy -msgid "suspend/" -msgstr "用åŒä¸€ä¸ªå¸å·å¯ç™»å½•äº’è”网所有激活OpenID的网站" - -#: forum/urls.py:106 -#, fuzzy -msgid "powers/" -msgstr "回ç”" - -#: forum/urls.py:107 -#, fuzzy -msgid "subscriptions/" -msgstr "问题" - -#: forum/urls.py:108 -#, fuzzy -msgid "preferences/" -msgstr "设置" - -#: forum/urls.py:109 -#, fuzzy -msgid "favorites/" -msgstr "收è—" - -#: forum/urls.py:110 -#, fuzzy -msgid "reputation/" -msgstr "积分" - -#: forum/urls.py:111 -#, fuzzy -msgid "votes/" -msgstr "票" - -#: forum/urls.py:112 -#, fuzzy -msgid "recent/" -msgstr "æœ€æ–°åŠ å…¥" - -#: forum/urls.py:114 forum/urls.py:115 -#, fuzzy -msgid "badges/" -msgstr "奖牌榜" - -#: forum/urls.py:118 -msgid "upload/" -msgstr "" - -#: forum/urls.py:119 -#, fuzzy -msgid "search/" -msgstr "æœç´¢" - -#: forum/urls.py:120 -#, fuzzy -msgid "contact/" -msgstr "è”系我们" - -#: forum/urls.py:124 forum/urls.py:125 forum/urls.py:126 forum/urls.py:127 -#: forum/urls.py:128 forum/urls.py:129 forum/urls.py:130 forum/urls.py:131 -#: forum/urls.py:132 forum/urls.py:133 forum/urls.py:134 forum/urls.py:135 -#: forum_modules/localauth/urls.py:7 -#, fuzzy -msgid "account/" -msgstr "æ–°å¸å·" - -#: forum/urls.py:124 forum/urls.py:126 -msgid "signin/" -msgstr "" - -#: forum/urls.py:125 -msgid "signout/" -msgstr "" - -#: forum/urls.py:127 -#, fuzzy -msgid "done/" -msgstr "投å对票" - -#: forum/urls.py:128 forum_modules/localauth/urls.py:7 -#, fuzzy -msgid "register/" -msgstr "确认" - -#: forum/urls.py:129 -msgid "validate/" -msgstr "" - -#: forum/urls.py:130 forum/urls.py:131 -msgid "tempsignin/" -msgstr "" - -#: forum/urls.py:132 -#, fuzzy -msgid "authsettings/" -msgstr "设置" - -#: forum/urls.py:133 forum/urls.py:134 -msgid "providers/" -msgstr "" - -#: forum/urls.py:133 -#, fuzzy -msgid "remove/" -msgstr "打开" - -#: forum/urls.py:134 -msgid "add/" -msgstr "" - -#: forum/urls.py:135 -msgid "send-validation/" -msgstr "" - -#: forum/urls.py:138 forum/urls.py:139 forum/urls.py:140 forum/urls.py:141 -#: forum/urls.py:142 forum/urls.py:143 forum/urls.py:144 forum/urls.py:145 -#: forum/urls.py:146 forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 -#: forum/urls.py:151 forum/urls.py:153 forum/urls.py:155 forum/urls.py:157 -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:9 -#: forum_modules/exporter/urls.py:10 forum_modules/sximporter/urls.py:8 -#: forum_modules/updates/urls.py:8 -msgid "admin/" -msgstr "" - -#: forum/urls.py:139 -msgid "switch_interface/" -msgstr "" - -#: forum/urls.py:140 -#, fuzzy -msgid "statistics/" -msgstr "网站访问者" - -#: forum/urls.py:141 -msgid "denormalize/" -msgstr "" - -#: forum/urls.py:142 -msgid "go_bootstrap/" -msgstr "" - -#: forum/urls.py:143 -msgid "go_defaults/" -msgstr "" - -#: forum/urls.py:144 forum/urls.py:155 -#, fuzzy -msgid "settings/" -msgstr "设置" - -#: forum/urls.py:145 -msgid "maintenance/" -msgstr "" - -#: forum/urls.py:146 -msgid "flagged_posts/" -msgstr "" - -#: forum/urls.py:147 forum/urls.py:149 forum/urls.py:150 forum/urls.py:151 -msgid "static_pages/" -msgstr "" - -#: forum/urls.py:149 -#, fuzzy -msgid "new/" -msgstr "投å对票" - -#: forum/urls.py:153 -#, fuzzy -msgid "tools/" -msgstr "读书" - -#: forum/urls.py:157 -#, fuzzy -msgid "test_email_settings/" -msgstr "设置" - -#: forum/actions/meta.py:39 -#, python-format -msgid "%(user)s %(vote_desc)s %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:58 -#, fuzzy -msgid "voted up" -msgstr "投赞æˆç¥¨" - -#: forum/actions/meta.py:74 -msgid "voted down" -msgstr "" - -#: forum/actions/meta.py:88 -#, fuzzy -msgid "liked" -msgstr "链接" - -#: forum/actions/meta.py:116 -msgid "No reason given" -msgstr "" - -#: forum/actions/meta.py:121 -#, python-format -msgid "%(user)s flagged %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -#: forum/models/action.py:219 -#, fuzzy -msgid "your" -msgstr "或者" - -#: forum/actions/meta.py:152 forum/actions/user.py:58 -msgid "his" -msgstr "" - -#: forum/actions/meta.py:156 -#, fuzzy, python-format -msgid "" -"%(user)s accepted %(answerer)s answer on %(asker)s question %(question)s" -msgstr "ä¸æ˜¯ä¸€ä¸ªå¯ä»¥å›žç”的“问题â€" - -#: forum/actions/meta.py:172 -#, python-format -msgid "%(user)s marked %(post_desc)s as favorite" -msgstr "" - -#: forum/actions/meta.py:192 -#, python-format -msgid "%(user)s deleted %(post_desc)s" -msgstr "" - -#: forum/actions/meta.py:201 -msgid "flagged by multiple users: " -msgstr "" - -#: forum/actions/node.py:9 forum_modules/exporter/importer.py:496 -#, fuzzy -msgid "Initial revision" -msgstr "åˆå§‹ç‰ˆæœ¬" - -#: forum/actions/node.py:20 forum/templatetags/node_tags.py:257 -msgid "asked" -msgstr "æ问于" - -#: forum/actions/node.py:34 -#, fuzzy, python-format -msgid "%(user)s asked %(question)s" -msgstr "用户收è—的问题" - -#: forum/actions/node.py:40 forum/templatetags/node_tags.py:258 -#, fuzzy -msgid "answered" -msgstr "回ç”" - -#: forum/actions/node.py:55 -#, fuzzy, python-format -msgid "%(user)s answered %(asker)s on %(question)s" -msgstr "" -"您æ£åœ¨æµè§ˆæ‰€æœ‰<br><div class=\"questions-count\">%(num_q)s</div>个<p>问题按 " -"<strong>问题创建时间</strong> 排åºã€‚æœ€æ–°åŠ å…¥çš„é—®é¢˜å°†æ˜¾ç¤ºåœ¨æœ€å‰é¢ã€‚</p>" - -#: forum/actions/node.py:62 -#, fuzzy -msgid "commented" -msgstr "评论" - -#: forum/actions/node.py:70 -#, fuzzy, python-format -msgid "%(user)s commented on %(post_desc)s" -msgstr "评论问题" - -#: forum/actions/node.py:76 forum/actions/page.py:23 -#, fuzzy -msgid "edited" -msgstr "编辑" - -#: forum/actions/node.py:88 -#, python-format -msgid "%(user)s edited %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:97 -msgid "retagged" -msgstr "æ›´æ–°äº†æ ‡ç¾" - -#: forum/actions/node.py:101 -#, fuzzy -msgid "Retag" -msgstr "æ ‡ç¾" - -#: forum/actions/node.py:110 -#, python-format -msgid "%(user)s retagged %(post_desc)s" -msgstr "" - -#: forum/actions/node.py:119 -#, fuzzy -msgid "reverted" -msgstr "æ›´æ–°äº†æ ‡ç¾" - -#: forum/actions/node.py:133 -#, python-format -msgid "" -"%(user)s reverted %(post_desc)s from revision %(initial)d (%(initial_sum)s) " -"to revision %(final)d (%(final_sum)s)" -msgstr "" - -#: forum/actions/node.py:144 -#, fuzzy -msgid "closed" -msgstr "å…³é—" - -#: forum/actions/node.py:158 -#, python-format -msgid "%(user)s closed %(post_desc)s: %(reason)s" -msgstr "" - -#: forum/actions/node.py:165 forum/actions/node.py:189 -#: forum/actions/node.py:206 -#, fuzzy -msgid "converted" -msgstr "投å对票" - -#: forum/actions/node.py:183 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a comment" -msgstr "" - -#: forum/actions/node.py:201 -#, python-format -msgid "%(user)s converted comment on %(question)s into an answer" -msgstr "" - -#: forum/actions/node.py:225 -#, fuzzy, python-format -msgid "%(user)s converted comment on %(question)s to a new question" -msgstr "" -"您æ£åœ¨æµè§ˆæ‰€æœ‰<br><div class=\"questions-count\">%(num_q)s</div>个<p>问题按 " -"<strong>问题创建时间</strong> 排åºã€‚æœ€æ–°åŠ å…¥çš„é—®é¢˜å°†æ˜¾ç¤ºåœ¨æœ€å‰é¢ã€‚</p>" - -#: forum/actions/node.py:231 -#, fuzzy -msgid "converted to question" -msgstr "评论问题" - -#: forum/actions/node.py:256 -#, python-format -msgid "%(user)s converted an answer to %(question)s into a separate question" -msgstr "" - -#: forum/actions/node.py:262 -msgid "wikified" -msgstr "" - -#: forum/actions/node.py:274 -#, python-format -msgid "%(user)s marked %(node)s as community wiki." -msgstr "" - -#: forum/actions/page.py:6 -#, fuzzy -msgid "created" -msgstr "æ›´æ–°äº†æ ‡ç¾" - -#: forum/actions/page.py:17 -#, python-format -msgid "%(user)s created a new page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:36 -#, python-format -msgid "%(user)s edited the page titled %(page)s" -msgstr "" - -#: forum/actions/page.py:42 -#, fuzzy -msgid "published" -msgstr "ã€å‡ºç‰ˆç¤¾ã€‘" - -#: forum/actions/page.py:55 -#, python-format -msgid "%(user)s published a new page titled %(page)s" -msgstr "" - -#: forum/actions/user.py:10 -msgid "joined" -msgstr "" - -#: forum/actions/user.py:20 -#, python-format -msgid "%(user)s %(have_has)s joined the %(app_name)s Q&A community" -msgstr "" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -#, fuzzy -msgid "have" -msgstr "ä¿å˜" - -#: forum/actions/user.py:22 forum/actions/user.py:32 forum/actions/user.py:48 -msgid "has" -msgstr "" - -#: forum/actions/user.py:27 -#, fuzzy -msgid "logged in" -msgstr "æ ‡è®°ä¸º" - -#: forum/actions/user.py:30 -#, python-format -msgid "%(user)s %(have_has)s logged in" -msgstr "" - -#: forum/actions/user.py:36 -msgid "validated e-mail" -msgstr "" - -#: forum/actions/user.py:46 -#, python-format -msgid "%(user)s %(have_has)s validated the e-mail %(email)s" -msgstr "" - -#: forum/actions/user.py:53 -#, fuzzy -msgid "edited profile" -msgstr "修改资料" - -#: forum/actions/user.py:56 -#, python-format -msgid "%(user)s edited %(hes_or_your)s %(profile_link)s" -msgstr "" - -#: forum/actions/user.py:59 -#, fuzzy -msgid "profile" -msgstr "个人简介" - -#: forum/actions/user.py:63 -msgid "gave bonus" -msgstr "" - -#: forum/actions/user.py:75 -#, python-format -msgid "Congratulations, you have been awarded an extra %s reputation points." -msgstr "" - -#: forum/actions/user.py:76 -msgid "Thank you" -msgstr "" - -#: forum/actions/user.py:79 -#, python-format -msgid "You have been penalized in %s reputation points." -msgstr "" - -#: forum/actions/user.py:83 forum/actions/user.py:121 -#: forum/templatetags/extra_tags.py:152 forum/views/auth.py:225 -#: forum_modules/exporter/templates/running.html:158 -msgid "unknown" -msgstr "" - -#: forum/actions/user.py:88 -#, python-format -msgid "" -"%(user)s awarded an extra %(value)s reputation points to %(users)s: " -"%(message)s" -msgstr "" - -#: forum/actions/user.py:93 -#, python-format -msgid "" -"%(user)s penalised %(users)s in %(value)s reputation points: %(message)s" -msgstr "" - -#: forum/actions/user.py:101 -#, fuzzy -msgid "gave reputation points" -msgstr "积分" - -#: forum/actions/user.py:114 -#, python-format -msgid "" -"Congratulations, you have been awarded an extra %(points)s reputation " -"%(points_label)s on <a href=\"%(answer_url)s\">this</a> answer." -msgstr "" - -#: forum/actions/user.py:116 -#, fuzzy -msgid "point" -msgid_plural "points" -msgstr[0] "登录" -msgstr[1] "登录" - -#: forum/actions/user.py:125 -#, python-format -msgid "%(user)s awarded an extra %(value)s reputation points to %(users)s" -msgstr "" - -#: forum/actions/user.py:130 -#, python-format -msgid "%(user)s penalised %(users)s in %(value)s reputation points" -msgstr "" - -#: forum/actions/user.py:138 -#, fuzzy -msgid "was awarded" -msgstr "所有奖牌" - -#: forum/actions/user.py:166 -#, python-format -msgid "" -"Congratulations, you have received a badge '%(badge_name)s'. Check out <a " -"href=\"%(profile_url)s\">your profile</a>." -msgstr "" - -#: forum/actions/user.py:188 -#, python-format -msgid "%(user)s %(were_was)s awarded the %(badge_name)s badge" -msgstr "" - -#: forum/actions/user.py:190 -#, fuzzy -msgid "were" -msgstr "回ç”" - -#: forum/actions/user.py:190 -msgid "was" -msgstr "" - -#: forum/actions/user.py:195 -#, fuzzy -msgid "suspended" -msgstr "更新于" - -#: forum/actions/user.py:213 -msgid "Your suspension has been removed." -msgstr "" - -#: forum/actions/user.py:217 -#, python-format -msgid "for %s days" -msgstr "" - -# todo please check this in chinese -#: forum/actions/user.py:219 -#, fuzzy -msgid "indefinetely" -msgstr "å–消" - -#: forum/actions/user.py:221 -#, python-format -msgid "%(user)s suspended %(users)s %(suspension)s: %(msg)s" -msgstr "" - -#: forum/actions/user.py:223 forum/views/users.py:240 -msgid "Bad behaviour" -msgstr "" - -#: forum/forms/admin.py:16 -msgid "Please input at least one ip address" -msgstr "" - -#: forum/forms/admin.py:22 -#, python-format -msgid "Invalid ip address: %s" -msgstr "" - -#: forum/forms/admin.py:25 -msgid "Please use the dotted quad notation for the ip addresses" -msgstr "" - -#: forum/forms/admin.py:32 -msgid "Allow ips" -msgstr "" - -#: forum/forms/admin.py:33 -msgid "" -"Comma separated list of ips allowed to access the site while in maintenance" -msgstr "" - -#: forum/forms/admin.py:37 -#: forum/skins/default/templates/users/karma_bonus.html:9 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:9 -#, fuzzy -msgid "Message" -msgstr "Copyright(c)2009.CNPROG.COM" - -#: forum/forms/admin.py:38 -msgid "A message to display to your site visitors while in maintainance mode" -msgstr "" - -#: forum/forms/admin.py:43 -msgid "Default" -msgstr "" - -#: forum/forms/admin.py:44 -msgid "Default with sidebar" -msgstr "" - -#: forum/forms/admin.py:45 -#, fuzzy -msgid "None" -msgstr "投å对票" - -#: forum/forms/admin.py:49 forum/settings/static.py:6 -#, fuzzy -msgid "Markdown" -msgstr "Markdown快速å‚考" - -#: forum/forms/admin.py:50 forum/settings/static.py:7 -msgid "HTML" -msgstr "" - -#: forum/forms/admin.py:51 forum/settings/static.py:8 -msgid "Escaped" -msgstr "" - -#: forum/forms/admin.py:75 -#: forum/skins/default/templates/osqaadmin/nodeman.html:285 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:284 -#, fuzzy -msgid "Title" -msgstr "æ ‡é¢˜" - -#: forum/forms/admin.py:77 -msgid "Page URL" -msgstr "" - -#: forum/forms/admin.py:79 -#, fuzzy -msgid "Page Content" -msgstr "内容" - -#: forum/forms/admin.py:80 -msgid "Mime Type" -msgstr "" - -#: forum/forms/admin.py:83 -msgid "Render Mode" -msgstr "" - -#: forum/forms/admin.py:86 -msgid "Template" -msgstr "" - -#: forum/forms/admin.py:87 -msgid "Sidebar Content" -msgstr "" - -#: forum/forms/admin.py:88 -msgid "Wrap sidebar block" -msgstr "" - -#: forum/forms/admin.py:90 -msgid "Sidebar Render Mode" -msgstr "" - -#: forum/forms/admin.py:92 -#, fuzzy -msgid "Allow comments" -msgstr "评论" - -#: forum/forms/admin.py:99 -msgid "send validation email" -msgstr "" - -#: forum/forms/admin.py:104 -#, fuzzy -msgid "email address" -msgstr "您的电å邮件地å€" - -#: forum/forms/auth.py:21 -#, fuzzy -msgid "Your account email" -msgstr "修改电å邮件" - -#: forum/forms/auth.py:23 -msgid "You cannot leave this field blank" -msgstr "" - -#: forum/forms/auth.py:24 forum/forms/general.py:105 -msgid "please enter a valid email address" -msgstr "" - -#: forum/forms/auth.py:32 -msgid "Sorry, but this email is not on our database." -msgstr "" - -#: forum/forms/auth.py:40 -#, fuzzy -msgid "Current password" -msgstr "确认密ç " - -#: forum/forms/auth.py:51 -msgid "" -"Old password is incorrect. Please enter the correct " -"password." -msgstr "" - -#: forum/forms/general.py:29 -#, fuzzy -msgid "this field is required" -msgstr " æ ‡ç¾ä¸èƒ½ä¸ºç©ºã€‚" - -#: forum/forms/general.py:42 -msgid "choose a username" -msgstr "选择一个用户å" - -#: forum/forms/general.py:47 -#, fuzzy -msgid "user name is required" -msgstr " æ ‡ç¾ä¸èƒ½ä¸ºç©ºã€‚" - -#: forum/forms/general.py:48 -#, fuzzy -msgid "sorry, this name is taken, please choose another" -msgstr "对ä¸èµ·ï¼Œæ‚¨ä¸èƒ½æ³¨å†Œè¯¥ç”¨æˆ·å,请æ¢ä¸€ä¸ªè¯•è¯•" - -#: forum/forms/general.py:49 -#, fuzzy -msgid "sorry, this name is not allowed, please choose another" -msgstr "对ä¸èµ·ï¼Œæ‚¨ä¸èƒ½æ³¨å†Œè¯¥ç”¨æˆ·å,请æ¢ä¸€ä¸ªè¯•è¯•" - -#: forum/forms/general.py:50 -msgid "sorry, there is no user with this name" -msgstr "" - -#: forum/forms/general.py:51 -msgid "sorry, we have a serious error - user name is taken by several users" -msgstr "" - -#: forum/forms/general.py:52 -msgid "" -"user name can only consist of letters, empty space, hyphens and underscore" -msgstr "" - -#: forum/forms/general.py:53 -#, python-format -msgid "user name is to short, please use at least %d characters" -msgstr "" - -#: forum/forms/general.py:103 -msgid "your email address" -msgstr "您的电å邮件地å€" - -#: forum/forms/general.py:104 -#, fuzzy -msgid "email address is required" -msgstr " æ ‡ç¾ä¸èƒ½ä¸ºç©ºã€‚" - -#: forum/forms/general.py:106 -#, fuzzy -msgid "this email is already used by someone else, please choose another" -msgstr "该电å邮件已被注册,请选择å¦ä¸€ä¸ªå†è¯•ã€‚" - -#: forum/forms/general.py:131 -msgid "choose password" -msgstr "密ç " - -#: forum/forms/general.py:132 -#, fuzzy -msgid "password is required" -msgstr " æ ‡ç¾ä¸èƒ½ä¸ºç©ºã€‚" - -#: forum/forms/general.py:135 -msgid "retype password" -msgstr "确认密ç " - -#: forum/forms/general.py:136 -#, fuzzy -msgid "please, retype your password" -msgstr "确认密ç " - -#: forum/forms/general.py:137 -msgid "sorry, entered passwords did not match, please try again" -msgstr "" - -#: forum/forms/qanda.py:23 -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "title" -msgstr "æ ‡é¢˜" - -#: forum/forms/qanda.py:24 -msgid "please enter a descriptive title for your question" -msgstr "" -"请输入对问题具有æè¿°æ€§è´¨çš„æ ‡é¢˜ - “帮忙ï¼ç´§æ€¥æ±‚助ï¼â€ä¸æ˜¯å»ºè®®çš„æ问方å¼ã€‚" - -#: forum/forms/qanda.py:31 -#, fuzzy, python-format -msgid "title must be must be at least %s characters" -msgstr "æ ‡é¢˜çš„é•¿åº¦å¿…é¡»å¤§äºŽ10" - -#: forum/forms/qanda.py:40 -msgid "content" -msgstr "内容" - -#: forum/forms/qanda.py:55 -#, fuzzy, python-format -msgid "question content must be at least %s characters" -msgstr "内容至少è¦10个å—符" - -#: forum/forms/qanda.py:68 -#, fuzzy, python-format -msgid "answer content must be at least %s characters" -msgstr "内容至少è¦10个å—符" - -#: forum/forms/qanda.py:80 forum/skins/default/templates/header.html:36 -#: forum/skins/default/templates/search.html:21 -#: forum/skins/nuxeo/templates/header.html:53 -#: forum/skins/nuxeo/templates/search.html:20 forum/views/readers.py:266 -msgid "tags" -msgstr "æ ‡ç¾" - -#: forum/forms/qanda.py:82 -#, python-format -msgid "" -"Tags are short keywords, with no spaces within. At least %(min)s and up to " -"%(max)s tags can be used." -msgstr "" - -#: forum/forms/qanda.py:100 -#, python-format -msgid "please use between %(min)s and %(max)s tags" -msgstr "" - -#: forum/forms/qanda.py:106 -#, python-format -msgid "please use between %(min)s and %(max)s characters in you tags" -msgstr "" - -#: forum/forms/qanda.py:108 -#, fuzzy -msgid "" -"please use following characters in tags: letters , numbers, and characters '." -"#-_'" -msgstr "æ ‡ç¾è¯·ä½¿ç”¨è‹±æ–‡å—æ¯ï¼Œä¸æ–‡æˆ–者数å—å—符串(. - _ # 也å¯ä»¥ï¼‰" - -#: forum/forms/qanda.py:118 -#, python-format -msgid "" -"You don't have enough reputation to create new tags. The following tags do " -"not exist yet: %s" -msgstr "" - -# index.html -#: forum/forms/qanda.py:128 -#: forum/skins/default/templates/question_summary_list_roll.html:26 -#: forum/skins/default/templates/question_summary_list_roll.html:39 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:26 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:39 -msgid "community wiki" -msgstr "社区Wiki" - -#: forum/forms/qanda.py:129 -msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" -msgstr "选择社区wiki模å¼ï¼Œé—®ç”ä¸è®¡ç®—积分,ç¾å也ä¸æ˜¾ç¤ºä½œè€…ä¿¡æ¯" - -#: forum/forms/qanda.py:147 -msgid "update summary:" -msgstr "更新概è¦ï¼š" - -#: forum/forms/qanda.py:148 -msgid "" -"enter a brief summary of your revision (e.g. fixed spelling, grammar, " -"improved style, this field is optional)" -msgstr "" -"输入本次修改的简å•æ¦‚述(如:修改了别å—,修æ£äº†è¯æ³•ï¼Œæ”¹è¿›äº†æ ·å¼ç‰ã€‚éžå¿…å¡«" -"项。)" - -#: forum/forms/qanda.py:152 -#, fuzzy -msgid "Your message:" -msgstr "Copyright(c)2009.CNPROG.COM" - -#: forum/forms/qanda.py:158 -#, fuzzy -msgid "Your name:" -msgstr "用户å" - -#: forum/forms/qanda.py:159 -#, fuzzy -msgid "Email (not shared with anyone):" -msgstr "电å邮件(<i>用于头åƒæ˜¾ç¤ºæœåŠ¡</i>)" - -#: forum/forms/qanda.py:301 -msgid "this email does not have to be linked to gravatar" -msgstr "ä¸ä¼šå…¬å¼€ï¼Œç”¨äºŽå¤´åƒæ˜¾ç¤ºæœåŠ¡" - -#: forum/forms/qanda.py:302 -msgid "Real name" -msgstr "真实姓å" - -#: forum/forms/qanda.py:303 -msgid "Website" -msgstr "个人网站" - -#: forum/forms/qanda.py:304 -msgid "Location" -msgstr "城市" - -#: forum/forms/qanda.py:305 -msgid "Date of birth" -msgstr "生日" - -#: forum/forms/qanda.py:305 -msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" -msgstr "ä¸ä¼šå…¬å¼€ï¼Œåªä¼šæ˜¾ç¤ºæ‚¨çš„å¹´é¾„ï¼Œæ ¼å¼ä¸ºï¼šYYYY-MM-DD" - -#: forum/forms/qanda.py:306 -#: forum/skins/default/templates/account_settings.html:21 -#: forum/skins/default/templates/osqaadmin/moderation.html:69 -#: forum/skins/nuxeo/templates/account_settings.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:68 -msgid "Profile" -msgstr "个人简介" - -#: forum/forms/qanda.py:311 -#, fuzzy -msgid "Screen name" -msgstr "姓å" - -#: forum/forms/qanda.py:337 -msgid "this email has already been registered, please use another one" -msgstr "该电å邮件已被注册,请选择å¦ä¸€ä¸ªå†è¯•ã€‚" - -#: forum/forms/qanda.py:342 -msgid "Instantly" -msgstr "" - -#: forum/forms/qanda.py:345 -msgid "No notifications" -msgstr "" - -#: forum/middleware/admin_messages.py:25 -#, python-format -msgid "" -"\n" -" The e-mail settings of this community are not configured " -"yet. We strongly recommend you to\n" -" do that from the <a href=\"%(email_settings_url)s\">e-" -"mail settings page</a> as soon as possible.\n" -" " -msgstr "" - -#: forum/middleware/admin_messages.py:47 -msgid "" -"\n" -" Please, configure your APP_URL setting from the local " -"settings file.\n" -" " -msgstr "" - -#: forum/middleware/anon_user.py:35 -#, python-format -msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" -msgstr "" - -#: forum/models/action.py:216 -msgid "You" -msgstr "" - -#: forum/models/action.py:231 -#, fuzzy, python-format -msgid "on %(link)s" -msgstr "链接" - -#: forum/models/action.py:235 -#, python-format -msgid "%(user)s %(node_name)s %(node_desc)s" -msgstr "" - -#: forum/models/comment.py:6 forum/views/commands.py:247 -#: forum/views/commands.py:273 forum_modules/akismet/startup.py:77 -#, fuzzy -msgid "comment" -msgstr "评论" - -#: forum/models/meta.py:46 -msgid "Unknown" -msgstr "" - -#: forum/models/meta.py:51 -msgid "No description available" -msgstr "" - -#: forum/models/node.py:250 -#, fuzzy -msgid "post" -msgstr "投赞æˆç¥¨" - -#: forum/models/page.py:54 -#, fuzzy, python-format -msgid "[Unpublished] %s" -msgstr "ã€å‡ºç‰ˆç¤¾ã€‘" - -#: forum/models/question.py:34 -#, fuzzy -msgid "[deleted] " -msgstr "[å·²åˆ é™¤]" - -#: forum/models/question.py:37 -#, fuzzy -msgid "[closed] " -msgstr "[已关é—]" - -#: forum/models/tag.py:68 -#, fuzzy -msgid "interesting" -msgstr "修改问题" - -#: forum/models/tag.py:68 -msgid "ignored" -msgstr "" - -#: forum/models/user.py:233 forum/views/readers.py:144 -#, fuzzy -msgid "asked-by" -msgstr "æ问于" - -#: forum/models/user.py:248 forum/views/readers.py:147 -#, fuzzy -msgid "answered-by" -msgstr "回ç”" - -#: forum/models/user.py:254 forum/views/readers.py:150 -msgid "subscribed-by" -msgstr "" - -#: forum/settings/__init__.py:62 -#, fuzzy -msgid "Badges config" -msgstr "枚奖牌" - -#: forum/settings/__init__.py:62 -msgid "Configure badges on your OSQA site." -msgstr "" - -#: forum/settings/accept.py:5 -#, fuzzy -msgid "Accepting answers" -msgstr "最先回ç”" - -#: forum/settings/accept.py:5 -msgid "Settings to tweak the behaviour of accepting answers." -msgstr "" - -#: forum/settings/accept.py:8 -#, fuzzy -msgid "Disallow answers to be accepted" -msgstr "问题已ç»è§£å†³ï¼Œå·²å¾—到æ£ç¡®ç”案" - -#: forum/settings/accept.py:9 -msgid "" -"Disable accepting answers feature. If you re-enable it in the future, " -"currently accepted answers will still be marked as accepted." -msgstr "" - -#: forum/settings/accept.py:13 -#, fuzzy -msgid "Maximum accepted answers per question" -msgstr "ä¸æ˜¯ä¸€ä¸ªå¯ä»¥å›žç”的“问题â€" - -#: forum/settings/accept.py:14 -msgid "How many accepted answers are allowed per question. Use 0 for no limit." -msgstr "" - -#: forum/settings/accept.py:17 -#, fuzzy -msgid "Maximum accepted answers per user/question" -msgstr "ä¸æ˜¯ä¸€ä¸ªå¯ä»¥å›žç”的“问题â€" - -#: forum/settings/accept.py:18 -msgid "" -"If more than one accpeted answer is allowed, how many can be accepted per " -"single user per question." -msgstr "" - -#: forum/settings/accept.py:21 -#, fuzzy -msgid "Users an accept own answer" -msgstr "修改回ç”" - -#: forum/settings/accept.py:22 -msgid "Are normal users allowed to accept their own answers.." -msgstr "" - -#: forum/settings/basic.py:9 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:69 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:67 -#, fuzzy -msgid "Basic settings" -msgstr "设置" - -#: forum/settings/basic.py:9 -msgid "The basic settings for your application" -msgstr "" - -#: forum/settings/basic.py:12 -msgid "Application logo" -msgstr "" - -#: forum/settings/basic.py:13 -msgid "Your site main logo." -msgstr "" - -#: forum/settings/basic.py:17 -msgid "Favicon" -msgstr "" - -#: forum/settings/basic.py:18 -msgid "Your site favicon." -msgstr "" - -#: forum/settings/basic.py:22 -#, fuzzy -msgid "Application title" -msgstr "ã€å‡ºç‰ˆæ—¥æœŸã€‘" - -#: forum/settings/basic.py:23 -msgid "The title of your application that will show in the browsers title bar" -msgstr "" - -#: forum/settings/basic.py:26 -#, fuzzy -msgid "Application short name" -msgstr "ã€å‡ºç‰ˆæ—¥æœŸã€‘" - -#: forum/settings/basic.py:30 -msgid "Application keywords" -msgstr "" - -#: forum/settings/basic.py:31 -msgid "The meta keywords that will be available through the HTML meta tags." -msgstr "" - -#: forum/settings/basic.py:34 -#, fuzzy -msgid "Application description" -msgstr "完全é‡å¤çš„问题" - -#: forum/settings/basic.py:35 -msgid "The description of your application" -msgstr "" - -#: forum/settings/basic.py:39 -#, fuzzy -msgid "Copyright notice" -msgstr "Copyright(c)2009.CNPROG.COM" - -#: forum/settings/basic.py:40 -msgid "The copyright notice visible at the footer of your page." -msgstr "" - -#: forum/settings/basic.py:43 -msgid "Support URL" -msgstr "" - -#: forum/settings/basic.py:44 -msgid "" -"The URL provided for users to get support. It can be http: or mailto: or " -"whatever your preferred support scheme is." -msgstr "" - -#: forum/settings/basic.py:48 -#, fuzzy -msgid "Contact URL" -msgstr "è”系我们" - -#: forum/settings/basic.py:49 -msgid "" -"The URL provided for users to contact you. It can be http: or mailto: or " -"whatever your preferred contact scheme is." -msgstr "" - -#: forum/settings/email.py:7 -#, fuzzy -msgid "Email settings" -msgstr "设置" - -#: forum/settings/email.py:7 -msgid "Email server and other email related settings." -msgstr "" - -#: forum/settings/email.py:10 -#, fuzzy -msgid "E-Mail settings test" -msgstr "设置" - -#: forum/settings/email.py:11 -msgid "Test the current E-Mail configuration." -msgstr "" - -#: forum/settings/email.py:16 -msgid "Email Server" -msgstr "" - -#: forum/settings/email.py:17 -msgid "The SMTP server through which your application will be sending emails." -msgstr "" - -#: forum/settings/email.py:21 -msgid "Email Port" -msgstr "" - -#: forum/settings/email.py:22 -msgid "" -"The port on which your SMTP server is listening to. Usually this is 25, but " -"can be something else." -msgstr "" - -#: forum/settings/email.py:26 -msgid "Email User" -msgstr "" - -#: forum/settings/email.py:27 -msgid "The username for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:31 -#, fuzzy -msgid "Email Password" -msgstr "密ç " - -#: forum/settings/email.py:32 -msgid "The password for your SMTP connection." -msgstr "" - -#: forum/settings/email.py:37 -#, fuzzy -msgid "Use TLS" -msgstr "使用" - -#: forum/settings/email.py:38 -msgid "Whether to use TLS for authentication with your SMTP server." -msgstr "" - -#: forum/settings/email.py:42 -#, fuzzy -msgid "Site 'from' Email Address" -msgstr "您的电å邮件地å€" - -#: forum/settings/email.py:43 -msgid "" -"The address that will show up on the 'from' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:47 -#, fuzzy -msgid "Site 'reply-to' Email Address" -msgstr "您的电å邮件地å€" - -#: forum/settings/email.py:48 -msgid "" -"The address that will show up on the 'reply-to' field on emails sent by your " -"website." -msgstr "" - -#: forum/settings/email.py:52 -msgid "Email Subject Prefix" -msgstr "" - -#: forum/settings/email.py:53 -msgid "" -"Every email sent through your website will have the subject prefixed by this " -"string. It's usually a good idea to have such a prefix so your users can " -"easily set up a filter on their email clients." -msgstr "" - -#: forum/settings/email.py:57 -msgid "Email Footer Text" -msgstr "" - -#: forum/settings/email.py:58 -msgid "" -"Email footer text, usually \"CAN SPAM\" compliance, or the physical address " -"of the organization running the website. See <a href=\"http://en.wikipedia." -"org/wiki/CAN-SPAM_Act_of_2003\">this Wikipedia article</a> for more info." -msgstr "" - -#: forum/settings/email.py:62 -msgid "Email Border Color" -msgstr "" - -#: forum/settings/email.py:63 -msgid "The outter border color of the email base template" -msgstr "" - -#: forum/settings/email.py:67 -msgid "Email Paragraph Style" -msgstr "" - -#: forum/settings/email.py:68 -msgid "A valid css string to be used to style email paragraphs (the P tag)." -msgstr "" - -#: forum/settings/email.py:72 -msgid "Email Link Style" -msgstr "" - -#: forum/settings/email.py:73 -msgid "A valid css string to be used to style email links (the A tag)." -msgstr "" - -#: forum/settings/email.py:77 -msgid "Send digest only to active users" -msgstr "" - -#: forum/settings/email.py:78 -msgid "" -"If checked the daily digest won't be sent to users that have been suspended." -msgstr "" - -#: forum/settings/email.py:82 -msgid "Send digest only to validated users" -msgstr "" - -#: forum/settings/email.py:83 -msgid "" -"If checked the daily digest won't be sent to users that haven't validated " -"their emails." -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "External Keys" -msgstr "" - -#: forum/settings/extkeys.py:4 -msgid "" -"Keys for various external providers that your application may optionally use." -msgstr "" - -#: forum/settings/extkeys.py:7 -msgid "Google sitemap code" -msgstr "" - -#: forum/settings/extkeys.py:8 -msgid "" -"This is the code you get when you register your site at <a href='https://www." -"google.com/webmasters/tools/'>Google webmaster central</a>." -msgstr "" - -#: forum/settings/extkeys.py:12 -msgid "Google analytics key" -msgstr "" - -#: forum/settings/extkeys.py:13 -msgid "" -"Your Google analytics key. You can get one at the <a href='http://www.google." -"com/analytics/'>Google analytics official website</a>" -msgstr "" - -#: forum/settings/form.py:5 -#, fuzzy -msgid "Form settings" -msgstr "设置" - -#: forum/settings/form.py:5 -msgid "General settings for the OSQA forms." -msgstr "" - -# index.html -#: forum/settings/form.py:8 -#, fuzzy -msgid "Enable community wiki" -msgstr "社区Wiki" - -#: forum/settings/form.py:9 -msgid "Can questions or answers be marked as community wiki." -msgstr "" - -#: forum/settings/form.py:13 -#, fuzzy -msgid "Limit tag creation" -msgstr "积分" - -#: forum/settings/form.py:14 -msgid "" -"Limit tag creation to super users, staff or users with a minimum reputation." -msgstr "" - -#: forum/settings/form.py:20 -msgid "Minimum number of characters for a question's title" -msgstr "" - -#: forum/settings/form.py:21 -msgid "" -"The minimum number of characters a user must enter into the title field of a " -"question." -msgstr "" - -#: forum/settings/form.py:28 -msgid "Minimum number of characters for a question's content" -msgstr "" - -#: forum/settings/form.py:29 -msgid "" -"The minimum number of characters a user must enter into the content field of " -"a question." -msgstr "" - -#: forum/settings/form.py:36 -#, fuzzy -msgid "Empty question content" -msgstr "ä¸å›½ç¨‹åºå‘˜çš„编程技术问ç”社区。我们åšä¸“业的ã€å¯å作编辑的技术问ç”社区。" - -#: forum/settings/form.py:37 -msgid "If a question's content can be empty." -msgstr "" - -#: forum/settings/form.py:45 -#, fuzzy -msgid "Required number of tags per question" -msgstr "个" - -#: forum/settings/form.py:46 -msgid "How many tags are required in questions." -msgstr "" - -#: forum/settings/form.py:50 -#, fuzzy -msgid "Maximum number of tags per question" -msgstr "个" - -#: forum/settings/form.py:51 -#, fuzzy -msgid "How many tags are allowed in questions." -msgstr "打开关é—任何人的问题" - -#: forum/settings/form.py:55 -msgid "Minimum length of a tag" -msgstr "" - -#: forum/settings/form.py:56 -msgid "How short a tag can be." -msgstr "" - -#: forum/settings/form.py:60 -msgid "Maximum length of a tag" -msgstr "" - -#: forum/settings/form.py:61 -msgid "How long a tag can be." -msgstr "" - -#: forum/settings/form.py:69 -msgid "Minimum number of characters for a comment" -msgstr "" - -#: forum/settings/form.py:70 -msgid "" -"The minimum number of characters a user must enter into the body of a " -"comment." -msgstr "" - -#: forum/settings/form.py:73 -msgid "Maximum length of comment" -msgstr "" - -#: forum/settings/form.py:74 -msgid "" -"The maximum number of characters a user can enter into the body of a comment." -msgstr "" - -#: forum/settings/form.py:77 -msgid "Allow markdown in comments" -msgstr "" - -#: forum/settings/form.py:78 -msgid "Allow users to use markdown in comments." -msgstr "" - -#: forum/settings/form.py:82 -msgid "Show author gravatar in comments" -msgstr "" - -#: forum/settings/form.py:83 -msgid "Show the gravatar image of a comment author." -msgstr "" - -#: forum/settings/forms.py:53 -#, fuzzy -msgid "context" -msgstr "内容" - -#: forum/settings/forms.py:53 -#, fuzzy -msgid "default" -msgstr "åˆ é™¤" - -#: forum/settings/forms.py:66 -#, fuzzy -msgid "Change this:" -msgstr "ä¿®æ”¹é—®é¢˜æ ‡ç¾" - -#: forum/settings/minrep.py:4 -#, fuzzy -msgid "Minimum reputation config" -msgstr "积分" - -#: forum/settings/minrep.py:4 -msgid "" -"Configure the minimum reputation required to perform certain actions on your " -"site." -msgstr "" - -#: forum/settings/minrep.py:7 -#, fuzzy -msgid "Show captcha if user with less reputation than" -msgstr "用户的社区积分历å²" - -#: forum/settings/minrep.py:8 -msgid "" -"If the user has less reputation, captcha is used to when adding new content." -msgstr "" - -#: forum/settings/minrep.py:11 -msgid "Minimum reputation to vote up" -msgstr "" - -#: forum/settings/minrep.py:12 -msgid "The minimum reputation an user must have to be allowed to vote up." -msgstr "" - -#: forum/settings/minrep.py:15 -#, fuzzy -msgid "Minimum reputation to vote down" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:16 -msgid "The minimum reputation an user must have to be allowed to vote down." -msgstr "" - -#: forum/settings/minrep.py:19 -msgid "Minimum reputation to flag a post" -msgstr "" - -#: forum/settings/minrep.py:20 -msgid "The minimum reputation an user must have to be allowed to flag a post." -msgstr "" - -#: forum/settings/minrep.py:23 -#, fuzzy -msgid "Minimum reputation to comment" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:24 -msgid "" -"The minimum reputation an user must have to be allowed to comment a post." -msgstr "" - -#: forum/settings/minrep.py:27 -#, fuzzy -msgid "Minimum reputation to like a comment" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:28 -msgid "" -"The minimum reputation an user must have to be allowed to \"like\" a comment." -msgstr "" - -#: forum/settings/minrep.py:31 -msgid "Minimum reputation to upload" -msgstr "" - -#: forum/settings/minrep.py:32 -msgid "" -"The minimum reputation an user must have to be allowed to upload a file." -msgstr "" - -#: forum/settings/minrep.py:35 -#, fuzzy -msgid "Minimum reputation to create tags" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:36 -msgid "" -"The minimum reputation an user must have to be allowed to create new tags." -msgstr "" - -#: forum/settings/minrep.py:39 -msgid "Minimum reputation to close own question" -msgstr "" - -#: forum/settings/minrep.py:40 -msgid "" -"The minimum reputation an user must have to be allowed to close his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:43 -msgid "Unify close and reopen permissions" -msgstr "" - -#: forum/settings/minrep.py:44 -msgid "" -"If checked the same permissions as the ones to close question will be " -"required to reopen it." -msgstr "" - -#: forum/settings/minrep.py:48 -msgid "Minimum reputation to reopen own question" -msgstr "" - -#: forum/settings/minrep.py:49 -msgid "" -"The minimum reputation an user must have to be allowed to reopen his own " -"question." -msgstr "" - -#: forum/settings/minrep.py:52 -#, fuzzy -msgid "Minimum reputation to retag others questions" -msgstr "其他用户的回å¤å’Œè¯„论" - -#: forum/settings/minrep.py:53 -msgid "" -"The minimum reputation an user must have to be allowed to retag others " -"questions." -msgstr "" - -#: forum/settings/minrep.py:56 -msgid "Minimum reputation to edit wiki posts" -msgstr "" - -#: forum/settings/minrep.py:57 -msgid "" -"The minimum reputation an user must have to be allowed to edit community " -"wiki posts." -msgstr "" - -#: forum/settings/minrep.py:60 -#, fuzzy -msgid "Minimum reputation to mark post as community wiki" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:61 -msgid "" -"The minimum reputation an user must have to be allowed to mark a post as " -"community wiki." -msgstr "" - -#: forum/settings/minrep.py:64 -msgid "Minimum reputation to edit others posts" -msgstr "" - -#: forum/settings/minrep.py:65 -msgid "" -"The minimum reputation an user must have to be allowed to edit others posts." -msgstr "" - -#: forum/settings/minrep.py:68 -msgid "Minimum reputation to close others posts" -msgstr "" - -#: forum/settings/minrep.py:69 -msgid "" -"The minimum reputation an user must have to be allowed to close others posts." -msgstr "" - -#: forum/settings/minrep.py:72 -#, fuzzy -msgid "Minimum reputation to delete comments" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:73 -msgid "" -"The minimum reputation an user must have to be allowed to delete comments." -msgstr "" - -#: forum/settings/minrep.py:76 -#, fuzzy -msgid "Minimum reputation to convert answers to comment" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:77 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a comment." -msgstr "" - -#: forum/settings/minrep.py:80 -#, fuzzy -msgid "Minimum reputation to convert comments to answers" -msgstr "用户社区积分" - -#: forum/settings/minrep.py:81 -msgid "" -"The minimum reputation an user must have to be allowed to convert comments " -"into an answer." -msgstr "" - -#: forum/settings/minrep.py:84 -#, fuzzy -msgid "Minimum reputation to convert answers to questions" -msgstr "其他用户的回å¤å’Œè¯„论" - -#: forum/settings/minrep.py:85 -msgid "" -"The minimum reputation an user must have to be allowed to convert an answer " -"into a question." -msgstr "" - -#: forum/settings/minrep.py:88 -msgid "Minimum reputation to view offensive flags" -msgstr "" - -#: forum/settings/minrep.py:89 -msgid "The minimum reputation an user must have to view offensive flags." -msgstr "" - -#: forum/settings/moderation.py:8 -#, fuzzy -msgid "Moderation settings" -msgstr "用户å‚数的设置" - -#: forum/settings/moderation.py:8 -msgid "Define the moderation workflow of your site" -msgstr "" - -# todo - check if it's indeed plural -#: forum/settings/moderation.py:11 -#, fuzzy -msgid "Use canned comments" -msgstr "æ·»åŠ è¯„è®º" - -#: forum/settings/moderation.py:12 -msgid "" -"If you check, the canned comments feature will be activated, allowing " -"moderators to use canned patterns for their comments." -msgstr "" - -#: forum/settings/moderation.py:20 -#, fuzzy -msgid "Canned comments" -msgstr "评论" - -#: forum/settings/moderation.py:21 -msgid "" -"\n" -"<p>Create some canned comments to be used for easier moderation. You can " -"access the {{ post }} and {{ settings }} variables.</p>\n" -"<p>If you want to access the current post author username you can use " -"{{ post.author }}, for the question title use {{ post.title }}.</p>\n" -"<p>To get the application title use {{ settings.APP_TITLE }}. All settings " -"are accessible through the settings object.</p>\n" -msgstr "" - -#: forum/settings/moderation.py:32 -#, fuzzy -msgid "Flag Reasons" -msgstr "åŽŸå› " - -#: forum/settings/moderation.py:33 -msgid "Create some flag reasons to use in the flag post popup." -msgstr "" - -# close.html -#: forum/settings/moderation.py:41 -#, fuzzy -msgid "Close Reasons" -msgstr "å…³é—问题" - -#: forum/settings/moderation.py:42 -msgid "Create some close reasons to use in the close question popup." -msgstr "" - -#: forum/settings/moderation.py:48 -msgid "Position it in the \"More\" menu" -msgstr "" - -#: forum/settings/moderation.py:49 -msgid "Position it in main controls" -msgstr "" - -#: forum/settings/moderation.py:53 -msgid "Position of report control" -msgstr "" - -#: forum/settings/moderation.py:54 -msgid "Choose the position of the \"report (0)\" control of nodes." -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "Reputation gains and losses config" -msgstr "" - -#: forum/settings/repgain.py:4 -msgid "" -"Configure the reputation points a user may gain or lose upon certain actions." -msgstr "" - -#: forum/settings/repgain.py:7 -#, fuzzy -msgid "Initial reputation" -msgstr "积分" - -#: forum/settings/repgain.py:8 -msgid "The initial reputation an user gets when he first signs in." -msgstr "" - -#: forum/settings/repgain.py:12 -msgid "Maximum reputation a user can gain in one day for being upvoted." -msgstr "" - -#: forum/settings/repgain.py:15 -msgid "Rep gain by e-mail validation" -msgstr "" - -#: forum/settings/repgain.py:16 -msgid "Reputation a user gains for validating his e-mail." -msgstr "" - -#: forum/settings/repgain.py:19 -msgid "Rep gain by upvoted" -msgstr "" - -#: forum/settings/repgain.py:20 -msgid "Reputation a user gains for having one of his posts up voted." -msgstr "" - -#: forum/settings/repgain.py:23 -#, fuzzy -msgid "Rep lost by downvoted" -msgstr "投å对票" - -#: forum/settings/repgain.py:24 -msgid "Reputation a user loses for having one of his posts down voted." -msgstr "" - -#: forum/settings/repgain.py:27 -msgid "Rep lost by downvoting" -msgstr "" - -#: forum/settings/repgain.py:28 -msgid "Reputation a user loses for down voting a post." -msgstr "" - -#: forum/settings/repgain.py:32 -#, fuzzy -msgid "Rep gain by accepted answer" -msgstr "修改回ç”" - -#: forum/settings/repgain.py:33 -msgid "Reputation a user gains for having one of his answers accepted." -msgstr "" - -#: forum/settings/repgain.py:36 -msgid "Rep gain by accepting answer" -msgstr "" - -#: forum/settings/repgain.py:37 -msgid "" -"Reputation a user gains for accepting an answer to one of his questions." -msgstr "" - -#: forum/settings/repgain.py:40 -msgid "Rep lost by post flagged" -msgstr "" - -#: forum/settings/repgain.py:41 -msgid "Reputation a user loses by having one of his posts flagged." -msgstr "" - -#: forum/settings/repgain.py:44 -msgid "Rep lost by post flagged and hidden" -msgstr "" - -#: forum/settings/repgain.py:45 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to hide the post." -msgstr "" - -#: forum/settings/repgain.py:48 -msgid "Rep lost by post flagged and deleted" -msgstr "" - -#: forum/settings/repgain.py:49 -msgid "" -"Reputation a user loses by having the last revision of one of his posts " -"flagged the enough number of times to delete the post." -msgstr "" - -#: forum/settings/sidebar.py:10 -msgid "Show the Welcome box" -msgstr "" - -#: forum/settings/sidebar.py:11 -msgid "Do you want to show the welcome box when a user first visits your site." -msgstr "" - -#: forum/settings/sidebar.py:15 -msgid "Show interesting tags in the sidebar" -msgstr "" - -#: forum/settings/sidebar.py:16 -msgid "" -"Check this if you want to see the interesting tags container in the sidebar." -msgstr "" - -#: forum/settings/sidebar.py:20 -#, fuzzy -msgid "Application intro" -msgstr "ã€å‡ºç‰ˆæ—¥æœŸã€‘" - -#: forum/settings/sidebar.py:21 -msgid "" -"The introductory page that is visible in the sidebar for anonymous users." -msgstr "" - -#: forum/settings/sidebar.py:76 -msgid "Upper block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:77 -msgid "How to render your upper block code." -msgstr "" - -#: forum/settings/sidebar.py:105 -msgid "Lower block rendering mode" -msgstr "" - -#: forum/settings/sidebar.py:106 -msgid "How to render your lower block code." -msgstr "" - -#: forum/settings/sitemaps.py:5 -#, fuzzy -msgid "Sitemap settings" -msgstr "设置" - -#: forum/settings/sitemaps.py:5 -msgid "Some settings connected with the Sitemaps." -msgstr "" - -#: forum/settings/sitemaps.py:8 -#, fuzzy -msgid "Questions Sitemap Limit" -msgstr "问题列表" - -#: forum/settings/sitemaps.py:9 -msgid "The questions limit per page for the Questions Sitemap." -msgstr "" - -#: forum/settings/sitemaps.py:12 -msgid "Questions Sitemap Change Fraquence" -msgstr "" - -#: forum/settings/sitemaps.py:13 -msgid "" -"Used in the Questions Sitemap <changefreq> tag and specifies the content " -"change frequency." -msgstr "" - -#: forum/settings/static.py:17 -msgid "Use custom CSS" -msgstr "" - -#: forum/settings/static.py:18 -msgid "Do you want to use custom CSS." -msgstr "" - -#: forum/settings/static.py:22 -msgid "Custom CSS" -msgstr "" - -#: forum/settings/static.py:23 -msgid "Your custom CSS." -msgstr "" - -#: forum/settings/static.py:31 -msgid "Use custom header" -msgstr "" - -#: forum/settings/static.py:32 -msgid "Do you want to use a custom header." -msgstr "" - -#: forum/settings/static.py:36 -msgid "Custom Header" -msgstr "" - -#: forum/settings/static.py:37 -msgid "Your custom header." -msgstr "" - -#: forum/settings/static.py:42 -msgid "Custom Header rendering mode" -msgstr "" - -#: forum/settings/static.py:43 -msgid "How to render your custom header code." -msgstr "" - -#: forum/settings/static.py:48 -msgid "Show announcement bar" -msgstr "" - -#: forum/settings/static.py:49 -msgid "" -"Some piece of content that goes under the search bar and can be used for " -"announcements, etc." -msgstr "" - -#: forum/settings/static.py:53 -msgid "Announcement bar" -msgstr "" - -#: forum/settings/static.py:54 -msgid "The announcement bar content." -msgstr "" - -#: forum/settings/static.py:59 -msgid "Announcement bar rendering mode" -msgstr "" - -#: forum/settings/static.py:60 -msgid "How to render your announcement bar code." -msgstr "" - -#: forum/settings/static.py:65 -msgid "Use custom footer" -msgstr "" - -#: forum/settings/static.py:66 -msgid "Do you want to use a custom footer." -msgstr "" - -#: forum/settings/static.py:70 -msgid "Custom Footer" -msgstr "" - -#: forum/settings/static.py:71 -msgid "Your custom footer." -msgstr "" - -#: forum/settings/static.py:76 -msgid "Custom footer rendering mode" -msgstr "" - -#: forum/settings/static.py:77 -msgid "How to render your custom footer code." -msgstr "" - -#: forum/settings/static.py:82 -msgid "Replace default footer" -msgstr "" - -#: forum/settings/static.py:83 -msgid "Above default footer" -msgstr "" - -#: forum/settings/static.py:84 -msgid "Below default footer" -msgstr "" - -#: forum/settings/static.py:88 -msgid "Custom Footer Mode" -msgstr "" - -#: forum/settings/static.py:89 -msgid "How your custom footer will appear." -msgstr "" - -#: forum/settings/static.py:98 -msgid "Use custom Head elements" -msgstr "" - -#: forum/settings/static.py:99 -msgid "Do you want to use custom head elements." -msgstr "" - -#: forum/settings/static.py:103 -msgid "Custom Head" -msgstr "" - -#: forum/settings/static.py:104 -msgid "Your custom Head elements." -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File upload settings" -msgstr "" - -#: forum/settings/upload.py:5 -msgid "File uploads related settings." -msgstr "" - -#: forum/settings/upload.py:8 -msgid "Uploaded files folder" -msgstr "" - -#: forum/settings/upload.py:9 -msgid "" -"The filesystem path where uploaded files will be stored. Please note that " -"this folder must exist." -msgstr "" - -#: forum/settings/upload.py:12 -msgid "Uploaded files alias" -msgstr "" - -#: forum/settings/upload.py:13 -msgid "" -"The url alias for uploaded files. Notice that if you change this setting, " -"you'll need to restart your site." -msgstr "" - -#: forum/settings/upload.py:16 -msgid "Max file size" -msgstr "" - -#: forum/settings/upload.py:17 -#, fuzzy -msgid "The maximum allowed file size for uploads in mb." -msgstr "åªå…è®¸ä¸Šä¼ %sK大å°çš„文件ï¼" - -#: forum/settings/urls.py:4 -#, fuzzy -msgid "URL settings" -msgstr "设置" - -#: forum/settings/urls.py:4 -msgid "Some settings to tweak behaviour of site urls (experimental)." -msgstr "" - -#: forum/settings/urls.py:7 -msgid "Include IDs in user URLs" -msgstr "" - -#: forum/settings/urls.py:8 -msgid "Choose this if you want to have IDs included in the user-related URLs." -msgstr "" - -#: forum/settings/urls.py:12 -msgid "Allow unicode in slugs" -msgstr "" - -#: forum/settings/urls.py:13 -msgid "Allow unicode/non-latin characters in urls." -msgstr "" - -#: forum/settings/urls.py:17 -msgid "Force single url" -msgstr "" - -#: forum/settings/urls.py:18 -msgid "" -"Redirect the request in case there is a mismatch between the slug in the url " -"and the actual slug" -msgstr "" - -#: forum/settings/users.py:7 -#, fuzzy -msgid "Users settings" -msgstr "个问题" - -#: forum/settings/users.py:7 -msgid "General settings for the OSQA users." -msgstr "" - -#: forum/settings/users.py:10 -#, fuzzy -msgid "Allow negative reputation" -msgstr "积分" - -#: forum/settings/users.py:11 -#, fuzzy -msgid "Check if you want to allow negative user reputations in the community." -msgstr "用户社区积分" - -#: forum/settings/users.py:15 -msgid "Store greeting in cookie" -msgstr "" - -#: forum/settings/users.py:16 -msgid "" -"If you check this the greeting will be stored in a cookie and the users " -"won't be notified on logout." -msgstr "" - -#: forum/settings/users.py:20 -#, fuzzy -msgid "Editable screen name" -msgstr "姓å" - -#: forum/settings/users.py:21 -msgid "Allow users to alter their screen name." -msgstr "" - -# translation and user name validation are language-specific -#: forum/settings/users.py:25 -#, fuzzy -msgid "Minimum username length" -msgstr "用户ååªèƒ½åŒ…å«è‹±æ–‡å—æ¯ã€æ•°å—和下划线" - -#: forum/settings/users.py:26 -msgid "The minimum length (in character) of a username." -msgstr "" - -#: forum/settings/users.py:29 -msgid "fuck" -msgstr "" - -#: forum/settings/users.py:29 -msgid "shit" -msgstr "" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "ass" -msgstr "回ç”" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "sex" -msgstr "查看" - -#: forum/settings/users.py:29 -msgid "add" -msgstr "" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:118 -msgid "edit" -msgstr "编辑" - -#: forum/settings/users.py:29 forum/views/auth.py:403 forum/views/auth.py:408 -#, fuzzy -msgid "save" -msgstr "ä¿å˜" - -#: forum/settings/users.py:29 forum/templatetags/node_tags.py:152 -msgid "delete" -msgstr "åˆ é™¤" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "manage" -msgstr "图片" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "update" -msgstr "更新于" - -#: forum/settings/users.py:29 -#: forum/skins/default/templates/auth/auth_settings.html:12 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:12 -#, fuzzy -msgid "remove" -msgstr "打开" - -#: forum/settings/users.py:29 -#, fuzzy -msgid "new" -msgstr "最新问题" - -# translation and user name validation are language-specific -#: forum/settings/users.py:31 -#, fuzzy -msgid "Disabled usernames" -msgstr "用户ååªèƒ½åŒ…å«è‹±æ–‡å—æ¯ã€æ•°å—和下划线" - -#: forum/settings/users.py:32 -msgid "" -"A comma separated list of disabled usernames (usernames not allowed during a " -"new user registration)." -msgstr "" - -#: forum/settings/users.py:36 -#, fuzzy -msgid "Truncate long usernames" -msgstr "选择一个用户å" - -#: forum/settings/users.py:37 -msgid "The long usernames will be truncated.." -msgstr "" - -#: forum/settings/users.py:42 -#, fuzzy -msgid "Show user accept rate" -msgstr "最先回ç”" - -#: forum/settings/users.py:43 -msgid "" -"If you check this the user accept rate will be displayed on the user posts." -msgstr "" - -#: forum/settings/users.py:49 -#, fuzzy -msgid "Freeze accept rate" -msgstr "最先回ç”" - -#: forum/settings/users.py:50 -msgid "Freeze answers accept rate for the selected users." -msgstr "" - -#: forum/settings/users.py:54 -msgid "Truncate usernames longer than" -msgstr "" - -#: forum/settings/users.py:55 -msgid "" -"The usernames that are longer than this will be truncated and ... will be " -"appended." -msgstr "" - -#: forum/settings/users.py:58 -msgid "Show status diamonds" -msgstr "" - -#: forum/settings/users.py:59 -msgid "Show status \"diamonds\" next to moderators or superusers usernames." -msgstr "" - -#: forum/settings/users.py:64 -#, fuzzy -msgid "Force unique email" -msgstr "修改电å邮件" - -#: forum/settings/users.py:65 -msgid "Should each user have an unique email." -msgstr "" - -#: forum/settings/users.py:69 -msgid "Require email validation to..." -msgstr "" - -#: forum/settings/users.py:70 -msgid "" -"Which actions in this site, users without a valid email will be prevented " -"from doing." -msgstr "" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "ask questions" -msgstr "我è¦æé—®" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "provide answers" -msgstr "最先回ç”" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "make comments" -msgstr "评论" - -#: forum/settings/users.py:72 -#, fuzzy -msgid "report posts" -msgstr "åˆ é™¤" - -#: forum/settings/users.py:77 -msgid "Don't notify to invalid emails" -msgstr "" - -#: forum/settings/users.py:78 -msgid "Do not notify users with unvalidated emails." -msgstr "" - -#: forum/settings/users.py:82 -msgid "Hold pending posts for X minutes" -msgstr "" - -#: forum/settings/users.py:83 -msgid "" -"How much time in minutes a post should be kept in session until the user " -"logs in or validates the email." -msgstr "" - -#: forum/settings/users.py:87 -msgid "Warn about pending posts afer X minutes" -msgstr "" - -#: forum/settings/users.py:88 -msgid "" -"How much time in minutes a user that just logged in or validated his email " -"should be warned about a pending post instead of publishing it automatically." -msgstr "" - -#: forum/settings/users.py:92 -msgid "suitable for display on all websites with any audience type." -msgstr "" - -#: forum/settings/users.py:93 -msgid "" -"may contain rude gestures, provocatively dressed individuals, the lesser " -"swear words, or mild violence." -msgstr "" - -#: forum/settings/users.py:94 -msgid "" -"may contain such things as harsh profanity, intense violence, nudity, or " -"hard drug use." -msgstr "" - -#: forum/settings/users.py:95 -msgid "may contain hardcore sexual imagery or extremely disturbing violence." -msgstr "" - -#: forum/settings/users.py:99 -msgid "Gravatar rating" -msgstr "" - -#: forum/settings/users.py:100 -msgid "" -"Gravatar allows users to self-rate their images so that they can indicate if " -"an image is appropriate for a certain audience." -msgstr "" - -#: forum/settings/users.py:106 -msgid "" -"(mystery-man) a simple, cartoon-style silhouetted outline of a person (does " -"not vary by email hash)" -msgstr "" - -#: forum/settings/users.py:107 -msgid "a geometric pattern based on an email hash" -msgstr "" - -#: forum/settings/users.py:108 -msgid "a generated \"monster\" with different colors, faces, etc" -msgstr "" - -#: forum/settings/users.py:109 -msgid "generated faces with differing features and backgrounds" -msgstr "" - -#: forum/settings/users.py:113 -msgid "Gravatar default" -msgstr "" - -#: forum/settings/users.py:114 -msgid "" -"Gravatar has a number of built in options which you can also use as defaults." -msgstr "" - -#: forum/settings/view.py:5 -#, fuzzy -msgid "View settings" -msgstr "设置" - -#: forum/settings/view.py:5 -msgid "Set up how certain parts of the site are displayed." -msgstr "" - -#: forum/settings/view.py:8 -msgid "Embed YouTube Videos" -msgstr "" - -#: forum/settings/view.py:9 -msgid "If you check this YouTube videos will be embedded" -msgstr "" - -#: forum/settings/view.py:13 -msgid "Show latest comments first" -msgstr "" - -#: forum/settings/view.py:14 -msgid "Choose this if you want the latest comments to appear first." -msgstr "" - -#: forum/settings/view.py:19 -msgid "Summary Length" -msgstr "" - -#: forum/settings/view.py:20 -msgid "" -"The number of characters that are going to be displayed in order to get the " -"content summary." -msgstr "" - -#: forum/settings/view.py:24 -#, fuzzy -msgid "Recent tags block size" -msgstr "æœ€æ–°æ ‡ç¾" - -#: forum/settings/view.py:25 -msgid "" -"The number of tags to display in the recent tags block in the front page." -msgstr "" - -#: forum/settings/view.py:28 -msgid "Show tags in a cloud" -msgstr "" - -#: forum/settings/view.py:29 -msgid "" -"If selected the tags in the recent tags widget will be displayed in a cloud." -msgstr "" - -#: forum/settings/view.py:33 -msgid "Tags cloud min occurs" -msgstr "" - -#: forum/settings/view.py:34 forum/settings/view.py:38 -#: forum/settings/view.py:42 forum/settings/view.py:46 -msgid "Used to calculate the font size of the tags in the cloud widget." -msgstr "" - -#: forum/settings/view.py:37 -msgid "Tags cloud max occurs" -msgstr "" - -#: forum/settings/view.py:41 -msgid "Tags cloud min font size" -msgstr "" - -#: forum/settings/view.py:45 -msgid "Tags cloud max font size" -msgstr "" - -#: forum/settings/view.py:49 -#, fuzzy -msgid "Recent awards block size" -msgstr "最新奖牌" - -#: forum/settings/view.py:50 -msgid "" -"The number of awards to display in the recent awards block in the front page." -msgstr "" - -#: forum/settings/view.py:53 -#, fuzzy -msgid "Update latest activity on tag edit" -msgstr "最近活动" - -#: forum/settings/view.py:54 -msgid "" -"If you check this the latest activity will be updated when editing only the " -"tags of a question." -msgstr "" - -#: forum/settings/view.py:57 -#, fuzzy -msgid "Limit related tags block" -msgstr "ç›¸å…³æ ‡ç¾" - -#: forum/settings/view.py:58 -msgid "" -"Limit related tags block size in questions list pages. Set to 0 to display " -"all all tags." -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Voting rules" -msgstr "" - -#: forum/settings/voting.py:4 -msgid "Configure the voting rules on your site." -msgstr "" - -#: forum/settings/voting.py:7 -#, fuzzy -msgid "Add reputation to max votes per day" -msgstr "用户社区积分" - -#: forum/settings/voting.py:8 -msgid "" -"The user reputation is added to the static MAX_VOTES_PER_DAY option. Users " -"with higher reputation can vote more." -msgstr "" - -#: forum/settings/voting.py:11 -msgid "Maximum votes per day" -msgstr "" - -#: forum/settings/voting.py:12 -msgid "The maximum number of votes an user can cast per day." -msgstr "" - -#: forum/settings/voting.py:15 -msgid "Start warning about votes left" -msgstr "" - -#: forum/settings/voting.py:16 -msgid "From how many votes left should an user start to be warned about it." -msgstr "" - -#: forum/settings/voting.py:19 -msgid "Maximum flags per day" -msgstr "" - -#: forum/settings/voting.py:20 -msgid "The maximum number of times an can flag a post per day." -msgstr "" - -#: forum/settings/voting.py:23 -msgid "Flag count to hide post" -msgstr "" - -#: forum/settings/voting.py:24 -msgid "" -"How many times a post needs to be flagged to be hidden from the main page." -msgstr "" - -#: forum/settings/voting.py:27 -#, fuzzy -msgid "Flag count to delete post" -msgstr "åˆ é™¤å¸å·" - -#: forum/settings/voting.py:28 -msgid "How many times a post needs to be flagged to be deleted." -msgstr "" - -#: forum/settings/voting.py:31 -#, fuzzy -msgid "Days to cancel a vote" -msgstr "撤销投票" - -#: forum/settings/voting.py:32 -msgid "How many days an user can cancel a vote after he originaly casted it." -msgstr "" - -#: forum/skins/default/templates/401.html:3 -#: forum/skins/default/templates/401.html:28 -#: forum/skins/nuxeo/templates/401.html:3 -#: forum/skins/nuxeo/templates/401.html:28 -msgid "Not logged in" -msgstr "" - -#: forum/skins/default/templates/401.html:32 -#: forum/skins/nuxeo/templates/401.html:32 -msgid "You are not logged in..." -msgstr "" - -#: forum/skins/default/templates/401.html:34 -#: forum/skins/nuxeo/templates/401.html:34 -msgid "...and the resource you're trying to access is protected." -msgstr "" - -#: forum/skins/default/templates/401.html:36 -#: forum/skins/nuxeo/templates/401.html:36 -#, fuzzy -msgid "Redirecting to the login page." -msgstr "返回登录" - -#: forum/skins/default/templates/401.html:39 -#: forum/skins/nuxeo/templates/401.html:39 -msgid "If you're not automatically redirected in 5 seconds, please click" -msgstr "" - -#: forum/skins/default/templates/401.html:40 -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/default/templates/notifications/base.html:27 -#: forum/skins/nuxeo/templates/401.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/notifications/base.html:27 -msgid "here" -msgstr "" - -#: forum/skins/default/templates/403.html:3 -#: forum/skins/default/templates/403.html:11 -#: forum/skins/nuxeo/templates/403.html:3 -#: forum/skins/nuxeo/templates/403.html:11 -msgid "Forbidden" -msgstr "" - -#: forum/skins/default/templates/403.html:15 -#: forum/skins/nuxeo/templates/403.html:15 -msgid "Sorry, you don't have permissions to access this page." -msgstr "" - -#: forum/skins/default/templates/403.html:17 -#: forum/skins/default/templates/404.html:26 -#: forum/skins/nuxeo/templates/403.html:17 -#: forum/skins/nuxeo/templates/404.html:26 -msgid "This might have happened for the following reasons:" -msgstr "有å¯èƒ½æ˜¯ä»¥ä¸‹åŽŸå› 导致:" - -#: forum/skins/default/templates/403.html:19 -#: forum/skins/nuxeo/templates/403.html:19 -msgid "" -"you followed a link on an email, but you're currently logged in as another " -"user;" -msgstr "" - -#: forum/skins/default/templates/403.html:20 -#: forum/skins/nuxeo/templates/403.html:20 -msgid "there are errors in the url, please confirm it;" -msgstr "" - -#: forum/skins/default/templates/403.html:21 -#: forum/skins/nuxeo/templates/403.html:21 -#, fuzzy -msgid "if you believe you shouldn't bee seeing this error, please" -msgstr "å¦‚æžœä½ ç¡®ä¿¡ä¸è¯¥å‡ºçŽ°404错误,请" - -#: forum/skins/default/templates/403.html:23 -#: forum/skins/default/templates/404.html:31 -#: forum/skins/nuxeo/templates/403.html:23 -#: forum/skins/nuxeo/templates/404.html:31 -msgid "report this problem" -msgstr "报告这个问题" - -#: forum/skins/default/templates/403.html:29 -#: forum/skins/nuxeo/templates/403.html:29 -#, fuzzy -msgid "to home page" -msgstr "回到首页" - -#: forum/skins/default/templates/403.html:30 -#: forum/skins/default/templates/404.html:41 -#: forum/skins/nuxeo/templates/403.html:30 -#: forum/skins/nuxeo/templates/404.html:41 -msgid "see all questions" -msgstr "查看最新问题" - -#: forum/skins/default/templates/403.html:31 -#: forum/skins/default/templates/404.html:42 -#: forum/skins/nuxeo/templates/403.html:31 -#: forum/skins/nuxeo/templates/404.html:42 -msgid "see all tags" -msgstr "æŸ¥çœ‹æ ‡ç¾åˆ—表" - -#: forum/skins/default/templates/404.html:4 -#: forum/skins/nuxeo/templates/404.html:4 -msgid "404 Error" -msgstr "" - -#: forum/skins/default/templates/404.html:20 -#: forum/skins/nuxeo/templates/404.html:20 -#, fuzzy -msgid "404 Not Found" -msgstr "没有找到相关数æ®ã€‚" - -#: forum/skins/default/templates/404.html:24 -#: forum/skins/nuxeo/templates/404.html:24 -msgid "Sorry, could not find the page you requested." -msgstr "对ä¸èµ·ï¼Œæ²¡æœ‰æ‰¾åˆ°æ‚¨è¯·æ±‚的页é¢ï¼" - -#: forum/skins/default/templates/404.html:28 -#: forum/skins/nuxeo/templates/404.html:28 -msgid "this question or answer has been deleted;" -msgstr "ä½ æ£åœ¨æŸ¥çœ‹çš„问题或者回ç”å·²ç»è¢«åˆ 除;" - -#: forum/skins/default/templates/404.html:29 -#: forum/skins/nuxeo/templates/404.html:29 -msgid "url has error - please check it;" -msgstr "请求的地å€æœ‰è¯¯ - è¯·æ ¸å®žåŽŸå§‹URL地å€ï¼›" - -#: forum/skins/default/templates/404.html:30 -#: forum/skins/nuxeo/templates/404.html:30 -#, fuzzy -msgid "if you believe this error 404 should not have occurred, please" -msgstr "å¦‚æžœä½ ç¡®ä¿¡ä¸è¯¥å‡ºçŽ°404错误,请" - -#: forum/skins/default/templates/404.html:40 -#: forum/skins/default/templates/500.html:27 -#: forum/skins/nuxeo/templates/404.html:40 -#: forum/skins/nuxeo/templates/500.html:27 -msgid "back to previous page" -msgstr "返回å‰é¡µ" - -#: forum/skins/default/templates/500.html:22 -#: forum/skins/nuxeo/templates/500.html:22 -msgid "sorry, system error" -msgstr "" - -#: forum/skins/default/templates/500.html:24 -#: forum/skins/nuxeo/templates/500.html:24 -msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "" - -#: forum/skins/default/templates/500.html:25 -#: forum/skins/nuxeo/templates/500.html:25 -msgid "please report the error to the site administrators if you wish" -msgstr "" - -#: forum/skins/default/templates/500.html:28 -#: forum/skins/nuxeo/templates/500.html:28 -#, fuzzy -msgid "see latest questions" -msgstr "最新问题" - -#: forum/skins/default/templates/500.html:29 -#: forum/skins/nuxeo/templates/500.html:29 -#, fuzzy -msgid "see tags" -msgstr "æ ‡è®°åžƒåœ¾å¸–" - -#: forum/skins/default/templates/503.html:6 -#: forum/skins/default/templates/503.html:17 -#: forum/skins/nuxeo/templates/503.html:6 -#: forum/skins/nuxeo/templates/503.html:17 -msgid "System down for maintenance" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:4 -#: forum/skins/nuxeo/templates/account_settings.html:4 -msgid "Account functions" -msgstr "" - -#: forum/skins/default/templates/account_settings.html:29 -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/account_settings.html:29 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -msgid "Change password" -msgstr "修改密ç " - -#: forum/skins/default/templates/account_settings.html:30 -#: forum/skins/nuxeo/templates/account_settings.html:30 -msgid "Give your account a new password." -msgstr "" - -#: forum/skins/default/templates/answer_edit.html:5 -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/nuxeo/templates/answer_edit.html:5 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -msgid "Edit answer" -msgstr "修改回ç”" - -#: forum/skins/default/templates/answer_edit.html:20 -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:27 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:47 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:20 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:19 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:45 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:39 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:19 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "hide preview" -msgstr "ç¦ç”¨é¢„览" - -#: forum/skins/default/templates/answer_edit.html:23 -#: forum/skins/default/templates/ask.html:30 -#: forum/skins/default/templates/question.html:50 -#: forum/skins/default/templates/question_edit.html:23 -#: forum/skins/nuxeo/templates/answer_edit.html:22 -#: forum/skins/nuxeo/templates/ask.html:48 -#: forum/skins/nuxeo/templates/question.html:42 -#: forum/skins/nuxeo/templates/question_edit.html:22 -msgid "show preview" -msgstr "å¯ç”¨é¢„览" - -#: forum/skins/default/templates/answer_edit.html:63 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/answer_edit.html:62 -#: forum/skins/nuxeo/templates/question_edit.html:91 -#: forum/skins/nuxeo/templates/question_retag.html:58 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "back" -msgstr "返回" - -#: forum/skins/default/templates/answer_edit.html:69 -#: forum/skins/default/templates/question_edit.html:98 -#: forum/skins/default/templates/revisions.html:54 -#: forum/skins/nuxeo/templates/answer_edit.html:67 -#: forum/skins/nuxeo/templates/question_edit.html:96 -#: forum/skins/nuxeo/templates/revisions.html:54 -msgid "revision" -msgstr "版本" - -#: forum/skins/default/templates/answer_edit.html:72 -#: forum/skins/default/templates/question_edit.html:102 -#: forum/skins/nuxeo/templates/answer_edit.html:70 -#: forum/skins/nuxeo/templates/question_edit.html:100 -msgid "select revision" -msgstr "选择版本" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:233 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:234 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "Toggle the real time Markdown editor preview" -msgstr "打开或者关é—Markdown编辑器的实时预览" - -#: forum/skins/default/templates/answer_edit.html:79 -#: forum/skins/default/templates/ask.html:131 -#: forum/skins/default/templates/question.html:234 -#: forum/skins/default/templates/question_edit.html:119 -#: forum/skins/nuxeo/templates/answer_edit.html:77 -#: forum/skins/nuxeo/templates/ask.html:132 -#: forum/skins/nuxeo/templates/question.html:235 -#: forum/skins/nuxeo/templates/question_edit.html:117 -msgid "toggle preview" -msgstr "预览开关" - -# synonym of above in Edit question -#: forum/skins/default/templates/answer_edit.html:103 -#: forum/skins/default/templates/question_edit.html:155 -#: forum/skins/default/templates/question_retag.html:62 -#: forum/skins/nuxeo/templates/answer_edit.html:101 -#: forum/skins/nuxeo/templates/question_edit.html:153 -#: forum/skins/nuxeo/templates/question_retag.html:79 -msgid "Save edit" -msgstr "现在修改" - -#: forum/skins/default/templates/answer_edit.html:104 -#: forum/skins/default/templates/base_content.html:44 -#: forum/skins/default/templates/close.html:30 -#: forum/skins/default/templates/feedback.html:67 -#: forum/skins/default/templates/question_edit.html:156 -#: forum/skins/default/templates/question_retag.html:63 -#: forum/skins/default/templates/reopen.html:30 -#: forum/skins/default/templates/users/edit.html:100 -#: forum/skins/nuxeo/templates/answer_edit.html:102 -#: forum/skins/nuxeo/templates/base_content.html:39 -#: forum/skins/nuxeo/templates/close.html:29 -#: forum/skins/nuxeo/templates/feedback.html:50 -#: forum/skins/nuxeo/templates/question_edit.html:154 -#: forum/skins/nuxeo/templates/question_retag.html:80 -#: forum/skins/nuxeo/templates/reopen.html:30 -#: forum/skins/nuxeo/templates/users/edit.html:99 -msgid "Cancel" -msgstr "å–消" - -#: forum/skins/default/templates/answer_edit_tips.html:4 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:4 -msgid "answer tips" -msgstr "å—欢迎的æé—®" - -#: forum/skins/default/templates/answer_edit_tips.html:7 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:7 -msgid "please make your answer relevant to this community" -msgstr "您的问题与编程相关å—?" - -#: forum/skins/default/templates/answer_edit_tips.html:10 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:10 -msgid "try to give an answer, rather than engage into a discussion" -msgstr "建议您æ的问题是å¯ä»¥è¢«ç”å¤çš„,而ä¸ä»…仅是å¯ä»¥è®¨è®ºã€‚" - -#: forum/skins/default/templates/answer_edit_tips.html:13 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:13 -#, fuzzy -msgid "please try to provide details" -msgstr "请详细æ述您的问题。" - -#: forum/skins/default/templates/answer_edit_tips.html:16 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:16 -msgid "be clear and concise" -msgstr "我们推è您使用ä¸æ–‡æè¿°é—®é¢˜ï¼Œè¿™æ ·å¯ä»¥å¾—到更多的ç”å¤æœºä¼šã€‚" - -#: forum/skins/default/templates/answer_edit_tips.html:20 -#: forum/skins/default/templates/question_edit_tips.html:9 -#: forum/skins/nuxeo/templates/answer_edit_tips.html:20 -#: forum/skins/nuxeo/templates/question_edit_tips.html:8 -msgid "see frequently asked questions" -msgstr "查看常è§é—®é¢˜" - -#: forum/skins/default/templates/ask.html:4 -#: forum/skins/default/templates/ask.html:93 -#: forum/skins/nuxeo/templates/ask.html:4 -#: forum/skins/nuxeo/templates/ask.html:112 -msgid "Ask a question" -msgstr "我è¦æé—®" - -#: forum/skins/default/templates/ask.html:101 -#: forum/skins/nuxeo/templates/ask.html:165 -msgid "You are welcome to start submitting your question anonymously." -msgstr "" - -#: forum/skins/default/templates/ask.html:102 -#: forum/skins/nuxeo/templates/ask.html:166 -msgid "" -"\n" -" After submiting your question, you will be redirected to " -"the login/signup page.\n" -" Your question will be saved in the current session and " -"will be published after you login with your existing account,\n" -" or signup for a new account" -msgstr "" - -#: forum/skins/default/templates/ask.html:106 -#: forum/skins/nuxeo/templates/ask.html:170 -msgid "and validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:111 -#: forum/skins/nuxeo/templates/ask.html:175 -msgid "" -"Remember, your question will not be published until you validate your email." -msgstr "" - -#: forum/skins/default/templates/ask.html:112 -#: forum/skins/default/templates/users/info.html:98 -#: forum/skins/nuxeo/templates/ask.html:176 -#: forum/skins/nuxeo/templates/users/info.html:55 -msgid "Send me a validation link." -msgstr "" - -#: forum/skins/default/templates/ask.html:147 -#: forum/skins/nuxeo/templates/ask.html:148 -msgid "(required)" -msgstr "" - -#: forum/skins/default/templates/ask.html:163 -#: forum/skins/nuxeo/templates/ask.html:182 -msgid "Login/signup to post your question" -msgstr "" - -#: forum/skins/default/templates/ask.html:165 -#: forum/skins/nuxeo/templates/ask.html:184 -msgid "Ask your question" -msgstr "现在æé—®" - -#: forum/skins/default/templates/badge.html:7 -#: forum/skins/default/templates/badge.html:18 -#: forum/skins/nuxeo/templates/badge.html:7 -#: forum/skins/nuxeo/templates/badge.html:18 -msgid "Badge" -msgstr "奖牌" - -#: forum/skins/default/templates/badge.html:27 -#: forum/skins/nuxeo/templates/badge.html:27 -msgid "The users have been awarded with badges:" -msgstr "用户已被授予该奖牌:" - -#: forum/skins/default/templates/badges.html:6 -#: forum/skins/nuxeo/templates/badges.html:6 -#, fuzzy -msgid "Badges summary" -msgstr "奖牌列表" - -#: forum/skins/default/templates/badges.html:9 -#: forum/skins/nuxeo/templates/badges.html:9 -msgid "Badges" -msgstr "枚奖牌" - -#: forum/skins/default/templates/badges.html:13 -#: forum/skins/nuxeo/templates/badges.html:13 -msgid "Community gives you awards for your questions, answers and votes." -msgstr "" -"æ出问题,给予回ç”ï¼ŒæŠ•å‡ºä½ çš„ç¥¨ - CNProg ä¼šé’ˆå¯¹ä½ åœ¨ç¤¾åŒºçš„è¡¨çŽ°ï¼ŒæŽˆäºˆä½ å„类奖" -"牌。" - -#: forum/skins/default/templates/badges.html:14 -#: forum/skins/nuxeo/templates/badges.html:14 -#, fuzzy -msgid "" -"Below is the list of available badges and number of times each type of badge " -"has been awarded.\n" -" " -msgstr "这里列出社区所有的奖牌,以åŠåˆ°ç›®å‰ä¸ºæ¤ï¼Œæ¯ä¸ªå¥–牌被授予的用户人数。" - -#: forum/skins/default/templates/badges.html:39 -#: forum/skins/nuxeo/templates/badges.html:41 -msgid "Community badges" -msgstr "社区奖牌" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold badge: the highest honor and is very rare" -msgstr "金牌:å分罕è§ä¹‹æœ€é«˜è£è€€" - -#: forum/skins/default/templates/badges.html:42 -#: forum/skins/nuxeo/templates/badges.html:44 -msgid "gold" -msgstr "金牌" - -#: forum/skins/default/templates/badges.html:45 -#: forum/skins/nuxeo/templates/badges.html:47 -msgid "gold badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:49 -#: forum/skins/nuxeo/templates/badges.html:51 -msgid "" -"silver badge: occasionally awarded for the very high quality contributions" -msgstr "银牌:å¶å°”é¢å‘ä¹‹ä¼˜è´¨å¥–ç« " - -#: forum/skins/default/templates/badges.html:50 -#: forum/skins/nuxeo/templates/badges.html:52 -msgid "silver" -msgstr "银牌" - -#: forum/skins/default/templates/badges.html:53 -#: forum/skins/nuxeo/templates/badges.html:55 -msgid "silver badge description" -msgstr "" - -#: forum/skins/default/templates/badges.html:56 -#: forum/skins/nuxeo/templates/badges.html:58 -msgid "bronze badge: often given as a special honor" -msgstr "铜牌:时常授予之特殊è£èª‰" - -#: forum/skins/default/templates/badges.html:57 -#: forum/skins/nuxeo/templates/badges.html:59 -msgid "bronze" -msgstr "" - -#: forum/skins/default/templates/badges.html:60 -#: forum/skins/nuxeo/templates/badges.html:62 -#, fuzzy -msgid "bronze badge description" -msgstr "ç”读者问" - -#: forum/skins/default/templates/base_content.html:40 -#: forum/skins/nuxeo/templates/base_content.html:35 -msgid "Are you sure?" -msgstr "" - -#: forum/skins/default/templates/base_content.html:41 -#: forum/skins/nuxeo/templates/base_content.html:36 -msgid "Yes" -msgstr "" - -#: forum/skins/default/templates/base_content.html:42 -#: forum/skins/nuxeo/templates/base_content.html:37 -msgid "No" -msgstr "" - -#: forum/skins/default/templates/base_content.html:43 -#: forum/skins/nuxeo/templates/base_content.html:38 -#, fuzzy -msgid "Message:" -msgstr "Copyright(c)2009.CNPROG.COM" - -#: forum/skins/default/templates/base_content.html:45 -#: forum/skins/nuxeo/templates/base_content.html:40 -#, fuzzy -msgid "Close" -msgstr "å…³é—" - -#: forum/skins/default/templates/base_content.html:46 -#: forum/skins/nuxeo/templates/base_content.html:41 -msgid "Ok" -msgstr "" - -#: forum/skins/default/templates/base_content.html:48 -#: forum/skins/nuxeo/templates/base_content.html:43 -#: forum/templatetags/node_tags.py:189 -#, fuzzy -msgid "word" -msgstr "密ç " - -#: forum/skins/default/templates/base_content.html:49 -#: forum/skins/nuxeo/templates/base_content.html:44 -#, fuzzy -msgid "words" -msgstr "密ç " - -#: forum/skins/default/templates/base_content.html:50 -#: forum/skins/nuxeo/templates/base_content.html:45 -#: forum/templatetags/node_tags.py:188 -#, fuzzy -msgid "character" -msgstr "" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" -"#-#-#-#-# django.pot (PACKAGE VERSION) #-#-#-#-#\n" - -#: forum/skins/default/templates/base_content.html:51 -#: forum/skins/nuxeo/templates/base_content.html:46 -msgid "characters" -msgstr "" - -# close.html -#: forum/skins/default/templates/close.html:6 -#: forum/skins/default/templates/close.html:16 -#: forum/skins/nuxeo/templates/close.html:6 -#: forum/skins/nuxeo/templates/close.html:16 -msgid "Close question" -msgstr "å…³é—问题" - -#: forum/skins/default/templates/close.html:19 -#: forum/skins/nuxeo/templates/close.html:19 -msgid "Close the question" -msgstr "ç”±äºŽä»¥ä¸‹åŽŸå› ï¼Œä½ è¦å…³é—这个问题" - -#: forum/skins/default/templates/close.html:26 -#: forum/skins/nuxeo/templates/close.html:25 -msgid "Reasons" -msgstr "åŽŸå› " - -#: forum/skins/default/templates/close.html:29 -#: forum/skins/nuxeo/templates/close.html:28 -msgid "OK to close" -msgstr "确定关é—" - -#: forum/skins/default/templates/email_base.html:32 -#: forum/skins/nuxeo/templates/email_base.html:32 -#, fuzzy -msgid "home" -msgstr "首页" - -#: forum/skins/default/templates/feedback.html:6 -#: forum/skins/nuxeo/templates/feedback.html:6 -#, fuzzy -msgid "Feedback" -msgstr "问题å馈" - -#: forum/skins/default/templates/feedback.html:11 -#: forum/skins/nuxeo/templates/feedback.html:11 -msgid "Give us your feedback!" -msgstr "" - -#: forum/skins/default/templates/feedback.html:18 -#: forum/skins/nuxeo/templates/feedback.html:17 -#, 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" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:25 -#: forum/skins/nuxeo/templates/feedback.html:24 -msgid "" -"\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" -" Please type and send us your message below.\n" -" " -msgstr "" - -#: forum/skins/default/templates/feedback.html:42 -#: forum/skins/nuxeo/templates/feedback.html:41 -#, fuzzy -msgid "(this field is required)" -msgstr " æ ‡ç¾ä¸èƒ½ä¸ºç©ºã€‚" - -#: forum/skins/default/templates/feedback.html:53 -msgid "(wrong captcha)" -msgstr "" - -#: forum/skins/default/templates/feedback.html:66 -#: forum/skins/nuxeo/templates/feedback.html:49 -#, fuzzy -msgid "Send Feedback" -msgstr "问题å馈" - -#: forum/skins/default/templates/header.html:8 -msgid "back to home page" -msgstr "回到首页" - -#: forum/skins/default/templates/header.html:20 -#: forum/skins/nuxeo/templates/header.html:38 -msgid "ask a question" -msgstr "我è¦æé—®" - -#: forum/skins/default/templates/header.html:31 -#: forum/skins/default/templates/opensearch.html:7 -#: forum/skins/default/templates/search.html:16 -#: forum/skins/nuxeo/templates/header.html:48 -#: forum/skins/nuxeo/templates/opensearch.html:7 -#: forum/skins/nuxeo/templates/search.html:15 -msgid "search" -msgstr "æœç´¢" - -#: forum/skins/default/templates/header.html:35 -#: forum/skins/default/templates/search.html:20 -#: forum/skins/nuxeo/templates/header.html:52 -#: forum/skins/nuxeo/templates/search.html:19 forum/views/readers.py:93 -#: forum/views/readers.py:95 forum/views/readers.py:168 -#: forum/views/users.py:343 -msgid "questions" -msgstr "问题" - -#: forum/skins/default/templates/header.html:37 -#: forum/skins/default/templates/search.html:22 -#: forum/skins/nuxeo/templates/header.html:54 -#: forum/skins/nuxeo/templates/search.html:21 forum/views/users.py:58 -msgid "users" -msgstr "用户" - -#: forum/skins/default/templates/index.html:11 -#: forum/skins/nuxeo/templates/index.html:11 -#, fuzzy -msgid "welcome to " -msgstr "CNProg欢迎您!" - -#: forum/skins/default/templates/logout.html:6 -#: forum/skins/default/templates/logout.html:16 -#: forum/skins/nuxeo/templates/logout.html:6 -#: forum/skins/nuxeo/templates/logout.html:16 -msgid "Logout" -msgstr "退出登录" - -#: forum/skins/default/templates/logout.html:19 -#: forum/skins/nuxeo/templates/logout.html:19 -msgid "" -"As a registered user you can login with your OpenID, log out of the site or " -"permanently remove your account." -msgstr "" -"您是系统的<strong class=\"darkred\">注册</strong>用户,å¯ä»¥éšæ—¶ä½¿ç”¨OpenIDå¸å·" -"登录系统或者注销登录。" - -#: forum/skins/default/templates/logout.html:20 -#: forum/skins/nuxeo/templates/logout.html:20 -msgid "Logout now" -msgstr "点击退出登录" - -#: forum/skins/default/templates/markdown_help.html:6 -#: forum/skins/nuxeo/templates/markdown_help.html:6 -#, fuzzy -msgid "Markdown Help" -msgstr "Markdown快速å‚考" - -#: forum/skins/default/templates/markdown_help.html:15 -#: forum/skins/nuxeo/templates/markdown_help.html:15 -#, fuzzy -msgid "Markdown Syntax" -msgstr "Markdown快速å‚考" - -#: forum/skins/default/templates/markdown_help.html:16 -#: forum/skins/nuxeo/templates/markdown_help.html:16 -msgid "" -"This document describes some of the more important parts of Markdown (for " -"writers, that is). There's a lot more to the syntax than is mentioned here, " -"though. To get the full syntax documentation, go to John Gruber's <a href=" -"\"http://daringfireball.net/projects/markdown/syntax\" rel=\"nofollow" -"\">Markdown Syntax</a> page" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:20 -#: forum/skins/nuxeo/templates/markdown_help.html:20 -#, fuzzy -msgid "Headers" -msgstr "枚奖牌" - -#: forum/skins/default/templates/markdown_help.html:22 -#: forum/skins/nuxeo/templates/markdown_help.html:22 -msgid "" -"For top-level headers underline the text with equal signs. For second-level " -"headers use dashes to underline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:26 -#: forum/skins/default/templates/markdown_help.html:30 -#: forum/skins/default/templates/markdown_help.html:49 -#: forum/skins/default/templates/markdown_help.html:52 -#: forum/skins/nuxeo/templates/markdown_help.html:26 -#: forum/skins/nuxeo/templates/markdown_help.html:30 -#: forum/skins/nuxeo/templates/markdown_help.html:49 -#: forum/skins/nuxeo/templates/markdown_help.html:52 -msgid "This is an H1" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:36 -#: forum/skins/default/templates/markdown_help.html:40 -#: forum/skins/default/templates/markdown_help.html:58 -#: forum/skins/default/templates/markdown_help.html:61 -#: forum/skins/nuxeo/templates/markdown_help.html:36 -#: forum/skins/nuxeo/templates/markdown_help.html:40 -#: forum/skins/nuxeo/templates/markdown_help.html:58 -#: forum/skins/nuxeo/templates/markdown_help.html:61 -msgid "This is an H2" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:45 -#: forum/skins/nuxeo/templates/markdown_help.html:45 -msgid "" -"If you would rather, you can prefix headers with a hash (#) symbol instead. " -"The number of hash symbols indicates the header level. For example, a " -"single hash indicates a header level of one while two indicates the second " -"header level:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:67 -#: forum/skins/default/templates/markdown_help.html:70 -#: forum/skins/nuxeo/templates/markdown_help.html:67 -#: forum/skins/nuxeo/templates/markdown_help.html:70 -msgid "This is an H3" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:75 -#: forum/skins/nuxeo/templates/markdown_help.html:75 -msgid "" -"Which you choose is a matter of style. Whichever you thinks looks better in " -"the text document. In both cases, the final, fully formatted, document " -"looks the same." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:80 -#: forum/skins/nuxeo/templates/markdown_help.html:80 -msgid "Paragraphs" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:82 -#: forum/skins/nuxeo/templates/markdown_help.html:82 -msgid "Paragraphs are surrounded by blank lines." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:85 -#: forum/skins/nuxeo/templates/markdown_help.html:85 -msgid "This is paragraph one." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:88 -#: forum/skins/nuxeo/templates/markdown_help.html:88 -msgid "This is paragraph two." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:93 -#: forum/skins/nuxeo/templates/markdown_help.html:93 -#, fuzzy -msgid "Links" -msgstr "链接" - -#: forum/skins/default/templates/markdown_help.html:95 -#: forum/skins/nuxeo/templates/markdown_help.html:95 -msgid "" -"\n" -" There are two parts to every link.\n" -" The first is the actual text that the user will see and it " -"is surrounded by brackets.\n" -" The second is address of the page you wish to link to and it " -"is surrounded in parenthesis.\n" -" " -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/default/templates/markdown_help.html:106 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:106 -#, fuzzy -msgid "link text" -msgstr "链接" - -#: forum/skins/default/templates/markdown_help.html:103 -#: forum/skins/nuxeo/templates/markdown_help.html:103 -msgid "http://example.com/" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:112 -#: forum/skins/nuxeo/templates/markdown_help.html:112 -msgid "Formatting" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:114 -#: forum/skins/nuxeo/templates/markdown_help.html:114 -msgid "" -"To indicate bold text surround the text with two star (*) symbols or two " -"underscore (_) symbols:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:118 -#: forum/skins/default/templates/markdown_help.html:121 -#: forum/skins/nuxeo/templates/markdown_help.html:118 -#: forum/skins/nuxeo/templates/markdown_help.html:121 -msgid "This is bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:126 -#: forum/skins/default/templates/markdown_help.html:129 -#: forum/skins/nuxeo/templates/markdown_help.html:126 -#: forum/skins/nuxeo/templates/markdown_help.html:129 -msgid "This is also bold" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:134 -#: forum/skins/nuxeo/templates/markdown_help.html:134 -msgid "" -"To indicate italicized text surround the text with a single star (*) symbol " -"or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:138 -#: forum/skins/default/templates/markdown_help.html:141 -#: forum/skins/nuxeo/templates/markdown_help.html:138 -#: forum/skins/nuxeo/templates/markdown_help.html:141 -msgid "This is italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:146 -#: forum/skins/default/templates/markdown_help.html:149 -#: forum/skins/nuxeo/templates/markdown_help.html:146 -#: forum/skins/nuxeo/templates/markdown_help.html:149 -msgid "This is also italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:154 -#: forum/skins/nuxeo/templates/markdown_help.html:154 -msgid "" -"To indicate italicized and bold text surround the text with three star (*) " -"symbol or underscore (_) symbol:" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:158 -#: forum/skins/default/templates/markdown_help.html:161 -#: forum/skins/nuxeo/templates/markdown_help.html:158 -#: forum/skins/nuxeo/templates/markdown_help.html:161 -msgid "This is bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:166 -#: forum/skins/default/templates/markdown_help.html:169 -#: forum/skins/nuxeo/templates/markdown_help.html:166 -#: forum/skins/nuxeo/templates/markdown_help.html:169 -msgid "This is also bold and italics" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:176 -#: forum/skins/nuxeo/templates/markdown_help.html:176 -msgid "Blockquotes" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:178 -#: forum/skins/nuxeo/templates/markdown_help.html:178 -msgid "" -"To create an indented area use the right angle bracket (>) character " -"before each line to be included in the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:182 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/default/templates/markdown_help.html:195 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:182 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:195 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This is part of a blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:183 -#: forum/skins/default/templates/markdown_help.html:186 -#: forum/skins/nuxeo/templates/markdown_help.html:183 -#: forum/skins/nuxeo/templates/markdown_help.html:186 -msgid "This is part of the same blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:191 -#: forum/skins/nuxeo/templates/markdown_help.html:191 -msgid "" -"Rather than putting it in front of each line to include in the block quote " -"you can put it at the beginning and end the quote with a newline." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:196 -#: forum/skins/default/templates/markdown_help.html:200 -#: forum/skins/nuxeo/templates/markdown_help.html:196 -#: forum/skins/nuxeo/templates/markdown_help.html:200 -msgid "This continues the blockquote even though there's no bracket." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:197 -#: forum/skins/default/templates/markdown_help.html:201 -#: forum/skins/nuxeo/templates/markdown_help.html:197 -#: forum/skins/nuxeo/templates/markdown_help.html:201 -msgid "The blank line ends the blockquote." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:207 -#: forum/skins/nuxeo/templates/markdown_help.html:207 -msgid "Lists" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:209 -#: forum/skins/nuxeo/templates/markdown_help.html:209 -msgid "" -"To create a numbered list in Markdown, prefix each item in the list with a " -"number followed by a period and space. The number you use actually doesn't " -"matter." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:213 -#: forum/skins/default/templates/markdown_help.html:214 -#: forum/skins/default/templates/markdown_help.html:215 -#: forum/skins/default/templates/markdown_help.html:219 -#: forum/skins/default/templates/markdown_help.html:220 -#: forum/skins/default/templates/markdown_help.html:221 -#: forum/skins/nuxeo/templates/markdown_help.html:213 -#: forum/skins/nuxeo/templates/markdown_help.html:214 -#: forum/skins/nuxeo/templates/markdown_help.html:215 -#: forum/skins/nuxeo/templates/markdown_help.html:219 -#: forum/skins/nuxeo/templates/markdown_help.html:220 -#: forum/skins/nuxeo/templates/markdown_help.html:221 -msgid "Item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:227 -#: forum/skins/nuxeo/templates/markdown_help.html:227 -msgid "" -"To create a bulleted list, prefix each item in the list with a star (*) " -"character." -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:231 -#: forum/skins/default/templates/markdown_help.html:237 -#: forum/skins/nuxeo/templates/markdown_help.html:231 -#: forum/skins/nuxeo/templates/markdown_help.html:237 -msgid "A list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:232 -#: forum/skins/default/templates/markdown_help.html:238 -#: forum/skins/nuxeo/templates/markdown_help.html:232 -#: forum/skins/nuxeo/templates/markdown_help.html:238 -msgid "Another list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:233 -#: forum/skins/default/templates/markdown_help.html:239 -#: forum/skins/nuxeo/templates/markdown_help.html:233 -#: forum/skins/nuxeo/templates/markdown_help.html:239 -msgid "A third list item" -msgstr "" - -#: forum/skins/default/templates/markdown_help.html:246 -#: forum/skins/nuxeo/templates/markdown_help.html:246 -#, fuzzy -msgid "A Lot More" -msgstr "查看更多" - -#: forum/skins/default/templates/markdown_help.html:247 -#: forum/skins/nuxeo/templates/markdown_help.html:247 -msgid "" -"There's a lot more to the Markdown syntax than is mentioned here. But for " -"creative writers, this covers a lot of the necessities. To find out more " -"about Markdown than you'd ever want to really know, <a href=\"http://" -"daringfireball.net/projects/markdown/syntax\" target=\"_blank\" rel=" -"\"nofollow\">go to the Markdown page where it all started</a>." -msgstr "" - -#: forum/skins/default/templates/notarobot.html:3 -#: forum/skins/nuxeo/templates/notarobot.html:3 -msgid "Please prove that you are a Human Being" -msgstr "" - -#: forum/skins/default/templates/notarobot.html:12 -#: forum/skins/nuxeo/templates/notarobot.html:11 -msgid "I am a Human Being" -msgstr "" - -#: forum/skins/default/templates/opensearch.html:4 -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/default/templates/osqaadmin/nodeman.html:276 -#: forum/skins/nuxeo/templates/opensearch.html:4 -#: forum/skins/nuxeo/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:275 -#, fuzzy -msgid "Search" -msgstr "æœç´¢" - -#: forum/skins/default/templates/opensearch.html:5 -#: forum/skins/nuxeo/templates/opensearch.html:5 -msgid "using your browser." -msgstr "" - -#: forum/skins/default/templates/pagesize.html:6 -#: forum/skins/default/templates/paginator/page_sizes.html:4 -#: forum/skins/nuxeo/templates/pagesize.html:6 -#: forum/skins/nuxeo/templates/paginator/page_sizes.html:4 -msgid "posts per page" -msgstr "æ¯é¡µæ˜¾ç¤ºï¼š" - -#: forum/skins/default/templates/paginator.html:6 -#: forum/skins/default/templates/paginator.html:7 -#: forum/skins/default/templates/paginator/page_numbers.html:6 -#: forum/skins/nuxeo/templates/paginator.html:6 -#: forum/skins/nuxeo/templates/paginator.html:7 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:6 -msgid "previous" -msgstr "上一页" - -#: forum/skins/default/templates/paginator.html:19 -#: forum/skins/nuxeo/templates/paginator.html:19 -msgid "current page" -msgstr "当å‰é¡µ" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "page number " -msgstr "第" - -#: forum/skins/default/templates/paginator.html:22 -#: forum/skins/default/templates/paginator.html:29 -#: forum/skins/nuxeo/templates/paginator.html:22 -#: forum/skins/nuxeo/templates/paginator.html:29 -msgid "number - make blank in english" -msgstr "页" - -#: forum/skins/default/templates/paginator.html:33 -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#: forum/skins/nuxeo/templates/paginator.html:33 -#: forum/skins/nuxeo/templates/paginator/page_numbers.html:22 -msgid "next page" -msgstr "下一页" - -#: forum/skins/default/templates/privacy.html:6 -#: forum/skins/default/templates/privacy.html:11 -#: forum/skins/nuxeo/templates/privacy.html:6 -#: forum/skins/nuxeo/templates/privacy.html:11 -msgid "Privacy policy" -msgstr "éšç§æ”¿ç–" - -#: forum/skins/default/templates/privacy.html:15 -#: forum/skins/nuxeo/templates/privacy.html:15 -msgid "general message about privacy" -msgstr "" -"CNProg承认用户éšç§çš„é‡è¦æ€§ã€‚本文件概述在您æµè§ˆCNProg过程ä¸æ‰€æŽ¥æ”¶å’Œæ”¶é›†çš„个人" -"ä¿¡æ¯çš„ç§ç±»ï¼Œä»¥åŠCNProg所采å–çš„ä¿æŠ¤ä¿¡æ¯çš„一些措施。CNProg希望这将有助于您在知" -"情的情况下,就和我们 共享个人信æ¯çš„问题作出决定。" - -#: forum/skins/default/templates/privacy.html:18 -#: forum/skins/nuxeo/templates/privacy.html:18 -msgid "Site Visitors" -msgstr "网站访问者" - -#: forum/skins/default/templates/privacy.html:20 -#: forum/skins/nuxeo/templates/privacy.html:20 -msgid "what technical information is collected about visitors" -msgstr "" -"当您访问本网站或使用我们的æŸäº›åœ¨çº¿æœåŠ¡æ—¶ï¼ŒæœåŠ¡å™¨ä¼šè‡ªåŠ¨è®°å½•ä¿¡æ¯ï¼ŒåŒ…括但ä¸é™äºŽ" -"URLã€IP地å€ã€æµè§ˆå™¨çš„类型ã€å±å¹•åˆ†è¾¨çŽ‡ã€ç³»ç»Ÿç±»åž‹å’Œä½¿ç”¨çš„è¯è¨€ä»¥åŠè®¿é—®æ—¥æœŸå’Œæ—¶" -"间。我们的目的是为了å‘您>æ供更好的用户æœåŠ¡ï¼ŒåŒ…括å¯èƒ½ä¸ºæ‚¨æ供定制的在线æœåŠ¡ã€‚" - -#: forum/skins/default/templates/privacy.html:23 -#: forum/skins/nuxeo/templates/privacy.html:23 -msgid "Personal Information" -msgstr "个人身份信æ¯" - -#: forum/skins/default/templates/privacy.html:25 -#: forum/skins/nuxeo/templates/privacy.html:25 -msgid "details on personal information policies" -msgstr "" -"在登录使用CNProgçš„æ问和回ç”功能时,我们è¦æ±‚使用者æ供用户åã€å¯†ç ã€ç”µå邮件" -"ç‰ä¿¡æ¯ã€‚CNProg收集这类关于个人身份的信æ¯åªæ˜¯ä¸ºäº†ç™»å½•ç³»ç»ŸèŽ·å¾—使用功能的目的。" -"我们ä¸ä¼šå‘任何其他社区用 户ã€ä¸ªäººæˆ–第三方é€éœ²æ‚¨çš„密ç 或者电å邮件信æ¯ã€‚用户å¯" -"以选择性地填写用户资料ã€ä¸ªäººç½‘ç«™ã€å¹´é¾„ã€åŸŽå¸‚ç‰ä¿¡æ¯ï¼Œæˆ‘们收集这些内容为了使用" -"户能够更容易和更满æ„地使用CNProgæ供的网页和æœåŠ¡ã€‚" - -#: forum/skins/default/templates/privacy.html:28 -#: forum/skins/nuxeo/templates/privacy.html:28 -msgid "Other Services" -msgstr "其他æœåŠ¡" - -#: forum/skins/default/templates/privacy.html:30 -#: forum/skins/nuxeo/templates/privacy.html:30 -msgid "details on sharing data with third parties" -msgstr "" -"CNProgå¯èƒ½ä¼šæ”¶é›†å’Œç»Ÿè®¡ç”¨æˆ·è®¿é—®æœ¬ç«™çš„概况数æ®ã€‚例如,CNProgå¯èƒ½ä¼šæ£€æµ‹ç½‘站最æµ" -"行的部分功能。CNProgå¯èƒ½ä¼šå…¬å¼€æ˜¾ç¤ºæˆ–者æ供给第三方使用该数æ®ã€‚但是,CNProgä¸" -"会公开您的身份信æ¯ã€‚" - -#: forum/skins/default/templates/privacy.html:35 -#: forum/skins/nuxeo/templates/privacy.html:35 -msgid "cookie policy details" -msgstr "" -"访问CNProg时,我们会å‘您的计算机å‘é€ä¸€ä¸ªæˆ–多个专门用于识别您的æµè§ˆå™¨çš„Cookie" -"(包å«ä¸€ä¸ªå—符串的å°æ–‡ä»¶ï¼‰ã€‚ 使用 Cookie 的目的是通过储å˜ç”¨æˆ·å好ã€è·Ÿè¸ªç”¨æˆ·å€¾" -"å‘(例如æœç´¢æ–¹æ³•ï¼‰æ¥æ高我们的æœåŠ¡è´¨é‡ã€‚大多数æµè§ˆå™¨çš„åˆå§‹è®¾ç½®å‡ä¸ºæŽ¥å— " -"Cookie,但也å¯ä»¥å°†å…¶é‡ç½®ä¸ºæ‹’ç»æ‰€æœ‰ Cookie 或在收到 Cookie æ—¶æ示。ä¸è¿‡ï¼Œå¦‚æžœ" -"ç¦ç”¨ Cookie,æŸäº›åŠŸèƒ½å’ŒæœåŠ¡å¯èƒ½æ— 法æ£å¸¸è¿è¡Œã€‚" - -#: forum/skins/default/templates/privacy.html:37 -#: forum/skins/nuxeo/templates/privacy.html:37 -msgid "Policy Changes" -msgstr "政ç–更改" - -#: forum/skins/default/templates/privacy.html:38 -#: forum/skins/nuxeo/templates/privacy.html:38 -#, fuzzy -msgid "how privacy policies can be changed" -msgstr "" -"我们å¯èƒ½åœ¨äº‹å…ˆé€šçŸ¥æˆ–ä¸é€šçŸ¥çš„情况下éšæ—¶æ›´æ”¹æ¤'éšç§æ”¿ç–',我们建议用户时常查看" -"CNProgéšç§æ”¿ç–的改动,在任何改动生效åŽæ‚¨çš„继ç»è®¿é—®å’Œä½¿ç”¨æœ¬ç«™ï¼Œæˆ‘们å‡è®¾æ‚¨å·²åŒ" -"æ„了CNProg以上的所有æ¡æ¬¾ã€‚" - -# this is how above two are supposed to be -#: forum/skins/default/templates/question.html:119 -#: forum/skins/default/templates/sidebar/recent_tags.html:11 -#: forum/skins/nuxeo/templates/question.html:117 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:8 -#, fuzzy, python-format -msgid "see questions tagged '%(tagname)s'" -msgstr "查看有关'%(tagname)s'的问题" - -#: forum/skins/default/templates/question.html:138 -#: forum/skins/nuxeo/templates/question.html:135 -#, fuzzy, python-format -msgid "" -"The question has been closed for the following reason \"%(close_reason)s\" by" -msgstr "问题以“%sâ€çš„åŽŸå› å·²è¢«" - -#: forum/skins/default/templates/question.html:149 -#, fuzzy, python-format -msgid "One Answer:" -msgid_plural "%(counter)s Answers:" -msgstr[0] "个回ç”" -msgstr[1] "个回ç”" - -#: forum/skins/default/templates/question.html:199 -#: forum/skins/nuxeo/templates/question.html:200 -msgid "Your answer" -msgstr "您的回ç”" - -#: forum/skins/default/templates/question.html:201 -#: forum/skins/nuxeo/templates/question.html:202 -#, fuzzy -msgid "Be the first one to answer this question!" -msgstr "ä¸æ˜¯ä¸€ä¸ªå¯ä»¥å›žç”的“问题â€" - -#: forum/skins/default/templates/question.html:266 -#: forum/skins/nuxeo/templates/question.html:267 -msgid "Login/Signup to Post Your Answer" -msgstr "" - -#: forum/skins/default/templates/question.html:269 -#: forum/skins/nuxeo/templates/question.html:270 -#, fuzzy -msgid "Answer Your Own Question" -msgstr "回ç”该问题" - -#: forum/skins/default/templates/question.html:271 -#: forum/skins/nuxeo/templates/question.html:272 -msgid "Answer the question" -msgstr "回ç”该问题" - -#: forum/skins/default/templates/question.html:293 -#: forum/skins/nuxeo/templates/question.html:294 -msgid "Question tags" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -# must have extra space after in english -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/default/templates/question_list/item.html:31 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question_list/item.html:31 -msgid "see questions tagged" -msgstr "查看有关" - -# book.html line 123 must be empty in english -#: forum/skins/default/templates/question.html:299 -#: forum/skins/default/templates/question_summary_list_roll.html:54 -#: forum/skins/default/templates/tags.html:45 -#: forum/skins/nuxeo/templates/question.html:300 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:54 -#: forum/skins/nuxeo/templates/tags.html:45 -msgid "using tags" -msgstr "的问题" - -#: forum/skins/default/templates/question.html:304 -#: forum/skins/nuxeo/templates/question.html:305 -#, fuzzy -msgid "question asked" -msgstr "æ问时间" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "question was seen" -msgstr "ç›®å‰æµè§ˆæ•°é‡" - -#: forum/skins/default/templates/question.html:307 -#: forum/skins/nuxeo/templates/question.html:308 -msgid "times" -msgstr "次" - -#: forum/skins/default/templates/question.html:310 -#: forum/skins/nuxeo/templates/question.html:311 -msgid "last updated" -msgstr "最åŽæ›´æ–°æ—¶é—´" - -#: forum/skins/default/templates/question.html:316 -#: forum/skins/nuxeo/templates/question.html:317 -#, fuzzy -msgid "Related questions" -msgstr "相似的问题" - -# page title -#: forum/skins/default/templates/question_edit.html:5 -#: forum/skins/default/templates/question_edit.html:92 -#: forum/skins/nuxeo/templates/question_edit.html:5 -#: forum/skins/nuxeo/templates/question_edit.html:91 -msgid "Edit question" -msgstr "修改问题" - -#: forum/skins/default/templates/question_edit_tips.html:5 -msgid "Title Tips" -msgstr "" - -#: forum/skins/default/templates/question_edit_tips.html:17 -#: forum/skins/nuxeo/templates/question_edit_tips.html:16 -msgid "What Are Tags" -msgstr "" - -#: forum/skins/default/templates/question_retag.html:5 -#: forum/skins/default/templates/question_retag.html:40 -#: forum/skins/nuxeo/templates/question_retag.html:5 -#: forum/skins/nuxeo/templates/question_retag.html:58 -msgid "Change tags" -msgstr "ä¿®æ”¹é—®é¢˜æ ‡ç¾" - -#: forum/skins/default/templates/question_retag.html:71 -#: forum/skins/nuxeo/templates/question_retag.html:88 -msgid "Why use and modify tags?" -msgstr "为什么我åªèƒ½ä¿®æ”¹é—®é¢˜æ ‡ç¾ï¼Ÿ" - -#: forum/skins/default/templates/question_retag.html:74 -#: forum/skins/nuxeo/templates/question_retag.html:91 -#, fuzzy -msgid "tags help us keep Questions organized" -msgstr "CNProgç”¨æ ‡ç¾æ¥åˆ†ç±»ç³»ç»Ÿçš„ä¿¡æ¯" - -#: forum/skins/default/templates/question_retag.html:77 -#: forum/skins/nuxeo/templates/question_retag.html:94 -msgid "tag editors receive special awards from the community" -msgstr "ä¿®æ”¹æ ‡ç¾çš„用户将授予特殊的社区奖牌" - -#: forum/skins/default/templates/question_summary_list_roll.html:13 -#: forum/skins/default/templates/question_list/count.html:15 -#: forum/skins/default/templates/question_list/item.html:15 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:13 -#: forum/skins/nuxeo/templates/question_list/count.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:15 -#: forum/views/users.py:54 -msgid "answers" -msgstr "回ç”" - -#: forum/skins/default/templates/question_summary_list_roll.html:14 -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:14 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:96 forum/views/readers.py:57 -#: forum/views/readers.py:58 forum/views/readers.py:311 -#: forum/views/users.py:53 forum/views/users.py:54 forum/views/users.py:382 -msgid "votes" -msgstr "票" - -#: forum/skins/default/templates/question_summary_list_roll.html:15 -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_summary_list_roll.html:15 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -msgid "views" -msgstr "æµè§ˆ" - -#: forum/skins/default/templates/questions.html:12 -#, python-format -msgid "Questions and answers about %(tag)s on %(app_title)s" -msgstr "" - -#: forum/skins/default/templates/questions.html:24 -#: forum/skins/default/templates/users/stats.html:19 -#: forum/skins/nuxeo/templates/questions.html:18 -#: forum/skins/nuxeo/templates/users/stats.html:19 -#, fuzzy -msgid "subscribe to question RSS feed" -msgstr "订阅最>新问题" - -#: forum/skins/default/templates/reopen.html:6 -#: forum/skins/default/templates/reopen.html:16 -#: forum/skins/nuxeo/templates/reopen.html:6 -#: forum/skins/nuxeo/templates/reopen.html:16 -msgid "Reopen question" -msgstr "é‡è®¾é—®é¢˜" - -#: forum/skins/default/templates/reopen.html:19 -#: forum/skins/nuxeo/templates/reopen.html:19 -msgid "Open the previously closed question" -msgstr "ä½ å°†æ‰“å¼€è¿™ä¸ªå·²ç»è¢«å…³é—的问题" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -#, fuzzy -msgid "The question was closed for the following reason " -msgstr "问题曾以" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "reason - leave blank in english" -msgstr "çš„åŽŸå› è¢«" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -#, fuzzy -msgid "on " -msgstr "于" - -#: forum/skins/default/templates/reopen.html:22 -#: forum/skins/nuxeo/templates/reopen.html:22 -msgid "date closed" -msgstr "å…³é—" - -#: forum/skins/default/templates/reopen.html:29 -#: forum/skins/nuxeo/templates/reopen.html:29 -#, fuzzy -msgid "Reopen this question" -msgstr "确定打开这个问题" - -# revisions_answer.html -#: forum/skins/default/templates/revisions.html:7 -#: forum/skins/default/templates/revisions.html:38 -#: forum/skins/nuxeo/templates/revisions.html:7 -#: forum/skins/nuxeo/templates/revisions.html:38 -msgid "Revision history" -msgstr "版本历å²" - -#: forum/skins/default/templates/revisions.html:52 -#: forum/skins/nuxeo/templates/revisions.html:52 -msgid "click to hide/show revision" -msgstr "" - -#: forum/skins/default/templates/search.html:7 -#: forum/skins/nuxeo/templates/search.html:7 -#, python-format -msgid "" -"\n" -"\t Search in %(app_name)s\n" -"\t" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:3 -#: forum/skins/nuxeo/templates/subscription_status.html:3 -#, fuzzy -msgid "Follow this question" -msgstr "确定打开这个问题" - -#: forum/skins/default/templates/subscription_status.html:4 -#: forum/skins/nuxeo/templates/subscription_status.html:4 -msgid "By Email" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:9 -#: forum/skins/nuxeo/templates/subscription_status.html:9 -msgid "You were automatically subscribed to this question." -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:11 -#: forum/skins/nuxeo/templates/subscription_status.html:11 -#, fuzzy -msgid "You are subscribed to this question." -msgstr "订阅最>新问题" - -#: forum/skins/default/templates/subscription_status.html:14 -#: forum/skins/nuxeo/templates/subscription_status.html:14 -#, fuzzy -msgid "You are not subscribed to this question." -msgstr "订阅最>新问题" - -#: forum/skins/default/templates/subscription_status.html:19 -#: forum/views/commands.py:520 -msgid "unsubscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:21 -#: forum/views/commands.py:520 -msgid "subscribe me" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:25 -#, python-format -msgid "" -"\n" -" (you can adjust your notification settings on your <a href=" -"\"%(subscriptions_url)s\">profile</a>)\n" -" " -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:30 -msgid "Once you sign in you will be able to subscribe for any updates here" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:32 -#: forum/skins/nuxeo/templates/subscription_status.html:33 -msgid "By RSS" -msgstr "" - -#: forum/skins/default/templates/subscription_status.html:35 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -#, fuzzy -msgid "subscribe to answers" -msgstr "问题" - -#: forum/skins/default/templates/subscription_status.html:36 -#: forum/skins/nuxeo/templates/subscription_status.html:35 -msgid "Answers" -msgstr "个回ç”" - -#: forum/skins/default/templates/subscription_status.html:40 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "subscribe to comments and answers" -msgstr "修改回ç”" - -# todo - check if it's indeed plural -#: forum/skins/default/templates/subscription_status.html:41 -#: forum/skins/nuxeo/templates/subscription_status.html:38 -#, fuzzy -msgid "Answers and Comments" -msgstr "æ·»åŠ è¯„è®º" - -#: forum/skins/default/templates/tags.html:6 -#: forum/skins/default/templates/tags.html:29 -#: forum/skins/nuxeo/templates/tags.html:6 -#: forum/skins/nuxeo/templates/tags.html:29 -msgid "Tag list" -msgstr "æ ‡ç¾åˆ—表" - -#: forum/skins/default/templates/tags.html:35 -#: forum/skins/nuxeo/templates/tags.html:35 -msgid "All tags matching query" -msgstr "匹é…查询" - -#: forum/skins/default/templates/tags.html:38 -#: forum/skins/nuxeo/templates/tags.html:38 -#, fuzzy -msgid "Nothing found" -msgstr "没有找到相关数æ®ã€‚" - -#: forum/skins/default/templates/auth/auth_settings.html:5 -#: forum/skins/default/templates/auth/auth_settings.html:7 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:5 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:7 -msgid "Authentication settings" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:9 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:9 -msgid "" -"These are the external authentication providers currently associated with " -"your account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:17 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:17 -msgid "" -"You currently have no external authentication provider associated with your " -"account." -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:20 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:20 -msgid "Add new provider" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:24 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:24 -msgid "This is where you can change your password. Make sure you remember it!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:26 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:26 -msgid "" -"You can set up a password for your account, so you can login using standard " -"username and password!" -msgstr "" - -#: forum/skins/default/templates/auth/auth_settings.html:34 -#: forum/skins/nuxeo/templates/auth/auth_settings.html:33 -#, fuzzy -msgid "Create password" -msgstr "确认密ç " - -#: forum/skins/default/templates/auth/complete.html:5 -#: forum/skins/nuxeo/templates/auth/complete.html:5 -msgid "Connect your OpenID with this site" -msgstr "绑定OpenID" - -#: forum/skins/default/templates/auth/complete.html:8 -#: forum/skins/nuxeo/templates/auth/complete.html:8 -msgid "Connect your OpenID with your account on this site" -msgstr "绑定OpenIDå¸å·" - -#: forum/skins/default/templates/auth/complete.html:15 -#: forum/skins/nuxeo/templates/auth/complete.html:15 -msgid "You are here for the first time with " -msgstr "" - -#: forum/skins/default/templates/auth/complete.html:19 -#: forum/skins/nuxeo/templates/auth/complete.html:19 -msgid "" -"Please choose your screen name and confirm your email address. A valid email " -"address is necessary to receive notifications about activity in the areas of " -"this community you're most interested in, and will help you become an " -"involved participant in this community." -msgstr "" - -# todo: review this message may be confusing user -#: forum/skins/default/templates/auth/complete.html:22 -#: forum/skins/nuxeo/templates/auth/complete.html:22 -msgid "This account already exists, please use another." -msgstr "输入您的新å¸å·æˆ–者指定已ç»å˜åœ¨çš„å¸å·ã€‚" - -#: forum/skins/default/templates/auth/complete.html:78 -#: forum/skins/nuxeo/templates/auth/complete.html:77 -msgid "create account" -msgstr "创建å¸å·" - -#: forum/skins/default/templates/auth/mail_already_validated.html:5 -#: forum/skins/default/templates/auth/mail_already_validated.html:12 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:5 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:12 -#, fuzzy -msgid "This e-mail has already been validated" -msgstr "该电å邮件已被注册,请选择å¦ä¸€ä¸ªå†è¯•ã€‚" - -#: forum/skins/default/templates/auth/mail_already_validated.html:10 -#: forum/skins/nuxeo/templates/auth/mail_already_validated.html:10 -msgid "Already validated" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:11 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:11 -#, python-format -msgid "%(prefix)s Your email validation link %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:14 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:14 -msgid "Please use the following link to help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:26 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:26 -#, fuzzy -msgid "Validate my email address" -msgstr "您的电å邮件地å€" - -#: forum/skins/default/templates/auth/mail_validation.html:18 -#: forum/skins/default/templates/auth/temp_login_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:28 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:18 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:28 -msgid "" -"If the above link is not clickable, copy and paste this url into your web " -"browser's address bar:" -msgstr "" - -#: forum/skins/default/templates/auth/mail_validation.html:24 -#: forum/skins/default/templates/auth/welcome_email.html:40 -#: forum/skins/nuxeo/templates/auth/mail_validation.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:40 -msgid "" -"Copy and paste this url into your web browser's address bar to help us " -"verify your email address:" -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:6 -#: forum/skins/nuxeo/templates/auth/signin.html:6 -#: forum_modules/localauth/templates/loginform.html:24 -#: forum_modules/openidauth/templates/openidurl.html:15 -msgid "Login" -msgstr "登录" - -#: forum/skins/default/templates/auth/signin.html:24 -#: forum/skins/nuxeo/templates/auth/signin.html:24 -msgid "User login" -msgstr "用户登录" - -#: forum/skins/default/templates/auth/signin.html:37 -#: forum/skins/default/templates/auth/signin.html:95 -#: forum/skins/default/templates/auth/signin.html:102 -#: forum/skins/nuxeo/templates/auth/signin.html:36 -#: forum/skins/nuxeo/templates/auth/signin.html:93 -#: forum/skins/nuxeo/templates/auth/signin.html:99 -msgid "Or..." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:40 -#: forum/skins/nuxeo/templates/auth/signin.html:39 -msgid "" -"\n" -" External login services use <b><a href=\"http://openid.net/" -"\">OpenID</a></b> technology, where your password always stays confidential " -"between\n" -" you and your login provider and you don't have to remember another " -"one.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:48 -#: forum/skins/nuxeo/templates/auth/signin.html:47 -msgid "Validate my email after I login." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -#, fuzzy -msgid "Click" -msgstr "链接" - -#: forum/skins/default/templates/auth/signin.html:106 -#: forum/skins/nuxeo/templates/auth/signin.html:102 -msgid "if you're having trouble signing in." -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:111 -#: forum/skins/nuxeo/templates/auth/signin.html:107 -msgid "Enter your " -msgstr "" - -#: forum/skins/default/templates/auth/signin.html:167 -#: forum/skins/nuxeo/templates/auth/signin.html:163 -msgid "Why use OpenID?" -msgstr "为什么需è¦OpenID登录?" - -#: forum/skins/default/templates/auth/signin.html:170 -#: forum/skins/nuxeo/templates/auth/signin.html:166 -msgid "with openid it is easier" -msgstr "" -"构建在OpenID网络认è¯ä¸Šçš„本系统,ä¸éœ€è¦ä½ 注册新的å¸å·ï¼Œå³å¯ä½¿ç”¨æˆ‘们系统的所有" -"功能" - -#: forum/skins/default/templates/auth/signin.html:173 -#: forum/skins/nuxeo/templates/auth/signin.html:169 -msgid "reuse openid" -msgstr "用åŒä¸€ä¸ªå¸å·å¯ç™»å½•äº’è”网所有激活OpenID的网站" - -#: forum/skins/default/templates/auth/signin.html:176 -#: forum/skins/nuxeo/templates/auth/signin.html:172 -msgid "openid is widely adopted" -msgstr "全世界有1.6亿OpenIDå¸å·ï¼Œå’Œ10,000个支æŒOpenID的站点" - -#: forum/skins/default/templates/auth/signin.html:179 -#: forum/skins/nuxeo/templates/auth/signin.html:175 -msgid "openid is supported open standard" -msgstr "OpenIDæ˜¯æœ‰å¼€æ”¾æ ‡å‡†ï¼Œå¹¶ä¸”æœ‰ç›¸å…³çš„åŸºé‡‘ç»„ç»‡æ供支æŒ" - -#: forum/skins/default/templates/auth/signin.html:184 -#: forum/skins/nuxeo/templates/auth/signin.html:180 -msgid "Find out more" -msgstr "查看更多" - -#: forum/skins/default/templates/auth/signin.html:185 -#: forum/skins/nuxeo/templates/auth/signin.html:181 -msgid "Get OpenID" -msgstr "获å–OpenID" - -#: forum/skins/default/templates/auth/temp_login_email.html:11 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:11 -#, python-format -msgid "%(prefix)s Temporary login link" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:15 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:15 -#, python-format -msgid "" -"The following link grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_email.html:17 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:17 -#, fuzzy -msgid "Go to your account" -msgstr "修改电å邮件" - -#: forum/skins/default/templates/auth/temp_login_email.html:25 -#: forum/skins/nuxeo/templates/auth/temp_login_email.html:25 -#, python-format -msgid "" -"The following url grants you a one time access to your account at " -"%(app_name)s." -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:5 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:5 -msgid "Request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:7 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:7 -msgid "Account: request temporary login key" -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:8 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:8 -msgid "" -"\n" -" If you're experiencing problems accessing your account, or if you forgot " -"your password,\n" -" here you can request a temporary login key. Fill out your account email " -"and we'll send you a temporary access link that\n" -" will enable you to access your account. This token is valid only once " -"and for a limited period of time.\n" -" " -msgstr "" - -#: forum/skins/default/templates/auth/temp_login_request.html:26 -#: forum/skins/nuxeo/templates/auth/temp_login_request.html:25 -#, fuzzy -msgid "Send link" -msgstr "链接" - -# this is how above two are supposed to be -#: forum/skins/default/templates/auth/welcome_email.html:12 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:12 -#, fuzzy, python-format -msgid "%(prefix)s Welcome to %(app_name)s" -msgstr "查看有关'%(tagname)s'的问题" - -#: forum/skins/default/templates/auth/welcome_email.html:16 -#: forum/skins/default/templates/auth/welcome_email.html:34 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:16 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:34 -#, python-format -msgid "" -"Howdy and welcome to %(app_name)s. We know you're busy, so we'll keep this " -"real simple." -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:19 -#: forum/skins/default/templates/auth/welcome_email.html:35 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:19 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:35 -msgid "Here's your login info (store it in a cool dry place):" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:21 -#: forum/skins/default/templates/auth/welcome_email.html:37 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:21 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:37 -#, fuzzy -msgid "Username: " -msgstr "您的大å" - -#: forum/skins/default/templates/auth/welcome_email.html:22 -#: forum/skins/default/templates/auth/welcome_email.html:38 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:22 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:38 -msgid "Password: As IF we would send your password in cleartext!" -msgstr "" - -#: forum/skins/default/templates/auth/welcome_email.html:24 -#: forum/skins/nuxeo/templates/auth/welcome_email.html:24 -msgid "The following link will help us verify your email address:" -msgstr "" - -#: forum/skins/default/templates/feeds/rss_answer_title.html:2 -#: forum/skins/nuxeo/templates/feeds/rss_answer_title.html:2 -#, python-format -msgid "Answer by %(author)s" -msgstr "" - -#: forum/skins/default/templates/node/accept_button.html:6 -#: forum/skins/default/templates/node/accept_button.html:10 -#: forum/skins/default/templates/node/accept_button.html:17 -#: forum/skins/nuxeo/templates/node/accept_button.html:6 -#: forum/skins/nuxeo/templates/node/accept_button.html:10 -#: forum/skins/nuxeo/templates/node/accept_button.html:17 -#, fuzzy, python-format -msgid "%(who)s has selected this answer as the correct answer" -msgstr "这个ç”案已ç»è¢«æé—®ä½œè€…æ ‡è®°ä¸ºæœ€ä½³ç”案" - -#: forum/skins/default/templates/node/accept_button.html:8 -#: forum/skins/default/templates/node/accept_button.html:11 -#: forum/skins/nuxeo/templates/node/accept_button.html:8 -#: forum/skins/nuxeo/templates/node/accept_button.html:11 -#, fuzzy -msgid "mark this answer as the accepted answer" -msgstr "有ç”案已被接å—为æ£ç¡®ç”案" - -#: forum/skins/default/templates/node/award_points.html:4 -#, python-format -msgid "" -"\n" -"If you like this answer you can award %(awarded_user)s with reputation " -"points.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:10 -msgid "" -"\n" -"Use the slider below or the input field to choose the amount of points you " -"would like to give.\n" -msgstr "" - -#: forum/skins/default/templates/node/award_points.html:17 -msgid "Points:" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:14 -#: forum/skins/nuxeo/templates/node/comments.html:56 -msgid "characters needed" -msgstr "" - -#: forum/skins/default/templates/node/comment_skeleton.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:57 -#, fuzzy -msgid "characters left" -msgstr "票" - -#: forum/skins/default/templates/node/comment_skeleton.html:17 -#: forum/skins/nuxeo/templates/node/comments.html:59 -#, fuzzy -msgid " comment" -msgstr "评论" - -#: forum/skins/default/templates/node/comment_skeleton.html:18 -#: forum/skins/nuxeo/templates/node/comments.html:60 -#, fuzzy -msgid " cancel" -msgstr "å–消" - -#: forum/skins/default/templates/node/comment_skeleton.html:24 -#, fuzzy -msgid "Use canned comment" -msgstr "æ·»åŠ è¯„è®º" - -#: forum/skins/default/templates/node/comment_skeleton.html:41 -#: forum/skins/default/templates/node/comments.html:19 -#: forum/skins/nuxeo/templates/node/comments.html:17 -#, fuzzy -msgid "Edit comment" -msgstr "æ·»åŠ è¯„è®º" - -#: forum/skins/default/templates/node/comment_skeleton.html:43 -#: forum/skins/default/templates/node/comments.html:23 -#: forum/skins/nuxeo/templates/node/comments.html:21 -#, fuzzy -msgid "Delete comment" -msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªè¯„è®º" - -#: forum/skins/default/templates/node/comment_skeleton.html:45 -#: forum/skins/default/templates/node/comments.html:27 -#: forum/skins/nuxeo/templates/node/comments.html:25 -#: forum/skins/nuxeo/templates/node/comments.html:72 -#, fuzzy -msgid "Convert comment to answer" -msgstr "修改回ç”" - -#: forum/skins/default/templates/node/comment_skeleton.html:48 -#: forum/skins/nuxeo/templates/node/comments.html:75 -#, fuzzy -msgid "just now" -msgstr "点击退出登录" - -#: forum/skins/default/templates/node/comments.html:15 -#: forum/skins/nuxeo/templates/node/comments.html:13 -#, fuzzy -msgid "I like this comment (click again to cancel)" -msgstr "这篇帖å有价值(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#: forum/skins/default/templates/node/comments.html:29 -#, fuzzy -msgid "Convert comment to question" -msgstr "修改问题" - -#: forum/skins/default/templates/node/comments.html:44 -#: forum/skins/nuxeo/templates/node/comments.html:40 -#, python-format -msgid "showing %(showing)s of %(total)s" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:46 -#, python-format -msgid "show %(more_comments_count)s more comments" -msgstr "" - -#: forum/skins/default/templates/node/comments.html:49 -#: forum/skins/nuxeo/templates/node/comments.html:45 -#, fuzzy -msgid "add new comment" -msgstr "æ·»åŠ è¯„è®º" - -#: forum/skins/default/templates/node/convert_to_comment.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_comment.html:4 -#, fuzzy -msgid "Place the comment under:" -msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªè¯„è®º" - -#: forum/skins/default/templates/node/convert_to_question.html:3 -#: forum/skins/default/templates/node/convert_to_question.html:4 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:3 -#: forum/skins/nuxeo/templates/node/convert_to_question.html:4 -#, fuzzy -msgid "Convert to question" -msgstr "ç”±äºŽä»¥ä¸‹åŽŸå› ï¼Œä½ è¦å…³é—这个问题" - -#: forum/skins/default/templates/node/favorite_mark.html:3 -#: forum/skins/nuxeo/templates/node/favorite_mark.html:3 -#, fuzzy -msgid "mark/unmark this question as favorite (click again to cancel)" -msgstr "我è¦æ”¶è—这个问题(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#: forum/skins/default/templates/node/permanent_link.html:4 -msgid "" -"\n" -"Would you like to copy the permanent link to your clipboard?\n" -msgstr "" - -#: forum/skins/default/templates/node/permanent_link.html:10 -#: forum/skins/nuxeo/templates/node/permanent_link.html:6 -#, fuzzy -msgid "Permanent link" -msgstr "永久链接" - -#: forum/skins/default/templates/node/post_controls.html:14 -#: forum/skins/nuxeo/templates/node/post_controls.html:14 -#, fuzzy -msgid "more" -msgstr "或者" - -#: forum/skins/default/templates/node/report.html:3 -#: forum/skins/nuxeo/templates/node/report.html:3 -msgid "" -"Please select a reason bellow or use the text box to input your own reason." -msgstr "" - -#: forum/skins/default/templates/node/vote_buttons.html:3 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:3 -#, fuzzy -msgid "I like this post (click again to cancel)" -msgstr "这篇帖å有价值(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#: forum/skins/default/templates/node/vote_buttons.html:7 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:7 -msgid "current number of votes" -msgstr "当å‰æ€»ç¥¨æ•°" - -#: forum/skins/default/templates/node/vote_buttons.html:10 -#: forum/skins/nuxeo/templates/node/vote_buttons.html:10 -#, fuzzy -msgid "I dont like this post (click again to cancel)" -msgstr "这篇帖å没有价值(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#: forum/skins/default/templates/node/wiki_symbol.html:5 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:5 -#, python-format -msgid "This %(post_type)s is marked \"community wiki\"." -msgstr "" - -#: forum/skins/default/templates/node/wiki_symbol.html:7 -#: forum/skins/nuxeo/templates/node/wiki_symbol.html:7 -#, python-format -msgid "Feel free to <a href=\"%(edit_url)s\">edit it</a>." -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:15 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:15 -#, fuzzy, python-format -msgid "%(prefix)s An answer to: %(question_title)s has been accepted" -msgstr "回ç”该问题" - -#: forum/skins/default/templates/notifications/answeraccepted.html:19 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:19 -#, python-format -msgid "" -"\n" -" %(accepted_by_link)s has just accepted %(answer_author_link)s's " -"answer on his question\n" -" %(question_link)s.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/answeraccepted.html:27 -#: forum/skins/nuxeo/templates/notifications/answeraccepted.html:27 -#, python-format -msgid "" -"\n" -"%(accepted_by)s has just accepted %(answer_author)s's answer on his " -"question\n" -"\"%(question_title)s\".\n" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:21 -#: forum/skins/default/templates/notifications/base_text.html:4 -#: forum/skins/nuxeo/templates/notifications/base.html:21 -#: forum/skins/nuxeo/templates/notifications/base_text.html:4 -msgid "Hello" -msgstr "" - -#: forum/skins/default/templates/notifications/base.html:24 -#: forum/skins/default/templates/notifications/base_text.html:9 -#: forum/skins/nuxeo/templates/notifications/base.html:24 -#: forum/skins/nuxeo/templates/notifications/base_text.html:9 -#, fuzzy -msgid "Thanks" -msgstr "ä¸ªæ ‡ç¾" - -#: forum/skins/default/templates/notifications/base.html:26 -#: forum/skins/nuxeo/templates/notifications/base.html:26 -msgid "P.S. You can always fine-tune which notifications you receive" -msgstr "" - -#: forum/skins/default/templates/notifications/base_text.html:13 -#: forum/skins/nuxeo/templates/notifications/base_text.html:13 -msgid "P.S. You can always fine-tune which notifications you receive here:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:14 -#: forum/skins/nuxeo/templates/notifications/digest.html:14 -#, python-format -msgid "%(prefix)s Daily digest" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:25 -#: forum/skins/nuxeo/templates/notifications/digest.html:18 -#, python-format -msgid "" -"\n" -" This is a brief of what's going on the %(app_name)s community " -"since our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:33 -#: forum/skins/nuxeo/templates/notifications/digest.html:26 -#, python-format -msgid "" -"\n" -" There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:37 -#: forum/skins/nuxeo/templates/notifications/digest.html:30 -#, python-format -msgid "" -"\n" -" %(new_member_links)s have joined the %(app_name)s community.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:47 -#: forum/skins/nuxeo/templates/notifications/digest.html:46 -#, python-format -msgid "" -"\n" -" %(new_question_count)s %(new_questions_link)s were posted since " -"our last update.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:54 -#: forum/skins/default/templates/notifications/digest.html:121 -#: forum/skins/nuxeo/templates/notifications/digest.html:53 -#, fuzzy -msgid "We think you might like the following questions:" -msgstr "有å¯èƒ½æ˜¯ä»¥ä¸‹åŽŸå› 导致:" - -#: forum/skins/default/templates/notifications/digest.html:67 -#: forum/skins/default/templates/notifications/digest.html:128 -#: forum/skins/nuxeo/templates/notifications/digest.html:66 -msgid "" -"These new questions didn't get many attention from the community, but we " -"think you may be able to help:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:79 -#: forum/skins/nuxeo/templates/notifications/digest.html:78 -#, python-format -msgid "" -"Meanwhile, some of your %(subscriptions_link)s have new updates since you " -"last visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:99 -#, python-format -msgid "" -"\n" -" %(flagged_url)s have been marked as flagged.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:108 -#, python-format -msgid "" -"This is a brief of what's going on the %(app_name)s community since our last " -"update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:112 -#, python-format -msgid "" -"There are %(new_member_count)s new members in the community. " -"%(new_member_links)s were the most active so far." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:114 -#, python-format -msgid "%(new_member_links)s have joined the %(app_name)s community." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:119 -#, python-format -msgid "%(new_question_count)s new questions were posted since our last update." -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:134 -msgid "" -"Meanwhile, some of your subscriptions have new updates since you last " -"visited them:" -msgstr "" - -#: forum/skins/default/templates/notifications/digest.html:143 -#, python-format -msgid "%(flagged_count)s posts have been marked as flagged." -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:12 -#: forum/skins/nuxeo/templates/notifications/feedback.html:12 -#, python-format -msgid "%(prefix)s Feedback message from %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "Sender" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:16 -#: forum/skins/default/templates/notifications/feedback.html:29 -#: forum/skins/nuxeo/templates/notifications/feedback.html:16 -#: forum/skins/nuxeo/templates/notifications/feedback.html:29 -msgid "anonymous" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:17 -#: forum/skins/default/templates/notifications/feedback.html:30 -#: forum/skins/default/templates/users/info.html:92 -#: forum/skins/nuxeo/templates/notifications/feedback.html:17 -#: forum/skins/nuxeo/templates/notifications/feedback.html:30 -msgid "email" -msgstr "" - -#: forum/skins/default/templates/notifications/feedback.html:23 -#: forum/skins/default/templates/notifications/feedback.html:33 -#: forum/skins/nuxeo/templates/notifications/feedback.html:23 -#: forum/skins/nuxeo/templates/notifications/feedback.html:33 -msgid "Message body:" -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:16 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:16 -#, fuzzy, python-format -msgid "%(prefix)s New answer to: %(question_title)s" -msgstr "回ç”该问题" - -#: forum/skins/default/templates/notifications/newanswer.html:20 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:20 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new answer on %(app_name)s to " -"the question\n" -" %(question_link)s:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:30 -#: forum/skins/default/templates/notifications/newanswer.html:40 -#: forum/skins/default/templates/notifications/newcomment.html:32 -#: forum/skins/default/templates/notifications/newcomment.html:43 -#: forum/skins/default/templates/notifications/newquestion.html:33 -#: forum/skins/default/templates/notifications/newquestion.html:43 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:30 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:32 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:43 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:33 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:43 -msgid "Don't forget to come over and cast your vote." -msgstr "" - -#: forum/skins/default/templates/notifications/newanswer.html:34 -#: forum/skins/nuxeo/templates/notifications/newanswer.html:34 -#, python-format -msgid "" -"\n" -"%(answer_author)s has just posted a new answer on %(safe_app_name)s to the " -"question\n" -"\"%(question_title)s\":\n" -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:17 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:17 -#, fuzzy, python-format -msgid "%(prefix)s New comment on: %(question_title)s" -msgstr "评论问题" - -#: forum/skins/default/templates/notifications/newcomment.html:21 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:21 -#, python-format -msgid "%(author_link)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:23 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:23 -#, fuzzy, python-format -msgid "the answer posted by %(post_author)s to " -msgstr "该回ç”总共有%d个投票" - -#: forum/skins/default/templates/notifications/newcomment.html:25 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:25 -#, fuzzy, python-format -msgid "the question %(question_link)s" -msgstr "评论问题" - -#: forum/skins/default/templates/notifications/newcomment.html:36 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:36 -#, python-format -msgid "%(comment_author)s has just posted a comment on " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:38 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:38 -#, python-format -msgid "the answer posted by %(safe_post_author)s to " -msgstr "" - -#: forum/skins/default/templates/notifications/newcomment.html:40 -#: forum/skins/nuxeo/templates/notifications/newcomment.html:40 -#, fuzzy, python-format -msgid "the question \"%(question_title)s\"" -msgstr "评论问题" - -#: forum/skins/default/templates/notifications/newmember.html:15 -#: forum/skins/nuxeo/templates/notifications/newmember.html:15 -#, python-format -msgid "%(prefix)s %(safe_newmember_name)s is a new member on %(safe_app_name)s" -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:19 -#: forum/skins/nuxeo/templates/notifications/newmember.html:19 -#, python-format -msgid "" -"\n" -" %(newmember_link)s has just joined %(app_name)s.\n" -" View <a style=\"%(a_style)s\" href=\"%(app_url)s%(newmember_url)s" -"\">%(newmember_name)s's profile</a>.\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newmember.html:27 -#: forum/skins/nuxeo/templates/notifications/newmember.html:27 -#, python-format -msgid "" -"\n" -"%(safe_newmember_name)s has just joined %(safe_app_name)s. You can visit " -"%(safe_newmember_name)s's profile using the following url:\n" -"%(app_url)s%(newmember_url)s\n" -msgstr "" - -# this is how above two are supposed to be -#: forum/skins/default/templates/notifications/newquestion.html:18 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:18 -#, fuzzy, python-format -msgid "%(prefix)s New question: %(question_title)s on %(safe_app_name)s" -msgstr "查看有关'%(tagname)s'的问题" - -#: forum/skins/default/templates/notifications/newquestion.html:22 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:22 -#, python-format -msgid "" -"\n" -" %(author_link)s has just posted a new question on %(app_name)s, " -"entitled\n" -" %(question_link)s\n" -" and tagged \"<em>%(tag_links)s</em>\". Here's what it says:\n" -" " -msgstr "" - -#: forum/skins/default/templates/notifications/newquestion.html:37 -#: forum/skins/nuxeo/templates/notifications/newquestion.html:37 -#, python-format -msgid "" -"\n" -"%(question_author)s has just posted a new question on %(safe_app_name)s, " -"entitled\n" -"\"%(question_title)s\" and tagged %(question_tags)s:\n" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:5 -#, fuzzy -msgid "Site Administration" -msgstr "网站访问者" - -#: forum/skins/default/templates/osqaadmin/base.html:15 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:22 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:22 -msgid "OSQA administration area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:26 -msgid "Switch to django style interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:32 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:27 -msgid "Administration menu" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:44 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:132 -#: forum/skins/default/templates/osqaadmin/maintenance.html:5 -#: forum/skins/default/templates/osqaadmin/maintenance.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:39 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:6 -msgid "Maintenance mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/base.html:45 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:133 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/base.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:131 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:13 -msgid "Flagged Posts" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/createuser.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:7 -#, fuzzy -msgid "Create User" -msgstr "确认密ç " - -#: forum/skins/default/templates/osqaadmin/createuser.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:10 -#, fuzzy -msgid "Quick creation of a new user" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum/skins/default/templates/osqaadmin/createuser.html:18 -#: forum/skins/default/templates/osqaadmin/edit_page.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/default/templates/osqaadmin/set.html:17 -#: forum/skins/default/templates/users/preferences.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/createuser.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:16 -#: forum/skins/nuxeo/templates/users/preferences.html:25 -msgid "Save" -msgstr "ä¿å˜" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:7 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/default/templates/osqaadmin/index.html:7 -#: forum/skins/default/templates/osqaadmin/statistics.html:25 -#: forum/skins/default/templates/osqaadmin/statistics.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:26 -msgid "Dashboard" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:10 -#: forum/skins/default/templates/osqaadmin/index.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:10 -msgid "Welcome to the OSQA administration area." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:16 -#, fuzzy -msgid "Quick statistics" -msgstr "网站访问者" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:19 -#: forum/skins/default/templates/osqaadmin/dashboard.html:24 -#: forum/skins/default/templates/osqaadmin/index.html:21 -#: forum/skins/default/templates/osqaadmin/index.html:26 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:26 -msgid "in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -#, fuzzy -msgid "user" -msgstr "用户" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:29 -#: forum/skins/default/templates/osqaadmin/index.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:31 -msgid "joined in the last 24 hours" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:36 -#: forum/skins/default/templates/osqaadmin/index.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:37 -#, fuzzy -msgid "Site status" -msgstr "网站访问者" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:40 -#: forum/skins/default/templates/osqaadmin/index.html:42 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:40 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:42 -msgid "" -"Your site is running in bootstrap mode, click the button below to revert to " -"defaults." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:43 -#: forum/skins/default/templates/osqaadmin/index.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:43 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:45 -msgid "" -"Your site is running in standard mode, click the button below to run in " -"bootstrap mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:45 -#: forum/skins/default/templates/osqaadmin/index.html:47 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:45 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:47 -msgid "" -"Your site is running with some customized settings, click the buttons below " -"to run with defaults or in bootstrap mode" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "Are you sure you want to revert to the defaults?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:49 -#: forum/skins/default/templates/osqaadmin/index.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:49 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:51 -msgid "revert to defaults" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "Are you sure you want to run bootstrap mode?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:52 -#: forum/skins/default/templates/osqaadmin/index.html:54 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:52 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:54 -msgid "go bootstrap" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/dashboard.html:66 -#: forum/skins/default/templates/osqaadmin/index.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/dashboard.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:71 -#, fuzzy -msgid "Recent activity" -msgstr "最近活动" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:29 -msgid "Administration Area" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:33 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:33 -#, fuzzy -msgid "Welcome," -msgstr "CNProg欢迎您!" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:35 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:35 -msgid "To standard interface" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:36 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:36 -#, fuzzy -msgid "Back to home page" -msgstr "回到首页" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:37 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:37 -#, fuzzy -msgid "Log out" -msgstr "退出登录" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:41 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:41 -#, fuzzy -msgid "Home" -msgstr "首页" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:61 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:59 -msgid "Unpublished changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:62 -msgid "Items marked with this icon have unpublished changes." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:80 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:78 -msgid "Workflow settings" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:90 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:88 -#, fuzzy -msgid "Forum settings" -msgstr "设置" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:98 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:96 -#, fuzzy -msgid "Static content" -msgstr "ä¸å›½ç¨‹åºå‘˜çš„编程技术问ç”社区。我们åšä¸“业的ã€å¯å作编辑的技术问ç”社区。" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:100 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:98 -#, fuzzy -msgid "Custom Pages" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:106 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:110 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:114 -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:124 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:104 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:108 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:112 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:122 -msgid "Unsaved changes" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:119 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:117 -#, fuzzy -msgid "Other settings" -msgstr "设置" - -#: forum/skins/default/templates/osqaadmin/djstyle_base.html:130 -#: forum/skins/nuxeo/templates/osqaadmin/djstyle_base.html:128 -msgid "Tools" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:5 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -#, fuzzy -msgid "Editing page" -msgstr "修改回ç”" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:7 -msgid "Static Pages" -msgstr "" - -# templates/book.html 78 -#: forum/skins/default/templates/osqaadmin/edit_page.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:8 -#, fuzzy -msgid "Creating page" -msgstr "读书频é“" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:11 -#: forum/skins/default/templates/osqaadmin/static_pages.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:12 -#, fuzzy -msgid "New page" -msgstr "下一页" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -#, fuzzy -msgid "Published" -msgstr "ã€å‡ºç‰ˆç¤¾ã€‘" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:12 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:12 -#, fuzzy -msgid "Unpublished" -msgstr "ã€å‡ºç‰ˆç¤¾ã€‘" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:24 -#: forum/skins/default/templates/osqaadmin/static_pages.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:21 -#, fuzzy -msgid "Edit" -msgstr "编辑" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:29 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:28 -#, fuzzy -msgid "Unpublish" -msgstr "ã€å‡ºç‰ˆç¤¾ã€‘" - -#: forum/skins/default/templates/osqaadmin/edit_page.html:31 -#: forum/skins/nuxeo/templates/osqaadmin/edit_page.html:30 -#, fuzzy -msgid "Publish" -msgstr "ã€å‡ºç‰ˆç¤¾ã€‘" - -#: forum/skins/default/templates/osqaadmin/flagged_posts.html:8 -#: forum/skins/nuxeo/templates/osqaadmin/flagged_posts.html:8 -msgid "This are the posts that have been flagged by users." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:17 -#, fuzzy -msgid "Site statistics" -msgstr "网站访问者" - -#: forum/skins/default/templates/osqaadmin/index.html:65 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:65 -msgid "Recalculate scores and reputation" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -msgid "This is a heavy operation, are you sure?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/index.html:66 -#: forum/skins/nuxeo/templates/osqaadmin/index.html:66 -#, fuzzy -msgid "Recalculate" -msgstr "真实姓å" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:11 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:11 -#, python-format -msgid "%(prefix)s Your email settings are correct: %(app_name)s" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/mail_test.html:14 -#: forum/skins/default/templates/osqaadmin/mail_test.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/mail_test.html:18 -msgid "If you see this content your E-Mail settings are correct." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:7 -msgid "" -"Maintainance mode allows you to close your site for maintainance, allowing " -"only a predetermined set of ip addresses to access it normally." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:13 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:12 -msgid "Your site is currently running on maintenance mode." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:13 -msgid "You can adjust the settings bellow" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:19 -#, fuzzy -msgid "Adjust settings" -msgstr "设置" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:20 -#, fuzzy -msgid "Open site" -msgstr "个人网站" - -#: forum/skins/default/templates/osqaadmin/maintenance.html:23 -#: forum/skins/nuxeo/templates/osqaadmin/maintenance.html:22 -msgid "Close for maintenance" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:5 -#: forum/skins/default/templates/osqaadmin/moderation.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:6 -#, fuzzy -msgid "Moderation" -msgstr "城市" - -#: forum/skins/default/templates/osqaadmin/moderation.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:7 -msgid "" -"These tools allow you to search for undesired behaviours and cheating " -"patterns." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:14 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:13 -msgid "Verify:" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:17 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:16 -msgid "highest ranking users" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:18 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:17 -#, fuzzy -msgid "newer users" -msgstr "最近回ç”" - -#: forum/skins/default/templates/osqaadmin/moderation.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:18 -#, fuzzy -msgid "older users" -msgstr "最先回ç”" - -#: forum/skins/default/templates/osqaadmin/moderation.html:20 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:19 -msgid "users with these ids" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:24 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:23 -#, fuzzy -msgid "(Comma separated list of user ids)" -msgstr "全部问题列表" - -#: forum/skins/default/templates/osqaadmin/moderation.html:26 -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:25 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Go" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:51 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:50 -msgid "Possible cheaters" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:57 -#: forum/skins/default/templates/osqaadmin/moderation.html:70 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:56 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:69 -msgid "Email" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:59 -#: forum/skins/default/templates/osqaadmin/moderation.html:83 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:58 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:82 -#, fuzzy -msgid "Validated" -msgstr "更新于" - -# "最有价值问题" -# "最新问题" -#: forum/skins/default/templates/osqaadmin/moderation.html:61 -#: forum/skins/default/templates/osqaadmin/moderation.html:85 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:60 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:84 -#, fuzzy -msgid "Not validated" -msgstr "最有价值的问题" - -#: forum/skins/default/templates/osqaadmin/moderation.html:64 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:63 -#, fuzzy -msgid "Reputation:" -msgstr "积分" - -#: forum/skins/default/templates/osqaadmin/moderation.html:71 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:70 -#, fuzzy -msgid "Reputation" -msgstr "积分" - -#: forum/skins/default/templates/osqaadmin/moderation.html:72 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:71 -msgid "Affecting actions" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:72 -msgid "Cross ips" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/moderation.html:74 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:73 -#, fuzzy -msgid "Cheating score" -msgstr "修改密ç " - -#: forum/skins/default/templates/osqaadmin/moderation.html:77 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:76 -#, fuzzy -msgid "Possible fake accounts" -msgstr "åˆ é™¤å¸å·" - -#: forum/skins/default/templates/osqaadmin/moderation.html:90 -#: forum/skins/default/templates/osqaadmin/moderation.html:91 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:89 -#: forum/skins/nuxeo/templates/osqaadmin/moderation.html:90 -#, fuzzy -msgid "out of" -msgstr "点击退出登录" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:73 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:73 -#, fuzzy -msgid "rep" -msgstr "打开" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:102 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:102 -#, fuzzy -msgid "uses" -msgstr "用户" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:261 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:261 -#, fuzzy -msgid "Node manager" -msgstr "最先回ç”" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:264 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:264 -msgid "Nodes bulk management" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:278 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:277 -msgid "reset text filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:290 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:289 -msgid "Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:295 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:294 -msgid "Title and Body" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -#, fuzzy -msgid "Filter" -msgstr "银牌" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:325 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:324 -msgid "Click to show/hide" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:327 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:326 -msgid "By type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "click to clear the type filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:330 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:329 -msgid "all" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to remove from the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:333 -#: forum/skins/default/templates/osqaadmin/nodeman.html:344 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:332 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:343 -msgid "click to add to the filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:338 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:337 -msgid "By state" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "click to clear the state filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:341 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:340 -msgid "any" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:350 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:349 -msgid "Match any selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:351 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:350 -msgid "Match all selected" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:355 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:354 -#, fuzzy -msgid "By author(s)" -msgstr "ã€ä½œè€…】" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:357 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:356 -msgid "No users selected, use the box bellow to add users to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:367 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:366 -msgid "Click on the cross next to a user name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:371 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:370 -#, fuzzy -msgid "By tag(s)" -msgstr "æ ‡ç¾" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:373 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:372 -msgid "No tags selected, use the box bellow to add tags to the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:383 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:382 -msgid "Click on the cross next to a tag name to remove it from the filter." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:387 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:386 -msgid "Pre defined" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:389 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:388 -msgid "There are no saved filters. Click bellow to add." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:398 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:396 -#, fuzzy -msgid "Filter name..." -msgstr "用户å" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:399 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:397 -msgid "Click to save the current filter" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:415 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:411 -#, fuzzy -msgid "Action" -msgstr "城市" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:418 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:414 -#, fuzzy -msgid "Mark deleted" -msgstr "[å·²åˆ é™¤]" - -# todo please check this in chinese -#: forum/skins/default/templates/osqaadmin/nodeman.html:419 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:415 -#, fuzzy -msgid "Undelete" -msgstr "å–消" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:420 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:416 -#, fuzzy -msgid "Delete completely" -msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªè¯„è®º" - -# close.html -#: forum/skins/default/templates/osqaadmin/nodeman.html:421 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:417 -#, fuzzy -msgid "Close (questions only)" -msgstr "å…³é—问题" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:424 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:420 -msgid "Run the selected action" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:446 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:443 -msgid "Type" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:447 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:444 -msgid "Summary" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:449 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:446 -#, fuzzy -msgid "State" -msgstr "ä¿å˜" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:451 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:448 -#, fuzzy -msgid "Author" -msgstr "ã€ä½œè€…】" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:454 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:451 -msgid "Added at" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:463 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:457 -#, fuzzy -msgid "Last activity by" -msgstr "最近活动" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:466 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:460 -#, fuzzy -msgid "Last activity at" -msgstr "最近活动" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:468 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:462 -#: forum_modules/exporter/exporter.py:368 -#: forum_modules/exporter/importer.py:420 -msgid "Tags" -msgstr "ä¸ªæ ‡ç¾" - -#: forum/skins/default/templates/osqaadmin/nodeman.html:497 -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:491 -msgid "by" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/set.html:19 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:18 -#, fuzzy -msgid "Preview" -msgstr "æµè§ˆ" - -#: forum/skins/default/templates/osqaadmin/set.html:21 -#: forum/skins/nuxeo/templates/osqaadmin/set.html:20 -#, fuzzy -msgid "Reset Changes" -msgstr "æœ€æ–°æ ‡ç¾" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:5 -#: forum/skins/default/templates/osqaadmin/static_pages.html:6 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:5 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:6 -msgid "Static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:7 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:7 -msgid "Allows you to create a set of static pages" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:10 -msgid "Select page to edit" -msgstr "" - -# user_info.html -#: forum/skins/default/templates/osqaadmin/static_pages.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/static_pages.html:16 -#, fuzzy -msgid "Pages" -msgstr "年龄" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:23 -msgid "Are you sure you want to delete this page?" -msgstr "" - -#: forum/skins/default/templates/osqaadmin/static_pages.html:24 -#, fuzzy -msgid "Delete" -msgstr "åˆ é™¤" - -#: forum/skins/default/templates/osqaadmin/statistics.html:27 -#: forum/skins/nuxeo/templates/osqaadmin/statistics.html:27 -msgid "" -"Some simple graphics to help you get a notion of whats going on in your site." -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:4 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:4 -msgid "" -"\n" -" An attempt has been made to send email to\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:10 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:10 -msgid "" -"\n" -" Please, check your inbox and if you see the new test message your " -"email STMP settings are correct.\n" -" " -msgstr "" - -#: forum/skins/default/templates/osqaadmin/test_email_settings.html:16 -#: forum/skins/nuxeo/templates/osqaadmin/test_email_settings.html:16 -msgid "" -"\n" -" If you do not see the new test message check your spam folder, and " -"if you don't find it check your SMTP settings\n" -" again. It might be useful to take a look at the log file.\n" -" " -msgstr "" - -#: forum/skins/default/templates/paginator/page_numbers.html:22 -#, fuzzy -msgid "next" -msgstr "文本" - -#: forum/skins/default/templates/question_list/item.html:11 -#: forum/skins/nuxeo/templates/question_list/item.html:11 -#: forum/views/commands.py:82 forum/views/commands.py:85 -#: forum/views/commands.py:129 -#, fuzzy -msgid "vote" -msgstr "票" - -#: forum/skins/default/templates/question_list/item.html:13 -#: forum/skins/nuxeo/templates/question_list/item.html:13 -#, fuzzy -msgid "this question has an accepted answer" -msgstr "这个问题被" - -#: forum/skins/default/templates/question_list/item.html:19 -#: forum/skins/nuxeo/templates/question_list/item.html:19 -#, fuzzy -msgid "view" -msgstr "æµè§ˆ" - -#: forum/skins/default/templates/question_list/related_tags.html:6 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:6 -msgid "Related tags" -msgstr "ç›¸å…³æ ‡ç¾" - -# this is how above two are supposed to be -#: forum/skins/default/templates/question_list/related_tags.html:9 -#: forum/skins/default/templates/question_list/tag_selector.html:14 -#: forum/skins/default/templates/question_list/tag_selector.html:32 -#: forum/skins/nuxeo/templates/tag_selector.html:10 -#: forum/skins/nuxeo/templates/tag_selector.html:27 -#: forum/skins/nuxeo/templates/question_list/related_tags.html:9 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:13 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:31 -#, fuzzy, python-format -msgid "see questions tagged '%(tag_name)s'" -msgstr "查看有关'%(tagname)s'的问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -msgid "most recently updated questions" -msgstr "最近被更新的问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:4 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:4 -#: forum/views/readers.py:39 -#, fuzzy -msgid "active" -msgstr "活跃问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -msgid "most recently asked questions" -msgstr "æœ€æ–°åŠ å…¥ç³»ç»Ÿçš„é—®é¢˜" - -#: forum/skins/default/templates/question_list/sort_tabs.html:5 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:5 -#: forum/views/readers.py:40 forum/views/readers.py:56 -#: forum/views/readers.py:309 forum/views/users.py:39 forum/views/users.py:52 -msgid "newest" -msgstr "最新问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -msgid "hottest questions" -msgstr "被回å¤æœ€å¤šçš„问题" - -#: forum/skins/default/templates/question_list/sort_tabs.html:6 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:6 -#: forum/views/readers.py:41 -msgid "hottest" -msgstr "çƒé—¨é—®é¢˜" - -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -msgid "most voted questions" -msgstr "投票次数最多的问题" - -# "最有价值问题" -# "最新问题" -#: forum/skins/default/templates/question_list/sort_tabs.html:7 -#: forum/skins/nuxeo/templates/question_list/sort_tabs.html:7 -#: forum/views/readers.py:42 -msgid "most voted" -msgstr "最有价值的问题" - -#: forum/skins/default/templates/question_list/subscription_item.html:4 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:4 -msgid "Unsubscribe" -msgstr "" - -#: forum/skins/default/templates/question_list/subscription_item.html:8 -#: forum/skins/nuxeo/templates/question_list/subscription_item.html:8 -msgid "Last checked" -msgstr "" - -# book.html line 123 must be empty in english -#: forum/skins/default/templates/question_list/tag_selector.html:7 -#: forum/skins/nuxeo/templates/tag_selector.html:4 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:6 -#, fuzzy -msgid "Interesting tags" -msgstr "的问题" - -#: forum/skins/default/templates/question_list/tag_selector.html:18 -#: forum/skins/nuxeo/templates/tag_selector.html:14 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:17 -#, python-format -msgid "remove '%(tag_name)s' from the list of interesting tags" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:24 -#: forum/skins/default/templates/question_list/tag_selector.html:42 -#: forum/skins/nuxeo/templates/tag_selector.html:20 -#: forum/skins/nuxeo/templates/tag_selector.html:37 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:23 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:41 -msgid "Add" -msgstr "" - -#: forum/skins/default/templates/question_list/tag_selector.html:25 -#: forum/skins/nuxeo/templates/tag_selector.html:21 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:24 -#, fuzzy -msgid "Ignored tags" -msgstr "ä¿®æ”¹é—®é¢˜æ ‡ç¾" - -#: forum/skins/default/templates/question_list/tag_selector.html:36 -#: forum/skins/nuxeo/templates/tag_selector.html:31 -#: forum/skins/nuxeo/templates/question_list/tag_selector.html:35 -#, python-format -msgid "remove '%(tag_name)s' from the list of ignored tags" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:5 -#: forum/skins/nuxeo/templates/question_list/title.html:5 -msgid "Found by tags" -msgstr "æ ‡ç¾é—®é¢˜" - -#: forum/skins/default/templates/question_list/title.html:9 -#: forum/skins/nuxeo/templates/question_list/title.html:9 -msgid "Search results" -msgstr "" - -#: forum/skins/default/templates/question_list/title.html:11 -#: forum/skins/nuxeo/templates/question_list/title.html:11 -msgid "Found by title" -msgstr "查询结果" - -#: forum/skins/default/templates/question_list/title.html:15 -#: forum/skins/nuxeo/templates/question_list/title.html:15 -msgid "Unanswered questions" -msgstr "没有回ç”的问题" - -#: forum/skins/default/templates/question_list/title.html:20 -#: forum/skins/nuxeo/templates/question_list/title.html:20 -#: forum/views/readers.py:170 -#, fuzzy -msgid "All Questions" -msgstr "所有问题" - -#: forum/skins/default/templates/sidebar/markdown_help.html:3 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:3 -#, fuzzy -msgid "Markdown Basics" -msgstr "Markdown快速å‚考" - -#: forum/skins/default/templates/sidebar/markdown_help.html:6 -#, fuzzy -msgid "*italic* or _italic_" -msgstr "*斜体* 或者 _斜体_" - -#: forum/skins/default/templates/sidebar/markdown_help.html:9 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:9 -msgid "**bold** or __bold__" -msgstr "**åŠ ç²—** 或者 __åŠ ç²—__ " - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -msgid "link" -msgstr "链接" - -#: forum/skins/default/templates/sidebar/markdown_help.html:12 -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:12 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "text" -msgstr "文本" - -#: forum/skins/default/templates/sidebar/markdown_help.html:17 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:17 -msgid "image" -msgstr "图片" - -#: forum/skins/default/templates/sidebar/markdown_help.html:21 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:21 -msgid "numbered list:" -msgstr "列表:" - -#: forum/skins/default/templates/sidebar/markdown_help.html:26 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:26 -msgid "" -"to add a line break simply add two spaces to where you would like the new " -"line to be." -msgstr "" - -#: forum/skins/default/templates/sidebar/markdown_help.html:29 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:29 -msgid "basic HTML tags are also supported" -msgstr "基本的HTMLæ ‡ç¾ä¹Ÿæ˜¯æ”¯æŒçš„" - -#: forum/skins/default/templates/sidebar/markdown_help.html:33 -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:33 -msgid "learn more about Markdown" -msgstr "有关Markdown详细说明" - -#: forum/skins/default/templates/sidebar/recent_awards.html:4 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:4 -msgid "Recent awards" -msgstr "最新奖牌" - -#: forum/skins/default/templates/sidebar/recent_awards.html:15 -#: forum/skins/nuxeo/templates/sidebar/recent_awards.html:15 -msgid "all awards" -msgstr "所有奖牌" - -#: forum/skins/default/templates/sidebar/recent_tags.html:7 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:4 -msgid "Recent tags" -msgstr "æœ€æ–°æ ‡ç¾" - -#: forum/skins/default/templates/sidebar/recent_tags.html:14 -#: forum/skins/nuxeo/templates/sidebar/recent_tags.html:11 -msgid "popular tags" -msgstr "å—æ¬¢è¿Žçš„æ ‡ç¾" - -#: forum/skins/default/templates/users/edit.html:6 -#: forum/skins/nuxeo/templates/users/edit.html:6 -msgid "Edit user profile" -msgstr "修改个人资料" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -msgid "image associated with your email address" -msgstr "和您的邮件地å€æ˜¯ç»‘定的" - -#: forum/skins/default/templates/users/edit.html:46 -#: forum/skins/nuxeo/templates/users/edit.html:45 -#, fuzzy -msgid "gravatar" -msgstr "修改头åƒ" - -#: forum/skins/default/templates/users/edit.html:51 -#: forum/skins/default/templates/users/info.html:47 -#: forum/skins/nuxeo/templates/users/edit.html:50 -msgid "Registered user" -msgstr "注册用户" - -#: forum/skins/default/templates/users/edit.html:58 -#: forum/skins/nuxeo/templates/users/edit.html:57 -#, fuzzy -msgid "Screen Name" -msgstr "当å‰é¡µ" - -#: forum/skins/default/templates/users/edit.html:99 -#: forum/skins/default/templates/users/subscriptions_settings.html:105 -#: forum/skins/nuxeo/templates/users/edit.html:98 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:104 -msgid "Update" -msgstr "æ›´æ–°" - -#: forum/skins/default/templates/users/info.html:26 -#: forum/skins/default/templates/users/signature.html:8 -#: forum/skins/nuxeo/templates/users/info.html:64 -#: forum/skins/nuxeo/templates/users/signature.html:8 forum/views/users.py:38 -msgid "reputation" -msgstr "积分" - -#: forum/skins/default/templates/users/info.html:28 -#: forum/skins/nuxeo/templates/users/info.html:66 -#, fuzzy -msgid "Suspended" -msgstr "更新于" - -#: forum/skins/default/templates/users/info.html:42 -#, fuzzy -msgid "Administrator" -msgstr "网站访问者" - -#: forum/skins/default/templates/users/info.html:45 -#, fuzzy -msgid "Moderator" -msgstr "城市" - -#: forum/skins/default/templates/users/info.html:55 -msgid "real name" -msgstr "姓å" - -#: forum/skins/default/templates/users/info.html:60 -#: forum/skins/nuxeo/templates/users/info.html:71 -msgid "member for" -msgstr "å·²åŠ å…¥" - -#: forum/skins/default/templates/users/info.html:65 -#: forum/skins/nuxeo/templates/users/info.html:75 -msgid "last seen" -msgstr "上次活动时间" - -#: forum/skins/default/templates/users/info.html:71 -#, fuzzy -msgid "user's website" -msgstr "个人网站" - -#: forum/skins/default/templates/users/info.html:77 -msgid "location" -msgstr "城市" - -# user_info.html -#: forum/skins/default/templates/users/info.html:85 -msgid "age" -msgstr "年龄" - -#: forum/skins/default/templates/users/info.html:86 -#: forum/skins/nuxeo/templates/users/info.html:44 -msgid "age unit" -msgstr "å²" - -# "最有价值问题" -# "最新问题" -#: forum/skins/default/templates/users/info.html:96 -#: forum/skins/nuxeo/templates/users/info.html:53 -#, fuzzy -msgid "not validated" -msgstr "最有价值的问题" - -#: forum/skins/default/templates/users/info.html:107 -msgid "todays unused votes" -msgstr "今日剩余投票数" - -#: forum/skins/default/templates/users/info.html:108 -msgid "votes left" -msgstr "票" - -#: forum/skins/default/templates/users/karma_bonus.html:5 -#: forum/skins/nuxeo/templates/users/karma_bonus.html:5 -msgid "Points" -msgstr "" - -#: forum/skins/default/templates/users/menu.html:4 -#: forum/skins/nuxeo/templates/users/menu.html:4 -#, fuzzy -msgid "User tools" -msgstr "用户列表" - -#: forum/skins/default/templates/users/online_users.html:6 -#: forum/skins/default/templates/users/online_users.html:23 -#: forum/skins/nuxeo/templates/users/online_users.html:6 -#: forum/skins/nuxeo/templates/users/online_users.html:23 -#, fuzzy -msgid "Users Online" -msgstr "用户登录" - -#: forum/skins/default/templates/users/online_users.html:29 -#: forum/skins/default/templates/users/users.html:29 -#: forum/skins/nuxeo/templates/users/online_users.html:29 -#: forum/skins/nuxeo/templates/users/users.html:29 -#, fuzzy, python-format -msgid "users matching query %(suser)s:" -msgstr "" -"匹é…查询 '<span class=\"darkred\"><strong>%s</strong></span>' 的所有用户å:" - -#: forum/skins/default/templates/users/online_users.html:33 -#: forum/skins/default/templates/users/users.html:33 -#: forum/skins/nuxeo/templates/users/online_users.html:33 -#: forum/skins/nuxeo/templates/users/users.html:33 -msgid "Nothing found." -msgstr "没有找到相关数æ®ã€‚" - -#: forum/skins/default/templates/users/preferences.html:6 -#: forum/skins/nuxeo/templates/users/preferences.html:6 -#, fuzzy -msgid "Preferences" -msgstr "设置" - -#: forum/skins/default/templates/users/preferences.html:11 -#: forum/skins/nuxeo/templates/users/preferences.html:10 -msgid "Here you can set some personal preferences." -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:17 -#: forum/skins/nuxeo/templates/users/preferences.html:16 -msgid "Navigation:" -msgstr "" - -#: forum/skins/default/templates/users/preferences.html:22 -msgid "Always remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/skins/default/templates/users/questions.html:11 -#, fuzzy -msgid "No favorite questions to display." -msgstr "收è—" - -#: forum/skins/default/templates/users/signature.html:11 -#: forum/skins/default/templates/users/signature.html:17 -#: forum/skins/default/templates/users/signature.html:23 -#: forum/skins/nuxeo/templates/users/signature.html:11 -#: forum/skins/nuxeo/templates/users/signature.html:17 -#: forum/skins/nuxeo/templates/users/signature.html:23 -#: forum/templatetags/extra_tags.py:81 forum/views/meta.py:89 -msgid "badges" -msgstr "奖牌榜" - -#: forum/skins/default/templates/users/signature.html:31 -#: forum/skins/nuxeo/templates/users/signature.html:31 -#: forum/templatetags/extra_tags.py:54 -msgid "(suspended)" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:13 -#: forum/skins/nuxeo/templates/users/stats.html:13 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Question\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Questions\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:37 -#: forum/skins/nuxeo/templates/users/stats.html:35 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Answer\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Answers\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -#, fuzzy, python-format -msgid "the answer has been voted for %(vote_count)s times" -msgstr "该回ç”总共有%d个投票" - -#: forum/skins/default/templates/users/stats.html:51 -#: forum/skins/nuxeo/templates/users/stats.html:49 -msgid "this answer has been selected as correct" -msgstr "该回ç”已被设为最佳ç”案" - -#: forum/skins/default/templates/users/stats.html:72 -#: forum/skins/nuxeo/templates/users/stats.html:67 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(cnt)s</span> Vote\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(cnt)s</span> Votes\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:83 -#: forum/skins/nuxeo/templates/users/stats.html:78 -msgid "thumb up" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:84 -#: forum/skins/nuxeo/templates/users/stats.html:79 -msgid "user has voted up this many times" -msgstr "该用户投的赞æˆç¥¨æ€»æ•°" - -#: forum/skins/default/templates/users/stats.html:88 -#: forum/skins/nuxeo/templates/users/stats.html:83 -msgid "thumb down" -msgstr "" - -#: forum/skins/default/templates/users/stats.html:89 -#: forum/skins/nuxeo/templates/users/stats.html:84 -#, fuzzy -msgid "user voted down this many times" -msgstr "用户投的å对票总数" - -#: forum/skins/default/templates/users/stats.html:98 -#: forum/skins/nuxeo/templates/users/stats.html:93 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Tag\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Tags\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/stats.html:112 -#: forum/skins/nuxeo/templates/users/stats.html:107 -#, fuzzy, python-format -msgid "" -"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' " -msgstr "查看有关'%s'的问题" - -#: forum/skins/default/templates/users/stats.html:127 -#: forum/skins/nuxeo/templates/users/stats.html:122 -#, python-format -msgid "" -"\n" -" <span class=\"count\">%(counter)s</span> Badge\n" -" " -msgid_plural "" -"\n" -" <span class=\"count\">%(counter)s</span> Badges\n" -" " -msgstr[0] "" -msgstr[1] "" - -#: forum/skins/default/templates/users/subscriptions_management.html:6 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:6 -msgid "Manage your current subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:9 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:9 -msgid "don't show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_management.html:11 -#: forum/skins/nuxeo/templates/users/subscriptions_management.html:11 -msgid "show auto-subscribe" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:5 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:5 -msgid "Notifications and subscription settings" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:7 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:7 -msgid "" -"\n" -" Here you can decide which types of notifications you wish to receive, " -"and their frequency.<br />\n" -" " -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:18 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:17 -msgid "Notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:22 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:21 -msgid "A new member joins" -msgstr "" - -# must have extra space after in english -#: forum/skins/default/templates/users/subscriptions_settings.html:26 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:25 -#, fuzzy -msgid "A new question is posted" -msgstr "查看有关" - -#: forum/skins/default/templates/users/subscriptions_settings.html:30 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:29 -msgid "A new question matching my interesting tags is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:34 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:33 -msgid "There's an update on one of my subscriptions" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:42 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:41 -msgid "Auto subscribe me to:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:47 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:46 -#, fuzzy -msgid "Questions I view" -msgstr "问题列表" - -#: forum/skins/default/templates/users/subscriptions_settings.html:50 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:49 -msgid "All questions matching my interesting tags" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:53 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:52 -msgid "All questions" -msgstr "所有问题" - -#: forum/skins/default/templates/users/subscriptions_settings.html:61 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:60 -msgid "On my subscriptions, notify me when:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:66 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:65 -#, fuzzy -msgid "An answer is posted" -msgstr "å—欢迎的æé—®" - -#: forum/skins/default/templates/users/subscriptions_settings.html:69 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:68 -msgid "A comment on one of my posts is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:74 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:73 -msgid "A comment is posted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:77 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:76 -msgid "An answer is accepted" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:85 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:84 -msgid "Daily Digest:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:90 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:89 -msgid "Send me the daily digest with information about the site activity" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:95 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:94 -msgid "Notify When I'm Discussed:" -msgstr "" - -#: forum/skins/default/templates/users/subscriptions_settings.html:100 -#: forum/skins/nuxeo/templates/users/subscriptions_settings.html:99 -msgid "" -"Notify me when someone replies to one of my comments on any post using the " -"<pre>@username</pre> notation" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:4 -#: forum/skins/nuxeo/templates/users/suspend_user.html:4 -msgid "Suspend user" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:8 -#: forum/skins/nuxeo/templates/users/suspend_user.html:8 -msgid "Indefinitely" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:9 -#: forum/skins/nuxeo/templates/users/suspend_user.html:9 -msgid "For X days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "Suspend for" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:15 -#: forum/skins/nuxeo/templates/users/suspend_user.html:15 -msgid "days" -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:20 -#: forum/skins/nuxeo/templates/users/suspend_user.html:20 -#, fuzzy -msgid "Public message" -msgstr "Copyright(c)2009.CNPROG.COM" - -#: forum/skins/default/templates/users/suspend_user.html:26 -#: forum/skins/nuxeo/templates/users/suspend_user.html:26 -msgid "This message will be visible through the user activity log." -msgstr "" - -#: forum/skins/default/templates/users/suspend_user.html:31 -#: forum/skins/nuxeo/templates/users/suspend_user.html:31 -#, fuzzy -msgid "Private message" -msgstr "Copyright(c)2009.CNPROG.COM" - -#: forum/skins/default/templates/users/suspend_user.html:37 -#: forum/skins/nuxeo/templates/users/suspend_user.html:37 -msgid "If set, only the suspended user will see this message." -msgstr "" - -#: forum/skins/default/templates/users/users.html:6 -#: forum/skins/default/templates/users/users.html:23 -#: forum/skins/nuxeo/templates/users/users.html:6 -#: forum/skins/nuxeo/templates/users/users.html:23 -#: forum_modules/exporter/exporter.py:376 -#: forum_modules/exporter/importer.py:344 -msgid "Users" -msgstr "用户列表" - -#: forum/skins/default/templates/users/votes.html:15 -#: forum/skins/nuxeo/templates/users/votes.html:15 forum/views/commands.py:89 -msgid "upvote" -msgstr "投赞æˆç¥¨" - -#: forum/skins/default/templates/users/votes.html:17 -#: forum/skins/nuxeo/templates/users/votes.html:17 forum/views/commands.py:89 -msgid "downvote" -msgstr "投å对票" - -#: forum/skins/nuxeo/templates/question.html:145 -#, fuzzy, python-format -msgid "One Answer" -msgid_plural "%(counter)s Answers" -msgstr[0] "个回ç”" -msgstr[1] "个回ç”" - -#: forum/skins/nuxeo/templates/question_retag.html:43 -msgid "tags are required" -msgstr " æ ‡ç¾ä¸èƒ½ä¸ºç©ºã€‚" - -#: forum/skins/nuxeo/templates/question_retag.html:44 -#, python-format -msgid "" -"\n" -" maxlength: \"up to %(max_number_of_tags)s tags, less " -"than %(max_length_of_tags)s characters each\"\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:19 -msgid "Unfollow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:21 -msgid "Follow by email" -msgstr "" - -#: forum/skins/nuxeo/templates/subscription_status.html:26 -#, python-format -msgid "" -"\n" -" <a href=\"%(subscriptions_url)s\">Adjust your notification " -"settings</a>\n" -" " -msgstr "" - -#: forum/skins/nuxeo/templates/tag_selector.html:40 -#, fuzzy -msgid "keep ignored questions hidden" -msgstr "打开关é—任何人的问题" - -#: forum/skins/nuxeo/templates/node/award_points.html:4 -#, fuzzy, python-format -msgid "" -"\n" -"Award %(awarded_user)s with reputation points.\n" -msgstr "ä¸Šä¼ å›¾ç‰‡åªé™äºŽç§¯åˆ†+60以上注册用户!" - -#: forum/skins/nuxeo/templates/node/comments.html:42 -msgid "show all" -msgstr "" - -#: forum/skins/nuxeo/templates/osqaadmin/nodeman.html:454 -#, fuzzy -msgid "Score" -msgstr "å…³é—" - -#: forum/skins/nuxeo/templates/sidebar/markdown_help.html:6 -#, fuzzy -msgid "*italic* or __italic__" -msgstr "*斜体* 或者 _斜体_" - -#: forum/skins/nuxeo/templates/users/preferences.html:21 -msgid "Allways remember the sort order I apply to the lists I view" -msgstr "" - -#: forum/templatetags/extra_tags.py:82 -#, fuzzy -msgid "reputation points" -msgstr "积分" - -#: forum/templatetags/extra_tags.py:114 -#, fuzzy, python-format -msgid "%(user)s has %(count)d accepted answers" -msgstr "这个问题被" - -#: forum/templatetags/extra_tags.py:120 -#, fuzzy, python-format -msgid "%s has one accepted answer" -msgstr "这个问题被" - -#: forum/templatetags/extra_tags.py:126 -#, fuzzy, python-format -msgid "%s has no accepted answers" -msgstr "这个问题被" - -#: forum/templatetags/extra_tags.py:132 -#, fuzzy -msgid "accept rate" -msgstr "最先回ç”" - -#: forum/templatetags/extra_tags.py:133 -#, fuzzy -msgid "Rate of the user's accepted answers" -msgstr "有ç”案已被接å—为æ£ç¡®ç”案" - -#: forum/templatetags/extra_tags.py:166 -#, fuzzy -msgid "2 days ago" -msgstr "于%s<font class=\"darkred\">å…³é—</font>" - -#: forum/templatetags/extra_tags.py:168 -msgid "yesterday" -msgstr "" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hour ago" -msgstr "å‰" - -#: forum/templatetags/extra_tags.py:170 -#, fuzzy -msgid "hours ago" -msgstr "å‰" - -#: forum/templatetags/extra_tags.py:170 -#, python-format -msgid "%(hr)d " -msgid_plural "%(hr)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "min ago" -msgstr "å‰" - -#: forum/templatetags/extra_tags.py:172 -#, fuzzy -msgid "mins ago" -msgstr "å‰" - -#: forum/templatetags/extra_tags.py:172 -#, python-format -msgid "%(min)d " -msgid_plural "%(min)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy -msgid "sec ago" -msgstr "å‰" - -#: forum/templatetags/extra_tags.py:174 -#, fuzzy -msgid "secs ago" -msgstr "å‰" - -#: forum/templatetags/extra_tags.py:174 -#, python-format -msgid "%(sec)d " -msgid_plural "%(sec)d " -msgstr[0] "" -msgstr[1] "" - -#: forum/templatetags/node_tags.py:104 -msgid "permanent link" -msgstr "永久链接" - -#: forum/templatetags/node_tags.py:105 -msgid "answer permanent link" -msgstr "该回ç”的链接地å€" - -#: forum/templatetags/node_tags.py:109 -msgid "award points" -msgstr "" - -#: forum/templatetags/node_tags.py:110 -#, python-format -msgid "award points to %s" -msgstr "" - -#: forum/templatetags/node_tags.py:120 -#, fuzzy -msgid "retag" -msgstr "æ›´æ–°äº†æ ‡ç¾" - -#: forum/templatetags/node_tags.py:126 -msgid "reopen" -msgstr "打开" - -#: forum/templatetags/node_tags.py:128 -msgid "close" -msgstr "å…³é—" - -#: forum/templatetags/node_tags.py:131 -msgid "report" -msgstr "" - -#: forum/templatetags/node_tags.py:139 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "检举该帖为垃“水帖â€ï¼ˆå«å¹¿å‘Šã€äººèº«æ”»å‡»ã€æ¶æ„言论ç‰ï¼‰" - -# todo please check this in chinese -#: forum/templatetags/node_tags.py:149 -msgid "undelete" -msgstr "å–消" - -#: forum/templatetags/node_tags.py:156 -#, fuzzy -msgid "see revisions" -msgstr "选择版本" - -# index.html -#: forum/templatetags/node_tags.py:163 -#, fuzzy -msgid "mark as community wiki" -msgstr "社区Wiki" - -# index.html -#: forum/templatetags/node_tags.py:167 -#, fuzzy -msgid "cancel community wiki" -msgstr "社区Wiki" - -#: forum/templatetags/node_tags.py:171 -#, fuzzy -msgid "convert to comment" -msgstr "评论" - -#: forum/templatetags/node_tags.py:175 -#, fuzzy -msgid "convert to question" -msgstr "回ç”该问题" - -#: forum/templatetags/node_tags.py:258 -#, fuzzy -msgid "posted" -msgstr "投赞æˆç¥¨" - -#: forum/views/admin.py:141 -#, fuzzy -msgid "Questions Graph" -msgstr "问题列表" - -#: forum/views/admin.py:145 -#, fuzzy -msgid "Users Graph" -msgstr "用户列表" - -#: forum/views/admin.py:184 -#, python-format -msgid "'%s' settings saved succesfully" -msgstr "" - -#: forum/views/admin.py:291 -msgid "Bootstrap mode enabled" -msgstr "" - -#: forum/views/admin.py:305 -msgid "All values reverted to defaults" -msgstr "" - -#: forum/views/admin.py:321 -msgid "All values recalculated" -msgstr "" - -#: forum/views/admin.py:336 -msgid "Maintenance mode enabled" -msgstr "" - -#: forum/views/admin.py:338 -msgid "Settings adjusted" -msgstr "" - -#: forum/views/admin.py:345 -msgid "Your site is now running normally" -msgstr "" - -#: forum/views/admin.py:349 -msgid "Currently down for maintenance. We'll be back soon" -msgstr "" - -#: forum/views/admin.py:415 -msgid "createuser" -msgstr "" - -#: forum/views/admin.py:415 -#, fuzzy -msgid "Create new user" -msgstr "注册新å¸å·" - -#: forum/views/admin.py:430 -#, python-format -msgid "New user created sucessfully. %s." -msgstr "" - -#: forum/views/admin.py:431 -#, fuzzy, python-format -msgid "See %s profile" -msgstr "修改资料" - -#: forum/views/admin.py:444 -msgid "added_at" -msgstr "" - -#: forum/views/admin.py:445 -msgid "added_at_asc" -msgstr "" - -#: forum/views/admin.py:446 -#, fuzzy -msgid "author" -msgstr "ã€ä½œè€…】" - -#: forum/views/admin.py:447 -#, fuzzy -msgid "author_asc" -msgstr "ã€ä½œè€…】" - -#: forum/views/admin.py:448 -#, fuzzy -msgid "score" -msgstr "å…³é—" - -#: forum/views/admin.py:449 -msgid "score_asc" -msgstr "" - -#: forum/views/admin.py:450 -msgid "act_at" -msgstr "" - -#: forum/views/admin.py:451 -msgid "act_at_asc" -msgstr "" - -#: forum/views/admin.py:452 -msgid "act_by" -msgstr "" - -#: forum/views/admin.py:453 -msgid "act_by_asc" -msgstr "" - -#: forum/views/admin.py:456 -msgid "nodeman" -msgstr "" - -#: forum/views/admin.py:456 -msgid "Bulk management" -msgstr "" - -#: forum/views/admin.py:462 -#, fuzzy -msgid "filter" -msgstr "银牌" - -#: forum/views/admin.py:475 -msgid "No action performed" -msgstr "" - -#: forum/views/admin.py:482 -msgid "All selected nodes marked as deleted" -msgstr "" - -#: forum/views/admin.py:489 -msgid "All selected nodes undeleted" -msgstr "" - -#: forum/views/admin.py:494 -#, fuzzy -msgid "bulk close" -msgstr "å…³é—" - -#: forum/views/admin.py:496 -#, fuzzy -msgid "Selected questions were closed" -msgstr "åˆ é™¤é—®é¢˜" - -#: forum/views/admin.py:508 -msgid "All selected nodes deleted" -msgstr "" - -#: forum/views/auth.py:118 forum/views/auth.py:130 -msgid "" -"Sorry, these login credentials belong to anoother user. Plese terminate your " -"current session and try again." -msgstr "" - -#: forum/views/auth.py:121 -msgid "You are already logged in with that user." -msgstr "" - -#: forum/views/auth.py:127 -msgid "These login credentials are already associated with your account." -msgstr "" - -#: forum/views/auth.py:136 -msgid "The new credentials are now associated with your account" -msgstr "" - -#: forum/views/auth.py:176 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again. " -"Note that you need to have cookies enabled for the authentication to work." -msgstr "" - -#: forum/views/auth.py:188 forum_modules/localauth/views.py:29 -#, fuzzy -msgid "A welcome email has been sent to your email address. " -msgstr "和您的邮件地å€æ˜¯ç»‘定的" - -#: forum/views/auth.py:193 -msgid "" -"Oops, something went wrong in the middle of this process. Please try again." -msgstr "" - -#: forum/views/auth.py:252 -#, fuzzy -msgid "An email has been sent with your temporary login key" -msgstr "和您的邮件地å€æ˜¯ç»‘定的" - -#: forum/views/auth.py:273 -msgid "" -"You are logged in with a temporary access key, please take the time to fix " -"your issue with authentication." -msgstr "" - -#: forum/views/auth.py:298 -#, fuzzy -msgid "A message with an email validation link was just sent to your address." -msgstr "和您的邮件地å€æ˜¯ç»‘定的" - -#: forum/views/auth.py:308 -msgid "Thank you, your email is now validated." -msgstr "" - -#: forum/views/auth.py:333 -#, fuzzy -msgid "New password set" -msgstr "密ç " - -#: forum/views/auth.py:337 -#, fuzzy -msgid "Your password was changed" -msgstr "密ç " - -#: forum/views/auth.py:373 -#, python-format -msgid "You removed the association with %s" -msgstr "" - -#: forum/views/auth.py:388 -#, python-format -msgid "Welcome back %s, you are now logged in" -msgstr "" - -#: forum/views/auth.py:402 -#, python-format -msgid "You have a %s pending submission." -msgstr "" - -# synonym of above in Edit question -#: forum/views/auth.py:403 -#, fuzzy -msgid "save it" -msgstr "现在修改" - -#: forum/views/auth.py:404 forum/views/writers.py:286 -#, fuzzy -msgid "review" -msgstr "æµè§ˆ" - -#: forum/views/auth.py:405 forum/views/writers.py:283 -#, fuzzy -msgid "cancel" -msgstr "å–消" - -#: forum/views/auth.py:423 -msgid "Sorry, but this account is suspended" -msgstr "" - -#: forum/views/commands.py:28 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br />\n" -" The minimum reputation required is %(reputation_required)d " -"(yours is %(user_reputation)d).\n" -" Please check the <a href='%(faq_url)s'>FAQ</a>" -msgstr "" - -#: forum/views/commands.py:39 -#, python-format -msgid "" -"Sorry, but you don't have enough reputation points to %(action)s.<br /" -">Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:47 -#, python-format -msgid "" -"Sorry but you cannot %(action)s your own post.<br />Please check the <a " -"href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:55 -#, python-format -msgid "" -"Sorry but anonymous users cannot %(action)s.<br />Please login or create an " -"account <a href='%(signin_url)s'>here</a>." -msgstr "" - -#: forum/views/commands.py:63 -#, python-format -msgid "" -"Sorry, but you don't have enough %(action)s left for today..<br />The limit " -"is %(limit)s per day..<br />Please check the <a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:71 -#, python-format -msgid "" -"Sorry, but you cannot %(action)s twice the same post.<br />Please check the " -"<a href='%(faq_url)s'>faq</a>" -msgstr "" - -#: forum/views/commands.py:106 -#, python-format -msgid "" -"Sorry but you cannot cancel a vote after %(ndays)d %(tdays)s from the " -"original vote" -msgstr "" - -#: forum/views/commands.py:108 -msgid "day" -msgid_plural "days" -msgstr[0] "" -msgstr[1] "" - -#: forum/views/commands.py:128 -#, python-format -msgid "You have %(nvotes)s %(tvotes)s left today." -msgstr "" - -#: forum/views/commands.py:142 forum/views/commands.py:148 -msgid "flag posts" -msgstr "" - -#: forum/views/commands.py:145 -msgid "flag" -msgstr "" - -#: forum/views/commands.py:153 -#, fuzzy -msgid "flags" -msgstr "æ ‡ç¾" - -#: forum/views/commands.py:158 -#, python-format -msgid "You already flagged this post with the following reason: %(reason)s" -msgstr "" - -# revisions_answer.html -#: forum/views/commands.py:163 forum/views/commands.py:409 -#, fuzzy -msgid "Reason is empty" -msgstr "版本历å²" - -#: forum/views/commands.py:167 -msgid "" -"Thank you for your report. A moderator will review your submission shortly." -msgstr "" - -#: forum/views/commands.py:175 forum/views/commands.py:181 -#, fuzzy -msgid "like comments" -msgstr "评论" - -#: forum/views/commands.py:178 -#, fuzzy -msgid "like" -msgstr "链接" - -#: forum/views/commands.py:205 forum/views/commands.py:208 -#, fuzzy -msgid "delete comments" -msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªè¯„è®º" - -#: forum/views/commands.py:224 -#, fuzzy -msgid "mark a question as favorite" -msgstr "这个问题被" - -#: forum/views/commands.py:250 forum/views/commands.py:548 -#: forum/views/commands.py:559 -msgid "Invalid request" -msgstr "" - -#: forum/views/commands.py:255 -msgid "Comment is empty" -msgstr "" - -#: forum/views/commands.py:258 -#, python-format -msgid "At least %d characters required on comment body." -msgstr "" - -#: forum/views/commands.py:261 -#, python-format -msgid "No more than %d characters on comment body." -msgstr "" - -# todo - check if it's indeed plural -#: forum/views/commands.py:267 -#, fuzzy -msgid "edit comments" -msgstr "æ·»åŠ è¯„è®º" - -#: forum/views/commands.py:303 forum/views/commands.py:317 -#, fuzzy -msgid "accept answers" -msgstr "最先回ç”" - -#: forum/views/commands.py:323 -#, fuzzy -msgid "Sorry but you cannot accept the answer" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum/views/commands.py:332 -#, fuzzy -msgid "This question already has an accepted answer." -msgid_plural "" -"Sorry but this question has reached the limit of accepted answers." -msgstr[0] "这个问题被" -msgstr[1] "这个问题被" - -#: forum/views/commands.py:339 -#, fuzzy -msgid "" -"The author of this answer already has an accepted answer in this question." -msgid_plural "" -"Sorry but the author of this answer has reached the limit of accepted " -"answers per question." -msgstr[0] "有ç”案已被接å—为æ£ç¡®ç”案" -msgstr[1] "有ç”案已被接å—为æ£ç¡®ç”案" - -#: forum/views/commands.py:347 -msgid "" -"\n" -" Congratulations! You've accepted an answer.\n" -" " -msgstr "" - -#: forum/views/commands.py:369 forum/views/commands.py:372 -#, fuzzy -msgid "delete posts" -msgstr "åˆ é™¤" - -# close.html -#: forum/views/commands.py:395 forum/views/commands.py:404 -#, fuzzy -msgid "close questions" -msgstr "å…³é—问题" - -#: forum/views/commands.py:399 -#, fuzzy -msgid "reopen questions" -msgstr "é‡è®¾é—®é¢˜" - -# index.html -#: forum/views/commands.py:421 forum/views/commands.py:433 -#, fuzzy -msgid "mark posts as community wiki" -msgstr "社区Wiki" - -# index.html -#: forum/views/commands.py:425 -#, fuzzy -msgid "cancel a community wiki post" -msgstr "社区Wiki" - -#: forum/views/commands.py:447 forum/views/commands.py:450 -#, fuzzy -msgid "convert answers to comments" -msgstr "当å‰æ€»ç¥¨æ•°" - -#: forum/views/commands.py:453 -#, python-format -msgid "Answer by %(uname)s: %(snippet)s..." -msgstr "" - -#: forum/views/commands.py:455 -#, fuzzy -msgid "Question" -msgstr "问题列表" - -#: forum/views/commands.py:464 forum/views/commands.py:467 -msgid "That is an invalid post to put the comment under" -msgstr "" - -#: forum/views/commands.py:485 forum/views/commands.py:488 -#, fuzzy -msgid "convert comments to answers" -msgstr "修改回ç”" - -#: forum/views/commands.py:503 -msgid "You do not have the correct credentials to preform this action." -msgstr "" - -#: forum/views/commands.py:598 -msgid "The permanent URL to the answer has been copied to your clipboard." -msgstr "" - -#: forum/views/commands.py:609 forum/views/commands.py:613 -#: forum/views/commands.py:625 -#, fuzzy -msgid "award" -msgstr "所有奖牌" - -#: forum/views/commands.py:622 -msgid "The number of points to award needs to be a positive value." -msgstr "" - -#: forum/views/commands.py:632 -#, python-format -msgid "You have awarded %(awarded_user)s with %(points)d points" -msgstr "" - -#: forum/views/decorators.py:77 -msgid "" -"We're sorry, but an unknown error ocurred.<br />Please try again in a while." -msgstr "" - -#: forum/views/meta.py:70 -msgid "Thanks for the feedback!" -msgstr "" - -#: forum/views/meta.py:78 -msgid "We look forward to hearing your feedback! Please, give it next time :)" -msgstr "" - -#: forum/views/readers.py:39 -#, fuzzy -msgid "Most <strong>recently updated</strong> questions" -msgstr "最近被更新的问题" - -#: forum/views/readers.py:40 -#, fuzzy -msgid "most <strong>recently asked</strong> questions" -msgstr "æœ€æ–°åŠ å…¥ç³»ç»Ÿçš„é—®é¢˜" - -#: forum/views/readers.py:41 -#, fuzzy -msgid "most <strong>active</strong> questions in the last 24 hours</strong>" -msgstr "回å¤æœ€å¤šçš„问题将显示在最å‰é¢ã€‚" - -# "最有价值问题" -# "最新问题" -#: forum/views/readers.py:42 -#, fuzzy -msgid "mostvoted" -msgstr "最有价值的问题" - -#: forum/views/readers.py:42 -#, fuzzy -msgid "most <strong>voted</strong> questions" -msgstr "个 <span class=\"darkred\"><strong>没有回ç”çš„</strong></span> 问题。" - -#: forum/views/readers.py:55 forum/views/readers.py:307 -#: forum/views/users.py:40 forum/views/users.py:51 -msgid "oldest" -msgstr "æœ€å…ˆåŠ å…¥" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers" -msgstr "最先回ç”" - -#: forum/views/readers.py:55 forum/views/users.py:51 -msgid "oldest answers will be shown first" -msgstr "最先回ç”显示在最å‰é¢" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers" -msgstr "最近回ç”" - -#: forum/views/readers.py:56 forum/views/users.py:52 -msgid "newest answers will be shown first" -msgstr "最晚回ç”显示在最å‰é¢" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "popular answers" -msgstr "投票最多" - -#: forum/views/readers.py:57 forum/views/users.py:53 -msgid "most voted answers will be shown first" -msgstr "投票次数最多的显示在最å‰é¢" - -#: forum/views/readers.py:63 forum/views/users.py:41 -#, fuzzy -msgid "name" -msgstr "按å称排åº" - -#: forum/views/readers.py:63 -msgid "by name" -msgstr "按å称排åº" - -#: forum/views/readers.py:63 -msgid "sorted alphabetically" -msgstr "按å称的å—æ¯å…ˆåŽé¡ºåºæŽ’åº" - -#: forum/views/readers.py:64 forum/views/readers.py:65 -#, fuzzy -msgid "used" -msgstr "用户" - -#: forum/views/readers.py:64 -#, fuzzy -msgid "by popularity" -msgstr "按æµè¡Œç¨‹åº¦æŽ’åº" - -#: forum/views/readers.py:64 -msgid "sorted by frequency of tag use" -msgstr "æŒ‰æ ‡ç¾è¢«ä½¿ç”¨çš„次数排åº" - -#: forum/views/readers.py:72 -msgid " - " -msgstr "-" - -#: forum/views/readers.py:72 -msgid "latest questions" -msgstr "最新问题" - -#: forum/views/readers.py:85 -#, fuzzy -msgid "unanswered" -msgstr "回ç”" - -#: forum/views/readers.py:89 -#, fuzzy -msgid "open questions without an accepted answer" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum/views/readers.py:91 -#, fuzzy -msgid "Unanswered Questions" -msgstr "没有回ç”的问题" - -#: forum/views/readers.py:124 -#, python-format -msgid "questions tagged <span class=\"tag\">%(tag)s</span>" -msgstr "" - -# this is how above two are supposed to be -#: forum/views/readers.py:126 -#, fuzzy, python-format -msgid "Questions Tagged With %(tag)s" -msgstr "查看有关'%(tagname)s'的问题" - -#: forum/views/readers.py:146 -#, fuzzy, python-format -msgid "Questions asked by %s" -msgstr "æ问时间" - -#: forum/views/readers.py:149 -#, fuzzy, python-format -msgid "Questions answered by %s" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum/views/readers.py:156 -#, fuzzy, python-format -msgid "Questions you subscribed %s" -msgstr "问题列表" - -#: forum/views/readers.py:158 -#, fuzzy, python-format -msgid "Questions subscribed by %s" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum/views/readers.py:184 -msgid "Questions" -msgstr "问题列表" - -#: forum/views/readers.py:251 forum/views/readers.py:252 -msgid "ranking" -msgstr "" - -#: forum/views/readers.py:251 -#, fuzzy -msgid "relevance" -msgstr "设置" - -#: forum/views/readers.py:251 -#, fuzzy -msgid "most relevant questions" -msgstr "投票次数最多的问题" - -#: forum/views/readers.py:259 forum/views/readers.py:261 -#, python-format -msgid "questions matching '%(keywords)s'" -msgstr "" - -#: forum/views/readers.py:414 -#, python-format -msgid "Revision n. %(rev_number)d" -msgstr "" - -#: forum/views/users.py:38 -#, fuzzy -msgid "sorted by reputation" -msgstr "积分" - -#: forum/views/users.py:39 -msgid "recent" -msgstr "æœ€æ–°åŠ å…¥" - -#: forum/views/users.py:39 -#, fuzzy -msgid "newest members" -msgstr "最近回ç”" - -#: forum/views/users.py:40 -#, fuzzy -msgid "last" -msgstr "æ ‡ç¾" - -#: forum/views/users.py:40 -#, fuzzy -msgid "oldest members" -msgstr "最先回ç”" - -#: forum/views/users.py:41 -msgid "by username" -msgstr "用户å" - -#: forum/views/users.py:41 -#, fuzzy -msgid "sorted by username" -msgstr "用户å" - -#: forum/views/users.py:72 -msgid "Online Users" -msgstr "" - -#: forum/views/users.py:166 -#, fuzzy -msgid "Profile updated." -msgstr "最åŽæ›´æ–°æ—¶é—´" - -#: forum/views/users.py:180 -msgid "Only superusers are allowed to alter other users permissions." -msgstr "" - -#: forum/views/users.py:183 -msgid "Only the site owner can remove the super user status from other user." -msgstr "" - -#: forum/views/users.py:205 -msgid "Only superusers are allowed to award reputation points" -msgstr "" - -#: forum/views/users.py:210 -msgid "Invalid number of points to award." -msgstr "" - -#: forum/views/users.py:228 -msgid "Only superusers can suspend other users" -msgstr "" - -#: forum/views/users.py:249 -msgid "Invalid numeric argument for the number of days." -msgstr "" - -#: forum/views/users.py:321 -msgid "overview" -msgstr "概览" - -#: forum/views/users.py:321 -#, fuzzy -msgid "user overview" -msgstr "用户概览" - -#: forum/views/users.py:358 -msgid "recent activity" -msgstr "最近活动" - -#: forum/views/users.py:358 -#, fuzzy -msgid "recent user activity" -msgstr "最近活动" - -#: forum/views/users.py:367 -msgid "reputation history" -msgstr "积分" - -#: forum/views/users.py:367 -#, fuzzy -msgid "graph of user karma" -msgstr "用户的社区积分历å²" - -#: forum/views/users.py:382 -msgid "user vote record" -msgstr "用户所有投票" - -#: forum/views/users.py:389 -msgid "favorites" -msgstr "收è—" - -#: forum/views/users.py:389 -msgid "questions that user selected as his/her favorite" -msgstr "用户收è—的问题" - -#: forum/views/users.py:395 -#, fuzzy -msgid "subscription" -msgstr "问题" - -#: forum/views/users.py:395 -#, fuzzy -msgid "subscriptions" -msgstr "问题" - -#: forum/views/users.py:428 -msgid "New subscription settings are now saved" -msgstr "" - -#: forum/views/users.py:444 -msgid "preferences" -msgstr "设置" - -#: forum/views/users.py:451 -#, fuzzy -msgid "New preferences saved" -msgstr "设置" - -#: forum/views/writers.py:61 -msgid "uploading images is limited to users with >60 reputation points" -msgstr "ä¸Šä¼ å›¾ç‰‡åªé™äºŽç§¯åˆ†+60以上注册用户!" - -# todo take these out of settings -#: forum/views/writers.py:63 -msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" -msgstr "åªå…è®¸ä¸Šä¼ 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'类型的文件ï¼" - -#: forum/views/writers.py:65 -#, fuzzy, python-format -msgid "maximum upload file size is %sM" -msgstr "åªå…è®¸ä¸Šä¼ %sK大å°çš„文件ï¼" - -#: forum/views/writers.py:67 -#, fuzzy, python-format -msgid "" -"Error uploading file. Please contact the site administrator. Thank you. %s" -msgstr "åœ¨æ–‡ä»¶ä¸Šä¼ è¿‡ç¨‹ä¸äº§ç”Ÿäº†é”™è¯¯ï¼Œè¯·è”系管ç†å‘˜ï¼Œè°¢è°¢^_^" - -#: forum/views/writers.py:98 -#, python-format -msgid "Your question is pending until you %s." -msgstr "" - -#: forum/views/writers.py:99 forum/views/writers.py:268 -msgid "validate your email" -msgstr "" - -#: forum/views/writers.py:129 -#, fuzzy -msgid "Converted to question" -msgstr "修改问题" - -#: forum/views/writers.py:267 -#, python-format -msgid "Your answer is pending until you %s." -msgstr "" - -#: forum_modules/akismet/settings.py:7 -msgid "WordPress API key" -msgstr "" - -#: forum_modules/akismet/settings.py:8 -msgid "" -"Your WordPress API key. You can get one at <a href='http://wordpress." -"com/'>http://wordpress.com/</a>" -msgstr "" - -#: forum_modules/akismet/settings.py:12 -#, fuzzy -msgid "Minimum reputation to not have your posts checked" -msgstr "用户社区积分" - -#: forum_modules/akismet/settings.py:13 -msgid "" -"The minimum reputation a user must have so that when they post a question, " -"answer or comment it is not checked for spam." -msgstr "" - -#: forum_modules/akismet/startup.py:52 -#, python-format -msgid "Sorry, but akismet thinks your %s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:3 -msgid "Akismet message" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:7 -#, python-format -msgid "Akismet believes your %(action_name)s is spam." -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:10 -#, python-format -msgid "" -"\n" -"We're sorry, but Akismet believes your %(action_name)s is spam.<br />\n" -"If you believe this is an error, please contact the forum administrator.\n" -msgstr "" - -#: forum_modules/akismet/templates/foundspam.html:30 -msgid "Submit" -msgstr "" - -#: forum_modules/default_badges/badges.py:16 -#, fuzzy, python-format -msgid "Asked a question with %s views" -msgstr "我è¦æé—®" - -#: forum_modules/default_badges/badges.py:24 -#, fuzzy -msgid "Popular Question" -msgstr "现在æé—®" - -#: forum_modules/default_badges/badges.py:30 -#, fuzzy -msgid "Notable Question" -msgstr "全部问题" - -#: forum_modules/default_badges/badges.py:35 -#, fuzzy -msgid "Famous Question" -msgstr "问题列表" - -#: forum_modules/default_badges/badges.py:54 -#, fuzzy, python-format -msgid "Question voted up %s times" -msgstr "该用户投的赞æˆç¥¨æ€»æ•°" - -#: forum_modules/default_badges/badges.py:58 -#, fuzzy -msgid "Nice Question" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum_modules/default_badges/badges.py:63 -#, fuzzy -msgid "Good Question" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum_modules/default_badges/badges.py:68 -#, fuzzy -msgid "Great Question" -msgstr "给任何问题整ç†æ ‡ç¾" - -#: forum_modules/default_badges/badges.py:77 -#, fuzzy, python-format -msgid "Answer voted up %s times" -msgstr "该用户投的赞æˆç¥¨æ€»æ•°" - -#: forum_modules/default_badges/badges.py:81 -#, fuzzy -msgid "Nice Answer" -msgstr "当å‰æ€»ç¥¨æ•°" - -#: forum_modules/default_badges/badges.py:86 -#, fuzzy -msgid "Good Answer" -msgstr "今日剩余投票数" - -#: forum_modules/default_badges/badges.py:91 -#, fuzzy -msgid "Great Answer" -msgstr "当å‰æ€»ç¥¨æ•°" - -#: forum_modules/default_badges/badges.py:100 -#, fuzzy, python-format -msgid "Question favorited by %s users" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum_modules/default_badges/badges.py:108 -#, fuzzy -msgid "Favorite Question" -msgstr "收è—" - -#: forum_modules/default_badges/badges.py:113 -#, fuzzy -msgid "Stellar Question" -msgstr "还有其他问题?" - -#: forum_modules/default_badges/badges.py:119 -msgid "Disciplined" -msgstr "" - -#: forum_modules/default_badges/badges.py:120 -#, python-format -msgid "Deleted own post with score of %s or higher" -msgstr "" - -#: forum_modules/default_badges/badges.py:128 -msgid "Peer Pressure" -msgstr "" - -#: forum_modules/default_badges/badges.py:129 -#, python-format -msgid "Deleted own post with score of %s or lower" -msgstr "" - -#: forum_modules/default_badges/badges.py:139 -msgid "Critic" -msgstr "" - -#: forum_modules/default_badges/badges.py:140 -#, fuzzy -msgid "First down vote" -msgstr "投å对票" - -#: forum_modules/default_badges/badges.py:150 -#, fuzzy -msgid "Supporter" -msgstr "投赞æˆç¥¨" - -#: forum_modules/default_badges/badges.py:151 -#, fuzzy -msgid "First up vote" -msgstr "投赞æˆç¥¨" - -#: forum_modules/default_badges/badges.py:168 -msgid "Citizen Patrol" -msgstr "" - -#: forum_modules/default_badges/badges.py:169 -msgid "First flagged post" -msgstr "" - -#: forum_modules/default_badges/badges.py:173 -msgid "Organizer" -msgstr "" - -#: forum_modules/default_badges/badges.py:174 -msgid "First retag" -msgstr "" - -#: forum_modules/default_badges/badges.py:178 -#, fuzzy -msgid "Editor" -msgstr "编辑" - -#: forum_modules/default_badges/badges.py:179 -msgid "First edit" -msgstr "" - -#: forum_modules/default_badges/badges.py:183 -msgid "Scholar" -msgstr "" - -#: forum_modules/default_badges/badges.py:184 -#, fuzzy -msgid "First accepted answer on your own question" -msgstr "ä¸æ˜¯ä¸€ä¸ªå¯ä»¥å›žç”的“问题â€" - -#: forum_modules/default_badges/badges.py:188 -msgid "Cleanup" -msgstr "" - -#: forum_modules/default_badges/badges.py:189 -msgid "First rollback" -msgstr "" - -#: forum_modules/default_badges/badges.py:195 -msgid "Autobiographer" -msgstr "" - -#: forum_modules/default_badges/badges.py:196 -#, fuzzy -msgid "Completed all user profile fields" -msgstr "完æˆä¸ªäººæ‰€æœ‰èµ„æ–™" - -#: forum_modules/default_badges/badges.py:209 -msgid "Civic Duty" -msgstr "" - -#: forum_modules/default_badges/badges.py:210 -#, python-format -msgid "Voted %s times" -msgstr "" - -#: forum_modules/default_badges/badges.py:220 -#, fuzzy -msgid "Pundit" -msgstr "编辑" - -#: forum_modules/default_badges/badges.py:221 -#, fuzzy, python-format -msgid "Left %s comments" -msgstr "评论" - -#: forum_modules/default_badges/badges.py:231 -msgid "Self Learner" -msgstr "" - -#: forum_modules/default_badges/badges.py:232 -#, python-format -msgid "Answered your own question with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:244 -msgid "Strunk & White" -msgstr "" - -#: forum_modules/default_badges/badges.py:245 -#, fuzzy, python-format -msgid "Edited %s entries" -msgstr "修改回ç”" - -#: forum_modules/default_badges/badges.py:255 -msgid "Student" -msgstr "" - -#: forum_modules/default_badges/badges.py:256 -msgid "Asked first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:267 -#, fuzzy -msgid "Teacher" -msgstr "æœç´¢" - -#: forum_modules/default_badges/badges.py:268 -msgid "Answered first question with at least one up vote" -msgstr "" - -#: forum_modules/default_badges/badges.py:280 -msgid "Enlightened" -msgstr "" - -#: forum_modules/default_badges/badges.py:281 -#, python-format -msgid "First answer was accepted with at least %s up votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:292 -msgid "Guru" -msgstr "" - -#: forum_modules/default_badges/badges.py:293 -#, fuzzy, python-format -msgid "Accepted answer and voted up %s times" -msgstr "该回ç”总共有%d个投票" - -#: forum_modules/default_badges/badges.py:304 -#, fuzzy -msgid "Necromancer" -msgstr "撤销投票" - -#: forum_modules/default_badges/badges.py:305 -#, python-format -msgid "" -"Answered a question more than %(dif_days)s days later with at least " -"%(up_votes)s votes" -msgstr "" - -#: forum_modules/default_badges/badges.py:317 -msgid "Taxonomist" -msgstr "" - -#: forum_modules/default_badges/badges.py:318 -#, fuzzy, python-format -msgid "Created a tag used by %s questions" -msgstr "最新问题" - -#: forum_modules/default_badges/badges.py:326 -#, fuzzy -msgid "Validated Email" -msgstr "更新于" - -#: forum_modules/default_badges/badges.py:327 -msgid "User who has validated email associated to the account" -msgstr "" - -#: forum_modules/default_badges/settings.py:6 -msgid "Popular Question views" -msgstr "" - -#: forum_modules/default_badges/settings.py:7 -msgid "" -"\n" -"Number of question views required to award a Popular Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:12 -#, fuzzy -msgid "Notable Question views" -msgstr "全部问题" - -#: forum_modules/default_badges/settings.py:13 -msgid "" -"\n" -"Number of question views required to award a Notable Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:18 -#, fuzzy -msgid "Famous Question views" -msgstr "问题列表" - -#: forum_modules/default_badges/settings.py:19 -msgid "" -"\n" -"Number of question views required to award a Famous Question badge to the " -"question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:24 -#, fuzzy -msgid "Nice Answer up votes" -msgstr "当å‰æ€»ç¥¨æ•°" - -#: forum_modules/default_badges/settings.py:25 -msgid "" -"\n" -"Number of up votes required to award a Nice Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:30 -#, fuzzy -msgid "Nice Question up votes" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum_modules/default_badges/settings.py:31 -msgid "" -"\n" -"Number of up votes required to award a Nice Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:36 -#, fuzzy -msgid "Good Answer up votes" -msgstr "今日剩余投票数" - -#: forum_modules/default_badges/settings.py:37 -msgid "" -"\n" -"Number of up votes required to award a Good Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:42 -#, fuzzy -msgid "Good Question up votes" -msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#: forum_modules/default_badges/settings.py:43 -msgid "" -"\n" -"Number of up votes required to award a Good Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:48 -#, fuzzy -msgid "Great Answer up votes" -msgstr "当å‰æ€»ç¥¨æ•°" - -#: forum_modules/default_badges/settings.py:49 -msgid "" -"\n" -"Number of up votes required to award a Great Answer badge to the answer " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:54 -#, fuzzy -msgid "Great Question up votes" -msgstr "给任何问题整ç†æ ‡ç¾" - -#: forum_modules/default_badges/settings.py:55 -msgid "" -"\n" -"Number of up votes required to award a Great Question badge to the question " -"author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:60 -#, fuzzy -msgid "Favorite Question favorite count" -msgstr "收è—" - -#: forum_modules/default_badges/settings.py:61 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Favorite Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:66 -msgid "Stellar Question favorite count" -msgstr "" - -#: forum_modules/default_badges/settings.py:67 -msgid "" -"\n" -"How many times a question needs to be favorited by other users to award a " -"Stellar Question badge to the question author\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:72 -msgid "Disciplined minimum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:73 -msgid "" -"\n" -"Minimum score a question needs to have to award the Disciplined badge to an " -"author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:78 -msgid "Peer Pressure maximum score" -msgstr "" - -#: forum_modules/default_badges/settings.py:79 -msgid "" -"\n" -"Maximum score a question needs to have to award the Peer Pressure badge to " -"an author of a question who deletes it.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:84 -msgid "Civic Duty votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:85 -msgid "" -"\n" -"Number of votes an user needs to cast to be awarded the Civic Duty badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:90 -#, fuzzy -msgid "Pundit number of comments" -msgstr "当å‰æ€»ç¥¨æ•°" - -#: forum_modules/default_badges/settings.py:91 -msgid "" -"\n" -"Number of comments an user needs to post to be awarded the Pundit badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:96 -msgid "Self Learner up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:97 -msgid "" -"\n" -"Number of up votes an answer from the question author needs to have for the " -"author to be awarded the Self Learner badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:102 -msgid "Strunk and White updates" -msgstr "" - -#: forum_modules/default_badges/settings.py:103 -msgid "" -"\n" -"Number of question or answer updates an user needs to make to be awarded the " -"Strunk & White badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:108 -msgid "Enlightened up votes" -msgstr "" - -#: forum_modules/default_badges/settings.py:109 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Enlightened badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:114 -#, fuzzy -msgid "Guru up votes" -msgstr "票数" - -#: forum_modules/default_badges/settings.py:115 -msgid "" -"\n" -"Number of up votes an accepted answer needs to have for the author to be " -"awarded the Guru badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:120 -#, fuzzy -msgid "Necromancer up votes" -msgstr "撤销投票" - -#: forum_modules/default_badges/settings.py:121 -msgid "" -"\n" -"Number of up votes an answer needs to have for the author to be awarded the " -"Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:126 -msgid "Necromancer difference in days" -msgstr "" - -#: forum_modules/default_badges/settings.py:127 -msgid "" -"\n" -"Difference in days betwen the posted date of a question and an answer for " -"the answer author to be awarded the Necromancer badge.\n" -msgstr "" - -#: forum_modules/default_badges/settings.py:132 -msgid "Taxonomist usage count" -msgstr "" - -#: forum_modules/default_badges/settings.py:133 -msgid "" -"\n" -"How many usages a tag needs to have for the tag creator to be awarded the " -"Taxonomist badge. \n" -msgstr "" - -#: forum_modules/exporter/exporter.py:191 -msgid "Compressing xml files" -msgstr "" - -#: forum_modules/exporter/exporter.py:198 -msgid "Importing uploaded files" -msgstr "" - -#: forum_modules/exporter/exporter.py:203 -msgid "Importing skins folder" -msgstr "" - -#: forum_modules/exporter/exporter.py:207 -#, fuzzy -msgid "Writing inf file." -msgstr "用户å" - -#: forum_modules/exporter/exporter.py:234 -msgid "Saving backup file" -msgstr "" - -#: forum_modules/exporter/exporter.py:266 -#: forum_modules/exporter/importer.py:235 -msgid "Queued" -msgstr "" - -#: forum_modules/exporter/exporter.py:269 -#: forum_modules/exporter/importer.py:238 -#, fuzzy -msgid "Starting" -msgstr "修改问题" - -#: forum_modules/exporter/exporter.py:290 -#, python-format -msgid "Exporting %s" -msgstr "" - -#: forum_modules/exporter/exporter.py:291 -msgid "Exporting" -msgstr "" - -#: forum_modules/exporter/exporter.py:295 -msgid "Writing temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:296 -#, python-format -msgid "Writing %s temp file" -msgstr "" - -#: forum_modules/exporter/exporter.py:301 -#: forum_modules/exporter/exporter.py:319 -#: forum_modules/exporter/importer.py:270 -#, fuzzy -msgid "Done" -msgstr "投å对票" - -#: forum_modules/exporter/exporter.py:313 -msgid "Compressing files" -msgstr "" - -#: forum_modules/exporter/exporter.py:433 -#: forum_modules/exporter/importer.py:440 -#, fuzzy -msgid "Nodes" -msgstr "æœ€å…ˆåŠ å…¥" - -#: forum_modules/exporter/exporter.py:484 -#: forum_modules/exporter/importer.py:543 -#, fuzzy -msgid "Actions" -msgstr "城市" - -#: forum_modules/exporter/exporter.py:530 -#: forum_modules/exporter/importer.py:632 -#, fuzzy -msgid "Awards" -msgstr "所有奖牌" - -#: forum_modules/exporter/exporter.py:538 -#, fuzzy -msgid "Settings" -msgstr "设置" - -#: forum_modules/exporter/forms.py:5 -#, fuzzy -msgid "tar.gz" -msgstr "æ ‡ç¾" - -#: forum_modules/exporter/forms.py:6 -msgid "zip" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format" -msgstr "" - -#: forum_modules/exporter/forms.py:11 -msgid "File format of the compressed backup" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Anonymized data" -msgstr "" - -#: forum_modules/exporter/forms.py:12 -msgid "Don't export user data and make all content anonymous" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Uploaded files" -msgstr "" - -#: forum_modules/exporter/forms.py:13 -msgid "Include uploaded files in the backup" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Skins folder" -msgstr "" - -#: forum_modules/exporter/forms.py:14 -msgid "Include skins folder in the backup" -msgstr "" - -#: forum_modules/exporter/importer.py:264 -#, python-format -msgid "Importing %s" -msgstr "" - -#: forum_modules/exporter/importer.py:265 -msgid "Importing" -msgstr "" - -#: forum_modules/exporter/settings.py:7 -#, fuzzy -msgid "Exporter settings" -msgstr "设置" - -#: forum_modules/exporter/settings.py:7 -#, fuzzy -msgid "Data export settings" -msgstr "设置" - -#: forum_modules/exporter/settings.py:10 -msgid "Backups storage" -msgstr "" - -#: forum_modules/exporter/settings.py:11 -msgid "A folder to keep your backups organized." -msgstr "" - -#: forum_modules/exporter/urls.py:8 forum_modules/exporter/urls.py:10 -msgid "exporter/" -msgstr "" - -#: forum_modules/exporter/urls.py:8 -msgid "state/" -msgstr "" - -#: forum_modules/exporter/urls.py:9 -msgid "running/" -msgstr "" - -#: forum_modules/exporter/urls.py:10 -#, fuzzy -msgid "download/" -msgstr "投å对票" - -#: forum_modules/exporter/views.py:21 forum_modules/exporter/views.py:69 -msgid "exporter" -msgstr "" - -#: forum_modules/exporter/views.py:21 -msgid "XML data export" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data exporter" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:9 -#: forum_modules/exporter/templates/running.html:9 -msgid "Export database to XML format" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:14 -msgid "Available backups" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:25 -msgid "Start new backup" -msgstr "" - -#: forum_modules/exporter/templates/exporter.html:32 -msgid "Start" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:6 -#: forum_modules/exporter/templates/running.html:6 -msgid "XML data importer" -msgstr "" - -#: forum_modules/exporter/templates/importer.html:9 -msgid "Import data from dump file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:9 -msgid "Restore data from a previous export" -msgstr "" - -#: forum_modules/exporter/templates/running.html:60 -msgid "Skipped" -msgstr "" - -#: forum_modules/exporter/templates/running.html:96 -msgid "Your backup is ready to be downloaded." -msgstr "" - -#: forum_modules/exporter/templates/running.html:100 -msgid "All data sucessfully imported." -msgstr "" - -#: forum_modules/exporter/templates/running.html:105 -msgid "An error has occurred during the export proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:107 -msgid "An error has occurred during the import proccess" -msgstr "" - -#: forum_modules/exporter/templates/running.html:110 -msgid "Please check the log file for a full stack trace." -msgstr "" - -#: forum_modules/exporter/templates/running.html:135 -msgid "Please wait while we prepare your backup file to download." -msgstr "" - -#: forum_modules/exporter/templates/running.html:137 -msgid "Please wait while we import your data." -msgstr "" - -#: forum_modules/exporter/templates/running.html:139 -msgid "" -"\n" -" Started <span id=\"time_started\"></span>\n" -" " -msgstr "" - -#: forum_modules/exporter/templates/running.html:143 -msgid "Download file" -msgstr "" - -#: forum_modules/exporter/templates/running.html:148 -msgid "Total progress" -msgstr "" - -#: forum_modules/exporter/templates/running.html:158 -msgid " of " -msgstr "" - -#: forum_modules/facebookauth/authentication.py:59 -msgid "" -"Something wrond happened during Facebook authentication, administrators will " -"be notified" -msgstr "" - -#: forum_modules/localauth/forms.py:83 -msgid "Please enter valid username and password (both are case-sensitive)." -msgstr "" - -#: forum_modules/localauth/forms.py:87 -#, fuzzy -msgid "Login failed." -msgstr "用户å" - -#: forum_modules/localauth/forms.py:91 -msgid "This user is not a valid user" -msgstr "" - -#: forum_modules/localauth/forms.py:94 -#, fuzzy -msgid "Please enter username and password" -msgstr "使用å¸å·å¯†ç 登录" - -#: forum_modules/localauth/forms.py:96 -#, fuzzy -msgid "Please enter your password" -msgstr "é‡è®¾å¯†ç " - -#: forum_modules/localauth/forms.py:98 -#, fuzzy -msgid "Please enter user name" -msgstr "请帮助我们回ç”" - -#: forum_modules/localauth/urls.py:7 -msgid "local/" -msgstr "" - -#: forum_modules/localauth/templates/loginform.html:4 -#, fuzzy -msgid "Enter your local user name and password" -msgstr "使用å¸å·å¯†ç 登录" - -#: forum_modules/localauth/templates/loginform.html:4 -#, fuzzy -msgid "or select your external provider above" -msgstr "1)请选择您的å¸å·ç±»ï¼š" - -#: forum_modules/localauth/templates/loginform.html:8 -#, fuzzy -msgid "Login name" -msgstr "马上登录" - -#: forum_modules/localauth/templates/loginform.html:16 -#, fuzzy -msgid "Password" -msgstr "密ç " - -#: forum_modules/localauth/templates/loginform.html:27 -#, fuzzy -msgid "Create account" -msgstr "创建å¸å·" - -#: forum_modules/localauth/templates/loginform.html:27 -msgid "Forgot your password?" -msgstr "忘记密ç ?" - -#: forum_modules/oauthauth/consumer.py:36 -msgid "Error, the oauth token is not on the server" -msgstr "" - -#: forum_modules/oauthauth/consumer.py:41 -msgid "Something went wrong! Auth tokens do not match" -msgstr "" - -#: forum_modules/oauthauth/settings.py:6 -#, fuzzy -msgid "Twitter consumer key" -msgstr "è´¦å·:" - -#: forum_modules/oauthauth/settings.py:7 -msgid "" -"\n" -"Get this key at the <a href=\"http://twitter.com/apps/\">Twitter apps</a> to " -"enable\n" -"authentication in your site through Twitter.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:14 -msgid "Twitter consumer secret" -msgstr "" - -#: forum_modules/oauthauth/settings.py:15 -msgid "" -"\n" -"This your Twitter consumer secret that you'll get in the same place as the " -"consumer key.\n" -msgstr "" - -#: forum_modules/oauthauth/settings.py:21 -msgid "Twitter auto-callback redirect" -msgstr "" - -#: forum_modules/oauthauth/settings.py:22 -msgid "" -"\n" -"Automatically redirect to the Twitter authentication done page, pass the " -"oauth_callback parameter.\n" -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:393 -#, python-format -msgid "Content purported to be compressed with %s but failed to decompress." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:503 -#, python-format -msgid "Unsupported value for qop: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:506 -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:567 -#, python-format -msgid "Unsupported value for algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:564 -msgid "The challenge doesn't contain a server nonce, or this one is empty." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:570 -#, python-format -msgid "Unsupported value for pw-algorithm: %s." -msgstr "" - -#: forum_modules/oauthauth/lib/oauth2/httplib2/__init__.py:1211 -msgid "Redirected but the response is missing a Location: header." -msgstr "" - -#: forum_modules/openidauth/consumer.py:61 -msgid "Sorry, but your input is not a valid OpenId" -msgstr "" - -#: forum_modules/openidauth/consumer.py:151 -msgid "The OpenId authentication request was canceled" -msgstr "" - -#: forum_modules/openidauth/consumer.py:153 -msgid "The OpenId authentication failed: " -msgstr "" - -#: forum_modules/openidauth/consumer.py:155 -msgid "Setup needed" -msgstr "" - -#: forum_modules/openidauth/consumer.py:157 -msgid "The OpenId authentication failed with an unknown status: " -msgstr "" - -#: forum_modules/openidauth/templates/openidurl.html:7 -#, fuzzy -msgid "Enter your OpenId Url" -msgstr "使用OpenID注册" - -#: forum_modules/project_badges/badges.py:9 -msgid "Bug Buster" -msgstr "" - -#: forum_modules/project_badges/badges.py:10 -#, python-format -msgid "Got %s upvotes in a question tagged with \"bug\"" -msgstr "" - -#: forum_modules/recaptcha/formfield.py:20 -msgid "Invalid captcha" -msgstr "" - -#: forum_modules/sximporter/importer.py:159 -#, fuzzy, python-format -msgid "user-%(id)s" -msgstr "用户" - -#: forum_modules/sximporter/importer.py:169 -#, python-format -msgid "user-%(id)s (google)" -msgstr "" - -#: forum_modules/sximporter/importer.py:173 -#, python-format -msgid "user-%(id)s (yahoo)" -msgstr "" - -#: forum_modules/sximporter/urls.py:8 -msgid "sximporter/" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:7 -msgid "SX Importer" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:10 -msgid "Welcome to Stack Exchange dump importer." -msgstr "" - -#: forum_modules/sximporter/templates/page.html:17 -msgid "Your user id in stack exchange" -msgstr "" - -#: forum_modules/sximporter/templates/page.html:21 -msgid "Merge users with same user name and email" -msgstr "" - -#: forum_modules/updates/base.py:154 -msgid "Wasn't able to check to the update server." -msgstr "" - -#: forum_modules/updates/base.py:163 -msgid "Wasn't able to retreive the update messages." -msgstr "" - -#: forum_modules/updates/base.py:175 -#, python-format -msgid "%d update messages have been downloaded." -msgstr "" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "Updater Settings" -msgstr "个问题" - -#: forum_modules/updates/settings.py:8 -#, fuzzy -msgid "OSQA Update Checker Settings." -msgstr "设置" - -#: forum_modules/updates/settings.py:12 -msgid "" -"\n" -"Use the OSQA update server recieve notifications about the latest updates.\n" -msgstr "" - -#: forum_modules/updates/urls.py:8 -#, fuzzy -msgid "updater/" -msgstr "更新于" - -#: forum_modules/updates/urls.py:8 -msgid "check/" -msgstr "" - -#: forum_modules/updates/views.py:8 -#, fuzzy -msgid "updater" -msgstr "更新于" - -#: forum_modules/updates/views.py:8 -#: forum_modules/updates/templates/index.html:38 -#, fuzzy -msgid "Update Checker" -msgstr "æ›´æ–°" - -#: forum_modules/updates/templates/index.html:22 -msgid "Checking for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:41 -msgid "Use the OSQA update server to check for updates" -msgstr "" - -#: forum_modules/updates/templates/index.html:46 -msgid "Check for Updates" -msgstr "" - -#: locale/phrases.py:1 -msgid "Test Phrase 1" -msgstr "" - -#: locale/phrases.py:2 -msgid "Test Phrase 2" -msgstr "" - -#: locale/phrases.py:3 -msgid "Test Phrase 3" -msgstr "" - -#: locale/phrases.py:4 -msgid "Test Phrase n" -msgstr "" - -#~ msgid "Change email " -#~ msgstr "æ›´æ¢ç”µå邮件" - -#~ msgid "Change OpenID" -#~ msgstr "æ›´æ¢OpenID地å€" - -#~ msgid "Delete account" -#~ msgstr "åˆ é™¤å¸å·" - -#, fuzzy -#~ msgid "Please only give an answer, no discussions." -#~ msgstr "建议您æ的问题是å¯ä»¥è¢«ç”å¤çš„,而ä¸ä»…仅是å¯ä»¥è®¨è®ºã€‚" - -#~ msgid "Existing account" -#~ msgstr "å·²ç»å˜åœ¨çš„用户" - -#~ msgid "user name" -#~ msgstr "用户å" - -#~ msgid "password" -#~ msgstr "密ç " - -#~ msgid "Register" -#~ msgstr "确认" - -#~ msgid "duplicate question" -#~ msgstr "完全é‡å¤çš„问题" - -# chinese translation is domain specific -#, fuzzy -#~ msgid "question is off-topic or not relevant" -#~ msgstr "ä¸æ˜¯ç¼–程技术问题" - -#~ msgid "too subjective and argumentative" -#~ msgstr "太主观性ã€å¼•èµ·äº‰åµçš„问题" - -#~ msgid "is not an answer to the question" -#~ msgstr "ä¸æ˜¯ä¸€ä¸ªå¯ä»¥å›žç”的“问题â€" - -#~ msgid "the question is answered, right answer was accepted" -#~ msgstr "问题已ç»è§£å†³ï¼Œå·²å¾—到æ£ç¡®ç”案" - -#~ msgid "problem is not reproducible or outdated" -#~ msgstr "å·²ç»è¿‡æ—¶ã€ä¸å¯é‡çŽ°çš„问题" - -#~ msgid "question contains offensive inappropriate, or malicious remarks" -#~ msgstr "æ¶æ„言论" - -#~ msgid "spam or advertising" -#~ msgstr "垃圾广告" - -#~ msgid "edited question" -#~ msgstr "修改问题" - -#~ msgid "edited answer" -#~ msgstr "修改回ç”" - -#~ msgid "received award" -#~ msgstr "获奖" - -#~ msgid "marked best answer" -#~ msgstr "æ ‡è®°æœ€ä½³ç”案" - -#, fuzzy -#~ msgid "upvote canceled" -#~ msgstr "投赞æˆç¥¨" - -#, fuzzy -#~ msgid "downvote canceled" -#~ msgstr "投å对票" - -#~ msgid "deleted answer" -#~ msgstr "åˆ é™¤å›žç”" - -#~ msgid "marked offensive" -#~ msgstr "æ ‡è®°åžƒåœ¾å¸–" - -#~ msgid "updated tags" -#~ msgstr "æ›´æ–°æ ‡ç¾" - -#~ msgid "selected favorite" -#~ msgstr "收è—" - -#~ msgid "completed user profile" -#~ msgstr "完æˆä¸ªäººæ‰€æœ‰èµ„æ–™" - -#, fuzzy -#~ msgid "question_answered" -#~ msgstr "æ问时间" - -#, fuzzy -#~ msgid "question_commented" -#~ msgstr "æ问时间" - -#~ msgid "[closed]" -#~ msgstr "[已关é—]" - -#~ msgid "initial version" -#~ msgstr "åˆå§‹ç‰ˆæœ¬" - -#~ msgid "please use 5 tags or less" -#~ msgstr "最多åªèƒ½æœ‰5ä¸ªæ ‡ç¾" - -#~ msgid "tags must be shorter than 20 characters" -#~ msgstr "æ¯ä¸ªæ ‡ç¾çš„长度ä¸è¶…过20" - -#, fuzzy -#~ msgid "command/" -#~ msgstr "评论" - -#, fuzzy -#~ msgid "feedback/" -#~ msgstr "问题å馈" - -#, fuzzy -#~ msgid "marked an answer" -#~ msgstr "æ ‡è®°æœ€ä½³ç”案" - -#, fuzzy -#~ msgid "edited an answer" -#~ msgstr "编辑任何问题或ç”案" - -#, fuzzy -#~ msgid "received badge" -#~ msgstr "获奖" - -#~ msgid "" -#~ "the page you tried to visit is protected or you don't have sufficient " -#~ "points, see" -#~ msgstr "访问的页é¢è¢«ä¿æŠ¤æˆ–ä½ çš„ç§¯åˆ†ä¸å¤Ÿï¼Œå‚è§" - -#, fuzzy -#~ msgid "this answer has been accepted to be correct" -#~ msgstr "有ç”案已被接å—为æ£ç¡®ç”案" - -#, fuzzy -#~ msgid "login to post question info" -#~ msgstr "" -#~ "问题按<strong>æ问时间</strong>显示排åºã€‚æ–°åŠ å…¥çš„é—®é¢˜å°†æ˜¾ç¤ºåœ¨æœ€å‰é¢ã€‚" - -#~ msgid "[publication date]" -#~ msgstr "ã€å‡ºç‰ˆæ—¥æœŸã€‘" - -#~ msgid "[price]" -#~ msgstr "ã€ä»·æ ¼ã€‘" - -#~ msgid "[tags]" -#~ msgstr "ã€æ ‡ç¾ã€‘" - -#~ msgid "author blog" -#~ msgstr "作者åšå®¢" - -#~ msgid "book directory" -#~ msgstr "书ç±ç›®å½•" - -#~ msgid "buy online" -#~ msgstr "网上è´ä¹°" - -#~ msgid "reader questions" -#~ msgstr "ç”读者问" - -#~ msgid "ask the author" -#~ msgstr "å‘作者æé—®" - -#~ msgid "this question was selected as favorite" -#~ msgstr "这个问题被" - -#~ msgid "number of times" -#~ msgstr "ä½ç”¨æˆ·æ”¶è—" - -#~ msgid "the answer has been accepted to be correct" -#~ msgstr "有ç”案已被接å—为æ£ç¡®ç”案" - -#~ msgid "subscribe to book RSS feed" -#~ msgstr "RSS订阅该图书最新问题" - -#~ msgid "Frequently Asked Questions " -#~ msgstr "常è§é—®é¢˜" - -#~ msgid "What kinds of questions can I ask here?" -#~ msgstr "我å¯ä»¥åœ¨è¿™é‡Œæé—®ä»€ä¹ˆæ ·çš„é—®é¢˜ï¼Ÿ" - -#, fuzzy -#~ msgid "" -#~ "Most importantly - questions should be <strong>relevant</strong> to this " -#~ "community." -#~ msgstr "æ¯«æ— ç–‘é—®ï¼Œé¦–å…ˆå¿…é¡»æ˜¯<span class=\"yellowbg\">技术编程问题ï¼</span>" - -#~ msgid "" -#~ "Before asking the question - please make sure to use search to see " -#~ "whether your question has alredy been answered." -#~ msgstr "" -#~ "æ问之å‰ï¼Œå……分利用系统的自动查找ã€æ ‡ç¾å’Œæœç´¢ï¼Œçœ‹çœ‹æ˜¯å¦å·²ç»æœ‰ä¸€æ ·çš„问题并有" -#~ "了ç”案。" - -#~ msgid "What questions should I avoid asking?" -#~ msgstr "ä»€ä¹ˆæ ·çš„é—®é¢˜æˆ‘ä¸è¯¥åœ¨è¿™é‡Œæ问?" - -#~ msgid "" -#~ "Please avoid asking questions that are not relevant to this community, " -#~ "too subjective and argumentative." -#~ msgstr "" -#~ "<span class=\"yellowbg\">与程åºå‘˜æˆ–æŠ€æœ¯æ— å…³çš„ï¼Œå¼•èµ·äº‰åµæˆ–太过于主观性ç‰è¿" -#~ "背社区宗旨的内容。</span>本站建立是为了帮助大众程åºå‘˜è§£å†³å®žé™…技术问题,我" -#~ "们需è¦å®žé™…的问题ï¼" - -#~ msgid "What should I avoid in my answers?" -#~ msgstr "ä»€ä¹ˆæ ·çš„å›žç”是ä¸å—欢迎的?" - -#~ msgid "" -#~ "is a Q&A site, not a discussion group. Therefore - please avoid having " -#~ "discussions in your answers, comment facility allows some space for brief " -#~ "discussions." -#~ msgstr "" -#~ "希望用户æ供针对æ问的技术回ç”,å¯ä»¥æ˜¯è¿›ä¸€æ¥äº†è§£é—®é¢˜å®žè´¨ï¼Œç»™äºˆå‚考方案,或" -#~ "完全解决问题的回ç”。我们希望通过问ç”çš„å½¢å¼è§£å†³ç”¨æˆ·çš„å®žé™…é—®é¢˜ã€‚å› æ¤ï¼Œ<span " -#~ "class=\"yellowbg\">我们ä¸>欢迎在回ç”ä¸å‡ºçŽ°ä¸æ˜¯å›žç”问题的内容,包括针对他人" -#~ "回ç”çš„è®¨è®ºï¼Œå’Œå…¶ä»–æ— æ„义的浪费网络资æºè¡Œä¸º</span>。CNProg建议您使用<span " -#~ "class=\"yellowbg\">评论</span>功能æ¥è®¨è®ºä½ çš„æ„è§å’Œæƒ³æ³•ã€‚" - -#~ msgid "Who moderates this community?" -#~ msgstr "è°æ˜¯ç¤¾åŒºçš„管ç†å‘˜ï¼Ÿ" - -#~ msgid "The short answer is: <strong>you</strong>." -#~ msgstr "ç”案是:<span class=\"yellowbg\">æ¯ä¸ªç”¨æˆ·ã€‚</span>" - -#~ msgid "This website is moderated by the users." -#~ msgstr "ç¤¾åŒºæ²¡æœ‰ä¸¥æ ¼æ„义上的管ç†å‘˜èº«ä»½" - -#~ msgid "" -#~ "The reputation system allows users earn the authorization to perform a " -#~ "variety of moderation tasks." -#~ msgstr "" -#~ "通过积分è¿ä½œï¼Œ<span class=\"yellowbg\">æ¯ä¸ªç”¨æˆ·éƒ½æœ‰æƒé™åˆ›å»ºæ ‡ç¾ï¼Œè¿›è¡Œå¯¹æ‰€" -#~ "有问题ã€å›žç”的投票ã€ç¼–辑ã€å…³é—ç‰æ“作。</span>" - -#~ msgid "How does reputation system work?" -#~ msgstr "什么是社区积分?" - -#, fuzzy -#~ msgid "Rep system summary" -#~ msgstr "更新概è¦ï¼š" - -#, fuzzy -#~ msgid "use tags" -#~ msgstr "æ ‡è®°åžƒåœ¾å¸–" - -#~ msgid "edit community wiki questions" -#~ msgstr "编辑wiki类问题" - -#~ msgid "edit any answer" -#~ msgstr "编辑任何问题或ç”案" - -#, fuzzy -#~ msgid "open any closed question" -#~ msgstr "打开关é—任何人的问题" - -#~ msgid "delete any comment" -#~ msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªè¯„è®º" - -#~ msgid "delete any questions and answers and perform other moderation tasks" -#~ msgstr "åˆ é™¤ä»»ä½•ä¸€ä¸ªé—®é¢˜æˆ–ç”案,åŠå…¶ä»–管ç†åŠŸèƒ½" - -#~ msgid "To register, do I need to create new password?" -#~ msgstr "我需è¦æ³¨å†Œä¸€ä¸ªæ–°ç”¨æˆ·å—?" - -#~ msgid "" -#~ "No, you don't have to. You can login through any service that supports " -#~ "OpenID, e.g. Google, Yahoo, AOL, etc." -#~ msgstr "" -#~ "ä¸éœ€è¦ã€‚社区æ供了OpenID的登录支æŒï¼Œä½ è¦ç”¨Googleã€Yahooç‰ä»»ä½•æ”¯æŒOpenIDç™»" -#~ "录的å¸å·å°±å¯ä»¥ä½¿ç”¨ç³»ç»Ÿã€‚" - -#~ msgid "Why other people can edit my questions/answers?" -#~ msgstr "为什么其他人å¯ä»¥ä¿®æ”¹æˆ‘的问题/回ç”?" - -#~ msgid "Goal of this site is..." -#~ msgstr "CNProg 是为了帮助程åºå‘˜è§£å†³æ›´å¤šé—®é¢˜ï¼Œæ›´åŠ 方便的解决问题。" - -#~ msgid "" -#~ "So questions and answers can be edited like wiki pages by experienced " -#~ "users of this site and this improves the overall quality of the knowledge " -#~ "base content." -#~ msgstr "" -#~ "所以问题和ç”案都是如Wikiä¸€æ ·å¯ç¼–辑的,我们希望社区能帮助用户沉淀ã€ç§¯ç´¯æ›´å¤š" -#~ "有用的知识和ç»éªŒã€‚" - -#~ msgid "If this approach is not for you, we respect your choice." -#~ msgstr "如果您ä¸å–œæ¬¢è¿™ç§æ–¹å¼ï¼Œæˆ‘们尊é‡ä½ 的选择。" - -#, fuzzy -#~ msgid "" -#~ "Please ask your question at %(ask_question_url)s, help make our community " -#~ "better!" -#~ msgstr "如果您对社区还有其他疑问,请一起æ¥å®Œå–„我们的" - -#~ msgid "." -#~ msgstr "。" - -#~ msgid "privacy policy" -#~ msgstr "éšç§æ”¿ç–" - -#, fuzzy -#~ msgid "give feedback" -#~ msgstr "问题å馈" - -#~ msgid "unanswered questions" -#~ msgstr "没有回ç”的问题" - -#, fuzzy -#~ msgid "close date %(closed_at)s" -#~ msgstr "ç”±äºŽä»¥ä¸‹åŽŸå› ï¼Œä½ è¦å…³é—这个问题" - -#~ msgid "question tips" -#~ msgstr "å—欢迎的æé—®" - -#, fuzzy -#~ msgid "please try provide enough details" -#~ msgstr "请详细æ述您的问题。" - -# todo: remove magic numbers from this file -#~ msgid "up to 5 tags, less than 20 characters each" -#~ msgstr "最多5ä¸ªæ ‡ç¾ï¼Œæ¯ä¸ªæ ‡ç¾é•¿åº¦å°äºŽ20个å—符。" - -#, fuzzy -#~ msgid "Subscription" -#~ msgstr "æé—®" - -#~ msgid "all tags - make this empty in english" -#~ msgstr "çš„æ‰€æœ‰æ ‡ç¾" - -#~ msgid "Sorry, looks like we have some errors:" -#~ msgstr "请注æ„以下错误:" - -#, fuzzy -#~ msgid "Email address label" -#~ msgstr "您的电å邮件地å€" - -#~ msgid "Signup" -#~ msgstr "注册å¸å·" - -#, fuzzy -#~ msgid "Create login name and password" -#~ msgstr "使用å¸å·å¯†ç 登录" - -#, fuzzy -#~ msgid "Create Account" -#~ msgstr "创建å¸å·" - -#, fuzzy -#~ msgid "On question " -#~ msgstr "æé—®" - -#, fuzzy -#~ msgid "on your own post(s)" -#~ msgstr "获å–您自己的" - -#, fuzzy -#~ msgid "posted :" -#~ msgstr "投赞æˆç¥¨" - -#~ msgid "update profile" -#~ msgstr "更新我的资料" - -#, fuzzy -#~ msgid "Questions I ask" -#~ msgstr "您æ£åœ¨æµè§ˆçš„问题å«æœ‰ä»¥ä¸‹æ ‡ç¾" - -#, fuzzy -#~ msgid "Questions I comment" -#~ msgstr "问题列表" - -#~ msgid "User profile" -#~ msgstr "用户概览" - -#~ msgid "casted votes" -#~ msgstr "投票" - -#~ msgid "Questions are sorted by the <strong>time of last update</strong>." -#~ msgstr "问题按<strong>最åŽæ›´æ–°æ—¶é—´</strong>显示排åºã€‚" - -#~ msgid "Questions sorted by <strong>number of responses</strong>." -#~ msgstr "问题按<strong>回å¤æ•°é‡</strong>显示排åºã€‚" - -#~ msgid "Questions are sorted by the <strong>number of votes</strong>." -#~ msgstr "问题按<strong>投票数é‡</strong>显示排åºã€‚" - -#, fuzzy -#~ msgid "user profile" -#~ msgstr "用户概览" - -#, fuzzy -#~ msgid "profile - recent activity" -#~ msgstr "最近活动" - -#~ msgid "profile - votes" -#~ msgstr "投票 - 用户资料" - -#~ msgid "profile - user reputation" -#~ msgstr "积分 - 用户资料" - -#~ msgid "profile - favorite questions" -#~ msgstr "æ”¶è— - 用户资料" - -#, fuzzy -#~ msgid "profile - subscriptions" -#~ msgstr "积分 - 用户资料" - -#, fuzzy -#~ msgid "i-names are not supported" -#~ msgstr "基本的HTMLæ ‡ç¾ä¹Ÿæ˜¯æ”¯æŒçš„" - -# minimal length of user name may be language specific -#~ msgid "username too short" -#~ msgstr "用户å太çŸï¼Œè¯·ä½¿ç”¨ä¸‰ä¸ªæˆ–三个以上å—符" - -#~ msgid "this name is already in use - please try anoter" -#~ msgstr "该用户å已被注册,请æ¢ä¸€ä¸ªè¯•è¯•" - -#~ msgid "" -#~ "This email is already registered in our database. Please " -#~ "choose another." -#~ msgstr "该电å邮件已被注册,请选择å¦ä¸€ä¸ªå†è¯•ã€‚" - -#~ msgid "Incorrect username." -#~ msgstr "选择一个用户å" - -#, fuzzy -#~ msgid "signup/" -#~ msgstr "注册å¸å·" - -# todo please check this in chinese -#, fuzzy -#~ msgid "Account deleted." -#~ msgstr "å–消" - -#, fuzzy -#~ msgid "Request for new password" -#~ msgstr "é‡è®¾å¯†ç " - -#~ msgid "site title" -#~ msgstr "CNProg.com" - -#~ msgid "site slogan" -#~ msgstr "程åºå‘˜é—®ç”社区" - -#~ msgid "" -#~ "please use space to separate tags (this enables autocomplete feature)" -#~ msgstr "å¤šä¸ªæ ‡ç¾è¯·ç”¨ç©ºæ ¼é—´éš”-最多5ä¸ªæ ‡ç¾ã€‚(优先使用自动匹é…çš„è‹±æ–‡æ ‡ç¾ã€‚)" - -#~ msgid "responses" -#~ msgstr "回应" - -#~ msgid "profile - responses" -#~ msgstr "回应 - 用户资料" - -#~ msgid "profile - user preferences" -#~ msgstr "设置 - 用户资料" - -#~ msgid "learn more about OpenID" -#~ msgstr "了解更多有关OpenIDçš„ä¿¡æ¯" - -#~ msgid "Email: (won't be shown to anyone)" -#~ msgstr "电å邮件:(ä¸ä¼šå…¬å¼€æ˜¾ç¤ºï¼‰" - -#~ msgid "" -#~ "gold badge descriptionGold badge is very rare. To obtain it you have to " -#~ "show profound knowledge and ability in addition to actively participating " -#~ "in the community. Gold badge is the highest award in this community." -#~ msgstr "" -#~ "金牌是å分罕è§çš„ã€‚ä½ ä¸ä»…è¦å‚与社区的æé—®ã€å›žç”ã€æŠ•ç¥¨ç‰æ´»åŠ¨ï¼Œè€Œä¸”需è¦æœ‰é«˜æ·±" -#~ "的知识和能力æ‰èƒ½èŽ·å¾—。" - -#~ msgid "" -#~ "silver badge descriptionObtaining silver badge requires significant " -#~ "patience. If you got one, you've very significantly contributed to this " -#~ "community" -#~ msgstr "它是ä¸åŒå¯»å¸¸çš„è£èª‰ï¼Œåªè¦ä½ 付出足够的努力就会得到。" - -#~ msgid "Connect with Twitter" -#~ msgstr "åŒæ¥Twitter消æ¯" - -#~ msgid "Twitter password:" -#~ msgstr "密ç :" - -#~ msgid "Send my Questions to Twitter" -#~ msgstr "å‘布我的æ问到我的Twitter" - -#~ msgid "Send my Answers to Twitter" -#~ msgstr "å‘布我的回ç”到我的Twitter" - -#, fuzzy -#~ msgid "" -#~ "bronze badge descriptionIf you are active in this community, you will get " -#~ "this medal - still it is a special honor." -#~ msgstr "é“œç‰Œä¼šåœ¨ä½ æ´»è·ƒäºŽç¤¾åŒºæ—¶äº§ç”Ÿï¼Œå®ƒç›¸å¯¹å®¹æ˜“èŽ·å¾—ï¼Œä½†ä¹Ÿæ˜¯ä¸€ç§ç‰¹æ®Šçš„è£èª‰ã€‚" - -# base_content.html -#~ msgid "congratulations, community gave you a badge" -#~ msgstr "æ喜您,社区给您é¢å‘了奖牌" - -#, fuzzy -#~ msgid "About us" -#~ msgstr "关于本站" - -#~ msgid "my profile" -#~ msgstr "我的资料" - -#~ msgid "last updated questions" -#~ msgstr "最新更新的问题" - -#~ msgid "given to" -#~ msgstr "授予" - -#~ msgid "subscribe to last 30 questions by RSS" -#~ msgstr "RSS订阅最新30个问题" - -#~ msgid "Still looking for more? See" -#~ msgstr "在寻找更多问题å—?请查阅" - -#, fuzzy -#~ msgid "Size per page:" -#~ msgstr "æ¯é¡µæ˜¾ç¤º" - -#~ msgid "" -#~ "remove favorite mark from this question (click again to restore mark)" -#~ msgstr "我è¦æ”¶è—这个问题(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#~ msgid "flag offensive" -#~ msgstr "垃圾帖?" - -#~ msgid "i like this answer (click again to cancel)" -#~ msgstr "这篇帖å有价值(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#~ msgid "i dont like this answer (click again to cancel)" -#~ msgstr "这篇帖å没有价值(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#~ msgid "mark this answer as favorite (click again to undo)" -#~ msgstr "最佳ç”案(å†æ¬¡ç‚¹å‡»å–消æ“作)" - -#~ msgid "Login to answer" -#~ msgstr "登录并回ç”该问题" - -#~ msgid "ago" -#~ msgstr "å‰" - -#, fuzzy -#~ msgid "please ask a relevant question" -#~ msgstr "我è¦æé—®" - -# index.html -#~ msgid "Community wiki" -#~ msgstr "社区Wiki" - -# must have extra space after in english -#, fuzzy -#~ msgid "Browse questions with tag of " -#~ msgstr "查看有关" - -# in unanswered.html and somewhere else -#~ msgid "Have a total of" -#~ msgstr "您æ£åœ¨æµè§ˆæ‰€æœ‰" - -#, fuzzy -#~ msgid "" -#~ "the answer has been commented %(answered_question.comment_count)s times" -#~ msgstr "该回ç”有%dæ¡è¯„论" - -#~ msgid "votes total" -#~ msgstr "个投票" - -#, fuzzy -#~ msgid "this questions was selected as favorite" -#~ msgstr "这个问题被" - -#~ msgid "Change email" -#~ msgstr "æ›´æ¢ç”µå邮件" - -#, fuzzy -#~ msgid "Account: change OpenID URL" -#~ msgstr "æ›´æ¢OpenID地å€" - -#, fuzzy -#~ msgid "Account: change password" -#~ msgstr "修改密ç " - -#, fuzzy -#~ msgid "New password again" -#~ msgstr "å‘é€æ–°å¯†ç " - -#, fuzzy -#~ msgid "" -#~ "Your OpenID is accepted. Please complete this to finish registration." -#~ msgstr "您的OpenIDå¸å·å·²ç»éªŒè¯é€šè¿‡! 请完æˆæœ€åŽä¸€æ¥ - 绑定OpenID到您的å¸å·ã€‚" - -#~ msgid "New account" -#~ msgstr "æ–°å¸å·" - -#~ msgid "User name (<i>will be shown to others, cannot be modified</i>)" -#~ msgstr "用户å(<i>在社区显示å‹å¥½å称,ä¸å¯æ›´æ”¹</i>)" - -#, fuzzy -#~ msgid "Delete account permanently" -#~ msgstr "åˆ é™¤å¸å·" - -#~ msgid "Send new password" -#~ msgstr "å‘é€æ–°å¯†ç " - -#~ msgid "Lost your password? No problem - here you can reset it." -#~ msgstr "丢失了您的密ç ? ä½ å¯ä»¥åœ¨è¿™é‡Œé‡è®¾å¯†ç 。" - -#~ msgid "" -#~ "Please enter your username below and new password will be sent to your " -#~ "registered e-mail" -#~ msgstr "请输入用户å,新的密ç 会å‘é€åˆ°ä½ 注册时候填写的电å邮件。" - -# todo - check translation or see if it's indeed true -#~ msgid "" -#~ "Note: your new password will be activated only after you click the " -#~ "activation link in the email message" -#~ msgstr "注æ„: 新的密ç åªæœ‰æ‚¨åœ¨æ¿€æ´»é‚®ä»¶ä¸çš„链接åŽæ‰ä¼šè¢«æ¿€æ´»ã€‚" - -#~ msgid "we support two login modes" -#~ msgstr "" -#~ "CNProg支æŒ<b>两ç§</b>登录模å¼ã€‚您å¯ä»¥ä½¿ç”¨å¸å·ã€å¯†ç 登录,或者使用OpenIDç™»" -#~ "录。" - -#~ msgid "Login with your OpenID" -#~ msgstr "使用OpenID登录" - -#~ msgid "verify openid link and login" -#~ msgstr "2)型并完æˆæ£ç¡®çš„OpenID地å€ï¼ˆå¦‚:替æ¢â€œ{username}â€ä¸ºæ‚¨çš„对应å¸å·ï¼‰ï¼š" - -#~ msgid "" -#~ "We support two types of user registration: conventional username/" -#~ "password, and" -#~ msgstr "我们支æŒä¸¤ç§æ³¨å†Œæ–¹å¼ï¼Œä½ å¯ä»¥ä½¿ç”¨å¸¸è§„的用户åã€å¯†ç æ–¹å¼æ³¨å†Œï¼Œæˆ–者" - -#~ msgid "the OpenID method" -#~ msgstr "使用OpenIDå¸å·æ³¨å†Œ" - -#, fuzzy -#~ msgid "Sorry, looks like we have some errors" -#~ msgstr "请注æ„以下错误:" - -#~ msgid "Conventional registration" -#~ msgstr "请注æ„以下错误:" - -#~ msgid "choose a user name" -#~ msgstr "选择一个用户å" - -#~ msgid "back to login" -#~ msgstr "返回登录" - -#~ msgid "meta site keywords, comma separated" -#~ msgstr "" -#~ "技术问ç”社区,ä¸å›½ç¨‹åºå‘˜ï¼Œç¼–程技术社区,程åºå‘˜ç¤¾åŒºï¼Œç¨‹åºå‘˜è®ºå›ï¼Œç¨‹åºå‘˜" -#~ "wiki,程åºå‘˜åšå®¢" - -#~ msgid "what is this website" -#~ msgstr "" -#~ "CNProg是一个<strong>é¢å‘程åºå‘˜</strong>çš„å¯å作编辑的<strong>开放æºä»£ç é—®" -#~ "ç”社区</strong>。" - -#~ msgid "what can one do on this website" -#~ msgstr "" -#~ "您å¯ä»¥åœ¨è¿™é‡Œæé—®å„ç±»<strong>程åºæŠ€æœ¯é—®é¢˜</strong> - 问题ä¸åˆ†è¯è¨€å’Œå¹³å°ã€‚ " -#~ "åŒæ—¶ä¹Ÿå¸Œæœ›æ‚¨å¯¹åŠ›æ‰€èƒ½åŠçš„问题,给予您的å®è´µç”案。" - -#~ msgid "book technical Q&A" -#~ msgstr "图书相关的技术ç”ç–‘" - -#~ msgid "blog" -#~ msgstr "Blog" - -#~ msgid "current revision" -#~ msgstr "当å‰ç‰ˆæœ¬" - -#~ msgid "Change now" -#~ msgstr "现在修改" - -#~ msgid "uses tags for the classification of questions" -#~ msgstr "ç”¨æ ‡ç¾æ¥åˆ†ç±»ç³»ç»Ÿçš„ä¿¡æ¯" - -#~ msgid "Found by tag" -#~ msgstr "æ ‡ç¾é—®é¢˜" - -#~ msgid "" -#~ "\n" -#~ "\t\t\thave total %(q_num)s questions tagged %(tagname)s\n" -#~ "\t\t\t" -#~ msgid_plural "" -#~ "\n" -#~ "\t\t\thave total %(q_num)s questions tagged %(tagname)s\n" -#~ "\t\t\t" -#~ msgstr[0] "" -#~ "\n" -#~ "您æ£åœ¨æµè§ˆæ‰€æœ‰<div class=\"questions-count\">%(q_num)s</div>ä¸ªæ ‡è®°ä¸º<span " -#~ "class=\"tag\">%(tagname)s</span></p>" -#~ msgstr[1] "" -#~ "\n" -#~ "您æ£åœ¨æµè§ˆæ‰€æœ‰<div class=\"questions-count\">%(q_num)s</div>ä¸ªæ ‡è®°ä¸º<span " -#~ "class=\"tag\">%(tagname)s</span></p>" - -#~ msgid "" -#~ "\n" -#~ "\t\t\thave total %(q_num)s questions containing %(searchtitle)s\n" -#~ "\t\t\t" -#~ msgid_plural "" -#~ "\n" -#~ "\t\t\thave total %(q_num)s questions containing %(searchtitle)s\n" -#~ "\t\t\t" -#~ msgstr[0] "" -#~ "\n" -#~ "您æ£åœ¨æµè§ˆæ‰€æœ‰<div class=\"questions-count\">%(q_num)s</div>ä¸ªæ ‡é¢˜å«æœ‰" -#~ "<span class=\"tag\">%(searchtitle)s</span></p>" -#~ msgstr[1] "" -#~ "\n" -#~ "您æ£åœ¨æµè§ˆæ‰€æœ‰<div class=\"questions-count\">%(q_num)s</div>ä¸ªæ ‡é¢˜å«æœ‰" -#~ "<span class=\"tag\">%(searchtitle)s</span></p>" - -#~ msgid "whose title contains" -#~ msgstr "æ ‡é¢˜å«æœ‰" - -#~ msgid "number of questions end of sentence" -#~ msgstr "的问题。" - -#~ msgid "Most recently answered ones are shown first." -#~ msgstr "最åŽè¢«å›žç”或者>更新的问题将显示在最å‰é¢ã€‚" - -#~ msgid "Most voted questions are shown first" -#~ msgstr "投票最多的问题将显示在最å‰é¢ã€‚" - -#~ msgid "" -#~ "Anyone can ask questions and give answers, points are not necessary for " -#~ "that." -#~ msgstr "对于æ£å¸¸ä½¿ç”¨ç¤¾åŒºè¿›è¡Œæé—®ã€å›žç”而言,积分ä¸æ˜¯å¿…须的。" - -#~ msgid "" -#~ "As we've said before, users help running this site. Point system helps " -#~ "select users who can administer this community." -#~ msgstr "" -#~ "我们一å†å£°æ˜Žï¼ŒCNProgç”±ä½ æ¥è¿è¡Œå’Œç»´æŠ¤ã€‚å¦‚æžœä½ æƒ³å¸®åŠ©æˆ‘ä»¬æ¥è¿ä½œCNProgï¼Œä½ éœ€è¦" -#~ "一定的积分ç‰çº§ã€‚" - -#~ msgid "" -#~ "Reputation points roughly measure how community trusts you. These points " -#~ "are given to you directly by other members of the community." -#~ msgstr "" -#~ "<span class=\"yellowbg\">积分是一ç§ç”¨æ¥ç²—略衡é‡ç¤¾åŒºå¯¹ä½ 有多信任的数æ®ã€‚</" -#~ "span>积分ä¸æ˜¯æœ‰è°æ¥æ”¯ä»˜æˆ–ç›´æŽ¥ç»™äºˆä½ çš„ï¼Œè€Œæ˜¯ä½ é€šè¿‡èŽ·å¾—å…¶ä»–ç”¨æˆ·çš„æ”¯æŒå’Œä¿¡" -#~ "任“赚得â€çš„。" - -#~ msgid "" -#~ "For example, if you ask an interesting question or give a helpful answer, " -#~ "your input will be upvoted and you will gain more trust in the community." -#~ msgstr "" -#~ "举例æ¥è¯´ï¼Œå¦‚æžœä½ æ了一个éžå¸¸æœ‰å¸®åŠ©çš„问题或者åšäº†å¾ˆæœ‰ç”¨çš„回ç”ï¼Œä½ å°†ä¼šè¢«å…¶ä»–" -#~ "用户投赞æˆç¥¨ã€‚" - -#~ msgid "" -#~ "If on the other hand someone gives a misleading answer, the answer will " -#~ "be voted down and he/she loses some points." -#~ msgstr "" -#~ "相åï¼Œä½ æ了ä¸å—欢迎的问题,或者误导用户的回ç”ï¼Œä½ å°†å¯èƒ½è¢«å…¶ä»–用户投å对" -#~ "票。æ¯ä¸ªèµžæˆ" - -#~ msgid "" -#~ "Each vote in favor will generate <strong>10</strong> points, each vote " -#~ "against will subtract <strong>2</strong> points." -#~ msgstr "" -#~ "ç¥¨ä¼šå¸®ä½ äº§ç”Ÿ<strong>10</strong>个社区积分,æ¯ä¸ªåå¯¹ç¥¨ä¼šç›¸åº”æ‰£é™¤ä½ " -#~ "<strong>2</strong>个积分。" - -#~ msgid "" -#~ "Through the votes of other people you can accumulate a maximum of " -#~ "<strong>200</strong> points." -#~ msgstr "" -#~ "æ¯å¤©é€šè¿‡åˆ«äººæŠ•èµžæˆç¥¨ï¼Œä½ 最多åªèƒ½äº§ç”Ÿ<strong>200</strong>个积分,这是上é™ã€‚" - -#~ msgid "After accumulating certain number of points, you can do more:" -#~ msgstr "å½“ä½ ç´¯è®¡åˆ°ä¸€å®š>ç§¯åˆ†ï¼Œä½ å¯ä»¥åœ¨ç¤¾åŒºåšæ›´å¤šçš„事情:" - -#~ msgid "Gold badge is very rare." -#~ msgstr "金牌是å分罕è§çš„。" - -#~ msgid "Gold badge is the highest award in this community." -#~ msgstr "获得金牌æ„味ç€ä½ 在æŸä¸ªå±‚次上已ç»è¾¾åˆ°äº†é¡¶å³°ã€‚" - -#~ msgid "Obtaining silver badge requires significant patience." -#~ msgstr "银牌需è¦ç»è¿‡é•¿æ—¶é—´çš„奋斗æ‰èƒ½èŽ·å¾—。" diff --git a/log/.svn/all-wcprops b/log/.svn/all-wcprops deleted file mode 100644 index 5e28b6f3912d26efcd2f6b7fef500758fc8fc737..0000000000000000000000000000000000000000 --- a/log/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 36 -/svnroot/!svn/ver/719/osqa/trunk/log -END -README.TXT -K 25 -svn:wc:ra_dav:version-url -V 46 -/svnroot/!svn/ver/17/osqa/trunk/log/README.TXT -END diff --git a/log/.svn/dir-prop-base b/log/.svn/dir-prop-base deleted file mode 100644 index 3704fb150db28b08c5a539228f05e87441a7563d..0000000000000000000000000000000000000000 --- a/log/.svn/dir-prop-base +++ /dev/null @@ -1,6 +0,0 @@ -K 10 -svn:ignore -V 6 -*.log - -END diff --git a/log/.svn/entries b/log/.svn/entries deleted file mode 100644 index 4c60eec4235864003370f11e72ca0723ee9b9d94..0000000000000000000000000000000000000000 --- a/log/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/log -http://svn.osqa.net/svnroot - - - -2011-01-31T23:12:04.635081Z -719 -claycarpenter -has-props - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -README.TXT -file - - - - -2012-06-22T20:34:38.550495Z -7bac2afa3f1dfe94900a6adcb8f259c5 -2010-04-10T04:19:53.735481Z -17 -hernani - - - - - - - - - - - - - - - - - - - - - -88 - diff --git a/log/.svn/text-base/README.TXT.svn-base b/log/.svn/text-base/README.TXT.svn-base deleted file mode 100644 index 54247a82a0df258c84f829101ff1904ce082b35e..0000000000000000000000000000000000000000 --- a/log/.svn/text-base/README.TXT.svn-base +++ /dev/null @@ -1 +0,0 @@ -this file is just a placeholder so the empty directory is not ignored by version control \ No newline at end of file diff --git a/tmp/.svn/all-wcprops b/tmp/.svn/all-wcprops deleted file mode 100644 index 774fbc88d284be3705b7ca3712f06b1442a8523d..0000000000000000000000000000000000000000 --- a/tmp/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 36 -/svnroot/!svn/ver/254/osqa/trunk/tmp -END -README -K 25 -svn:wc:ra_dav:version-url -V 43 -/svnroot/!svn/ver/254/osqa/trunk/tmp/README -END diff --git a/tmp/.svn/entries b/tmp/.svn/entries deleted file mode 100644 index b5a4054841d649a193659587aa6c9dc94dc82930..0000000000000000000000000000000000000000 --- a/tmp/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -1272 -http://svn.osqa.net/svnroot/osqa/trunk/tmp -http://svn.osqa.net/svnroot - - - -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - -0cfe37f9-358a-4d5e-be75-b63607b5c754 - -README -file - - - - -2012-06-22T20:34:49.061250Z -e326afa12c868076fed11412425c9878 -2010-05-13T13:19:20.102224Z -254 -hernani - - - - - - - - - - - - - - - - - - - - - -26 - diff --git a/tmp/.svn/text-base/README.svn-base b/tmp/.svn/text-base/README.svn-base deleted file mode 100644 index 708174ae9680ee303c3d2ebcd0690dda34115b74..0000000000000000000000000000000000000000 --- a/tmp/.svn/text-base/README.svn-base +++ /dev/null @@ -1 +0,0 @@ -Just an empty placeholder. \ No newline at end of file